Frozen Atoms¶
Overview¶
Summary: Cluster models need a small set of atoms held in place at the truncation boundary so the optimizer cannot pull the dangling fragment into something unphysical.
pdb2reactionhandles this through link hydrogens (added at severed bonds byextract) and three layers offreeze_atomsspecification.
When a residue is sliced out of a larger protein, the bond at the boundary is capped with a link hydrogen (residue LKH, atom HL, 1.09 Å along the original bond vector). If the parent atom of that link hydrogen is left free, gradient descent will quietly relax the cap+parent pair into a different geometry, deforming the boundary. Freezing the relevant atoms keeps the boundary stationary throughout optimization, MEP search, IRC, and vibrational analysis.
Three ways to specify frozen atoms¶
1. --freeze-links/--no-freeze-links (default True)¶
Auto-freezes the parent atoms of link hydrogens added by extract. Active by default in every downstream subcommand. Recipe:
pdb2reaction extract -i complex.pdb -c 'SAM,GPP' -l 'SAM:1,GPP:-3' -o model.pdb
pdb2reaction opt -i model.pdb -q 0 -m 1 # --freeze-links is True; LKH parents auto-frozen
For XYZ/GJF inputs, no LKH atoms are present, so --freeze-links has no effect; use the next two methods instead. --ref-pdb FILE lets XYZ/GJF runs inherit a PDB topology and resurrect link-hydrogen detection.
2. --freeze-atoms 'i,j,k,...' (CLI explicit list)¶
Comma-separated 1-based atom indices, applicable to any input format. Complements --freeze-links (the union is frozen at run time).
pdb2reaction tsopt -i ts_candidate.xyz -q 0 -m 1 \
--freeze-atoms '12,15,28,29,42'
3. YAML geom.freeze_atoms (via --config)¶
geom:
freeze_atoms: [12, 15, 28, 29, 42] # 1-based indices
Useful when the list is long or you want to ship it with the rest of the run configuration. CLI and YAML lists are merged, not replaced.
pdb2reaction tsopt -i ts.xyz -q 0 -m 1 --config tsopt.yaml
How the three sources combine¶
The frozen-atom set used at run time is the union of:
YAML
geom.freeze_atoms(--config FILE), plusCLI
--freeze-atoms, plusatoms detected as
LKHparents when--freeze-linksis on.
There is no mode that substitutes one for another; every entry that appears in any source is frozen.
Effect on the calculation¶
Forces: zeroed for every frozen DOF (the optimizer cannot move them).
Hessian: rows and columns of frozen DOFs are either removed (
calc.return_partial_hessian: true, the default forfreqand forced forirc) or zeroed in the full matrix.Vibrational analysis: when frozen atoms are present,
freqautomatically performs Partial Hessian Vibrational Analysis (PHVA) on the active block; the 5 cm⁻¹ vs 100 cm⁻¹ thresholds apply to the resulting eigenvalues.MEP / IRC: frozen atoms keep their initial coordinates at every image / step.
Subcommand coverage¶
Subcommand |
|
|
YAML |
|---|---|---|---|
(inserts |
n/a |
n/a |
|
yes |
yes |
yes |
|
yes |
yes |
yes |
|
yes (triggers PHVA) |
yes |
yes |
|
yes |
yes |
yes |
|
yes |
yes |
yes |
|
yes |
yes |
yes |
|
yes |
yes |
yes |
|
yes |
yes |
yes |
Common pitfalls¶
Manually deleted
LKH/HLrecords.--freeze-linksfinds nothing to freeze. Use--freeze-atomsto specify the boundary explicitly, or rerunextract.Re-numbered atoms.
--freeze-atomsandgeom.freeze_atomsare 1-based and tied to input atom order; if you re-extract and the order changes, regenerate the index list.XYZ/GJF without a topology. No
LKHrecords exist, so--freeze-linksis a no-op. Provide--ref-pdb FILEor an explicit--freeze-atomslist.--no-freeze-links. Disables the auto-freeze. Useful only for diagnostic runs that intentionally let the boundary relax; production cluster-model runs should leave--freeze-linkson.
See also¶
extract— Where link hydrogens are inserted (residueLKH, atomHL, 1.09 Å along severed bond vector). Full algorithmic detail at Link hydrogen and frozen atoms.YAML Reference —
geom.freeze_atomsschema and merge order.CLI Conventions — flag conventions shared across subcommands.
Glossary — Active Site Model, Cluster Model, Link Hydrogen.