Enerzymette Integration#
Enerzymette is a separate package of workflow scripts and launchers around Enerzyme. It is not installed with core Enerzyme.
Application: example/NNP4MTase in the Enerzyme repository (methyltransferase active learning, scan, and NEB).
Install#
git clone https://github.com/Benzoin96485/Enerzymette.git
cd Enerzymette
pip install -e .
Main launchers#
enerzymette enerzyme_active_learningOuter AL loop: simulate → predict/extract → annotate → train. Manages a per-task structure pool and rewrites YAML each round. See Active Learning Workflows.
enerzymette enerzyme_scanChained reaction-coordinate scans (bond-distance or PLUMED CV). Reads system settings from a TeraChem input or a YAML scan config (
-q). PLUMED mode requires-ppand-psc.enerzymette enerzyme_nebNNP-driven NEB via ORCA ExtOpt and
enerzyme listen. See Prediction Server and Enerzymette Integration.
PLUMED CV plugins#
Plugins live under enerzymette/plumed_config_generator/. Enerzymette registers built-in keys (e.g. sammt) and resolves module paths with get_plumed_patch(key). Pass the resolved module to Enerzyme:
enerzyme simulate ... -pp <plugin_key_or_module.py>
Contract (current). A plugin module exposes a PlumedConfigGenerator subclass (for example SAMMTConfigGenerator). The simulation YAML selects the class and method:
plumed_config_generator:
name: SAMMTConfigGenerator
method: standard_steered_md # or naive_steered_md, scan
Enerzyme instantiates the class with the current ase.Atoms object and YAML parameters under sampling.params.plumed_config, then calls the named method to produce plumed.dat.
To register a new built-in key, use register_plumed_cv_plugin() in the plugin package. Optional proton-transfer strategies are separate plugins under proton_transfer.py (for example local_opes).
Full developer and user reference: Enerzymette PLUMED plugin README.
Utility commands#
enerzymette idppIDPP path between reactant/product XYZ for NEB seeding.
enerzymette terachem_timingWall-time stats from TeraChem output files.
enerzymette orca_terachem_requestORCA ExtOpt → TeraChem gradient bridge. See ORCA and TeraChem Bridges.
enerzymette update_terachem_scanRefresh bond-scan coordinates in a TeraChem input after a structure update (
-i,-s,-o).
Active-learning launcher flags (summary)#
In addition to template paths (-sc, -ec, -ac, -tc) and plugin keys (-cp, -pp):
--initial-scan/-nis— runplumed_scanjobs before iteration 0 and seedstructure_pool/from local minima--initial-structures-config— multi-system manifest YAML (mutually exclusive with-rp,-ts,-ix, and--initial-scan)-ix— single-system custom initial XYZ (overridesSystem.structure_filein the simulation template for pool initialization)-cl/--continual_learning— resume in-round training withTrainer.resume: 2on later iterations--reset_parameters— reinitialize weights at iteration 0; switch extraction to random picking for that round-mc— override model config path passed toenerzyme simulate/train
See Active Learning for Neural Network Potentials for structure-pool layout and manifest format.
Boundary with Enerzyme#
Responsibility |
Enerzyme |
Enerzymette |
|---|---|---|
Model training |
yes |
launches |
MD / PLUMED |
yes ( |
writes per-round YAML |
Task scheduling |
no |
yes |
QM engines |
|
ORCA bridge utilities |
Recommended task directory#
Stable inputs at task root: al.sh, cluster.xyz, cluster.mol, config/*.yaml. Generated iteration folders FFxx_*, plus structure_pool/ and structure_pool.json when using the AL launcher.