sp¶
mlmm sp evaluates the ML/MM ONIOM energy + atomic forces (optionally the active-coordinate ONIOM Hessian) at a single geometry. Use it for fast inspection of a layered structure before running an optimization, for comparing backends directly on the same ONIOM partition, or for generating reference Hessians outside the optimizer loop.
Examples¶
Energy + forces on a layered PDB (B-factor encodes ML / movable-MM / frozen):
# energy + forces on a layered PDB (B-factor encodes ML / movable-MM / frozen)
mlmm sp -i layered.pdb --parm real.parm7 -q 0 -m 1
Also compute the active-coordinate ONIOM Hessian:
# finite differences are used by default; select Analytical only for a backend that supports it
mlmm sp -i layered.pdb --parm real.parm7 -q 0 -m 1 --hess
Outputs¶
sp writes outputs under result_sp/ by default. The ONIOM energy is also printed to stdout; the JSON files (written to both result.json and summary.json with identical content) are emitted only when --out-json is passed.
file |
contents |
written |
|---|---|---|
|
|
always |
|
Mass-unweighted ONIOM Hessian for the calculator’s active coordinates (Hartree / Bohr²); inspect the saved array shape |
only with |
|
ONIOM energy (a.u.), backend, charge/spin, paths to npy outputs, elapsed time |
only with |
sp does not write a summary.log.
CLI options¶
Command form:
mlmm sp -i INPUT --parm PARM7 -q CHARGE [options]
Input |
Required |
Notes |
|---|---|---|
|
yes |
layered PDB/mmCIF, or XYZ coordinates accompanied by |
|
for XYZ |
atom-order-identical full-system PDB/mmCIF supplying topology and layer metadata |
|
yes |
Amber |
|
yes (unless |
ML region total charge |
|
no |
per-ligand charge mapping (e.g. |
|
no |
ML region spin multiplicity, 2S+1 (default |
ML region selection¶
Either embed the partition in the input PDB’s B-factor (ML=0.0, movable-MM=10.0, frozen=20.0) with --detect-layer (the default), or pass it explicitly:
flag |
meaning |
|---|---|
|
automatic B-factor layer detection (enabled by default) |
|
alternative PDB defining ML atoms |
|
comma-separated 1-based atom indices (e.g. |
Hessian backend¶
When --hess is set, --hessian-calc-mode Analytical uses the selected
backend’s analytical/native Hessian path (UMA, ORB, MACE, or AIMNet2), while
FiniteDifference uses central differences of forces. The MM backend defaults
to hessian_ff, but MM Hessians use finite differences by default. Set
calc.mm_fd: false for the hessian_ff analytical MM Hessian. An unavailable
requested path is an error.
Other options¶
The full flag list is in the generated command reference; the table below covers the options that need explanation.
flag |
default |
meaning |
|---|---|---|
|
|
MLIP backend for the ML region |
|
|
also compute and write |
|
|
Hessian mode when |
|
|
link-atom positioning |
|
|
MM backend; Hessian method is controlled separately by |
|
|
output directory |
|
backend-specific |
numeric precision passed to the backend (unset: UMA/AIMNet2 fp32, ORB/MACE fp64) |
|
— |
YAML config providing |
|
off |
print effective merged config / validate without running |
Run mlmm sp --help-advanced for the full list (hess-cutoff override, MCP-style result.json, etc.).