Reference ensembles & other advanced controls
This page collects the remaining advanced keywords: reference/debugging switches, box and trajectory controls, a couple of chain-handling options, and the experimental gate that unlocks the not-yet-stable features.
Reference ensembles
Sometimes the most useful comparison is the system with its interactions turned off - a well-defined reference state that isolates the effect of excluded volume or of the backbone.
NON_INTERACTING : TrueZero all interaction energies and run a pure excluded-volume reference ensemble. The parameter file is still required (bead types must be defined) but its pairwise and solvation energies are ignored. This is the natural “ideal chain in a box” baseline to compare an interacting run against - anything that differs from the non-interacting ensemble is a genuine consequence of the interactions.
ANGLES_OFF : TrueDisable the backbone-angle penalties entirely, so the chains are perfectly flexible. With this set you do not need
ANGLE_PENALTYlines in the parameter file. Useful for isolating the role of chain stiffness, or simply for models where stiffness is not wanted.
The two switches are independent and can be combined: NON_INTERACTING : True with
ANGLES_OFF : True is the fully ideal, freely-jointed, excluded-volume-only chain.
Energy-consistency checking
PIMMS tracks the total energy incrementally - each accepted move adds its energy change to a running total rather than recomputing the whole Hamiltonian. That is what makes it fast, but it also means a subtle bookkeeping bug would slowly drift the tracked energy away from the truth.
ENERGY_CHECK : <freq>Every
<freq>steps, recompute the total energy from scratch and compare it to the incrementally tracked value. If they disagree the run aborts with an exception and dumps the offending configuration toCONFIG_AT_ENERGY_FAIL.pdb/.xtcso you can inspect it. This is an O(N) check: cheap to run occasionally on a modest system, but expensive if you run it every step on a large one. The default frequency is deliberately infrequent; lower it when you are developing or debugging and want tight verification, raise it (or leave it) for production.
Box and equilibration controls
RESIZED_EQUILIBRATION/EQUILIBRATION_OFFSETEquilibrate in a smaller box and then grow to the production
DIMENSIONSat the end of equilibration (chains are re-centred as the box expands). This lets you condense or assemble a system at high effective concentration and then relax it into the full production volume - often much faster than waiting for assembly to happen at the production density.RESIZED_EQUILIBRATIONgives the equilibration box size (2 or 3 values), andEQUILIBRATION_OFFSETplaces that smaller box within the full box. Both are constrained:RESIZED_EQUILIBRATIONmust be<= DIMENSIONSin every dimension, andEQUILIBRATION_OFFSET + RESIZED_EQUILIBRATIONmust fit insideDIMENSIONS. The equilibration phase is always run under hardwall boundaries (forced internally, so a system is never resized while chains straddle a periodic face); your productionHARDWALLsetting takes over once the box has grown. The feature is incompatible withRESTART_OVERRIDE_DIMENSIONSand with PBC restart files. See Simulation setup: boundaries and box resizing for the surrounding set-up keywords.DIMENSIONS : 60 60 60 RESIZED_EQUILIBRATION : 30 30 30 # equilibrate at 8x the density... EQUILIBRATION_OFFSET : 15 15 15 # ...centred in the production box
AUTOCENTER : TrueFor a single-chain simulation, keep the chain centred in the box on every frame. This stops a lone chain drifting to the edge of a hardwall box or wandering across periodic images, which keeps trajectories tidy for visualisation and analysis.
Chain-handling options
CASE_INSENSITIVE_CHAINS : FalseBy default (
True) chain sequences are upper-cased when the keyfile is read, soaandAare the same bead type. Set this toFalseto treat case as significant, which effectively doubles the alphabet of bead types available (Aandabecome distinct). Every bead letter used in a chain must still be defined in the parameter file.EXTRA_CHAIN : <count> <sequence>Add chains that were not in the original
RESTART_FILEwhen restarting from a saved configuration. The format matches theCHAINkeyword (<number of chains> <sequence>), multipleEXTRA_CHAINlines are allowed for different species, and the new chains are inserted at random so as not to overlap anything already present. This is how you take the end-state of one run and continue it with additional material - and it can be repeated as many times as you like.EXTRA_CHAINrequires aRESTART_FILE(there must be an existing configuration to add to). It pairs naturally with a freeze file: freeze the restart configuration and let the extra chains explore around it (as in thestar_destroyerdemo).
The experimental gate
EXPERIMENTAL_FEATURES : TrueUnlocks the remaining not-yet-stable keywords and moves. As of this writing the only gated feature is the
MOVE_VMMCcollective move (and itsVMMC_*tuning keywords). It is not guaranteed to behave correctly in every configuration, so the recommendation is to leave the gateFalseunless you specifically need it - and to sanity-check the results carefully when you do. (The pull, jump-and-relax and temperature-switch (TSMMC) moves, non-cubic boxes, and theEXTRA_CHAIN,FREEZE_FILEandEQUILIBRATION_OFFSETkeywords have all graduated out of the experimental gate and need no special flag.)