You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit f366916
Browse filesBrowse the repository at this point in the historyBrowse files
Deprecate top-level cutoff, always deduce it from bonds::rcut
The top-level `cutoff` of the input YAML has never reached the fit: it was
read in `bin/pacemaker` and required to be present, but was never passed to
`GeneralACEFit`, so the `cutoff is None` branch always applied and the
neighbour lists were always built with max(bonds::rcut). The last consumer of
the value was the `--query-data` path removed in 29ba519.
This left a mandatory parameter whose value was silently discarded: users
could set it inconsistently with `bonds::rcut` and never learn about it, while
omitting it aborted the run with a ValueError.
Rather than start honouring the value - which would make an under-sized
`cutoff` silently truncate the training neighbour lists, and an over-sized one
waste memory for identically zero contributions - the parameter is dropped.
Deducing the cutoff from max(bonds::rcut) makes the fitting neighbour lists
agree with `ACEBBasisSet.cutoffmax`, which the ASE and LAMMPS calculators use,
so the two cannot drift apart.
- bin/pacemaker: `cutoff` is no longer required; a deprecation warning is
logged if it is still present, so existing input files keep working.
- generalfit.py: extract `get_maximal_rcut()` and log the resolved cutoff, so
the value actually used is always visible in log.txt. The `cutoff` argument
of `GeneralACEFit` is kept as a programmatic escape hatch and documented.
- input_template.yaml / `pacemaker -t`: the dialog set both `cutoff` and
`bonds::rcut` from one answer; it now asks for `rcut` only and the generated
file has no top-level `cutoff`.
- examples and CLI tests: drop the redundant `cutoff` line. All eight files had
`cutoff == max(bonds::rcut)` exactly, so the deduced value is unchanged.
- docs: describe the deduction in inputfile.md, quickstart.md and faq.md. The
inputfile.md example was itself inconsistent (`cutoff: 10.0` against
rcut 5/5.5).
- tests: cover `get_maximal_rcut`, including that it agrees with
`ACEBBasisSet.cutoffmax` for per-bond cutoffs.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017QbfG2UVKxkeuiz9GtDLo4
Copy file name to clipboardExpand all lines: docs/pacemaker/quickstart.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -34,8 +34,8 @@ In order to interactively generate default `pacemaker` input file `input.yaml`,
34
34
```
35
35
pacemaker -t
36
36
```
37
-
and enter requested information, such as dataset filename, test set size (optional), list of elements, cutoff,
38
-
number of functions. Doing so will produce an `input.yaml` file with the most general
37
+
and enter requested information, such as dataset filename, test set size (optional), list of elements,
38
+
outer cutoff `rcut`, number of functions. Doing so will produce an `input.yaml` file with the most general
39
39
settings that can be adjusted for a particular task. Detailed overview of the input file parameters can be found in the [Input file](inputfile.md) section below.
0 commit comments