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_learning

Outer AL loop: simulate → predict/extract → annotate → train. Manages a per-task structure pool and rewrites YAML each round. See Active Learning Workflows.

enerzymette enerzyme_scan

Chained reaction-coordinate scans (bond-distance or PLUMED CV). Reads system settings from a TeraChem input or a YAML scan config (-q). PLUMED mode requires -pp and -psc.

enerzymette enerzyme_neb

NNP-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 idpp

IDPP path between reactant/product XYZ for NEB seeding.

enerzymette terachem_timing

Wall-time stats from TeraChem output files.

enerzymette orca_terachem_request

ORCA ExtOpt → TeraChem gradient bridge. See ORCA and TeraChem Bridges.

enerzymette update_terachem_scan

Refresh 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 — run plumed_scan jobs before iteration 0 and seed structure_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 (overrides System.structure_file in the simulation template for pool initialization)

  • -cl / --continual_learning — resume in-round training with Trainer.resume: 2 on later iterations

  • --reset_parameters — reinitialize weights at iteration 0; switch extraction to random picking for that round

  • -mc — override model config path passed to enerzyme 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 train

MD / PLUMED

yes (simulate)

writes per-round YAML

Task scheduling

no

yes

QM engines

annotate

ORCA bridge utilities