Build Configuration¶
Source code:
bff/workflows/build/config.pybff/workflows/build/main.pybff/topology.py
Purpose¶
bff build prepares equilibrated systems and runs one seeded production
trajectory for each system. It also writes a reference-compatible topology and
coordinate pair with virtual sites removed.
- equilibrated GROMACS systems under
systems/<system_id>/ - seeded production outputs under each stable system-ID directory
systems/<system_id>/reference/{topology.top,coordinates.gro}for reference trajectories and QoI construction- metadata-only
system.yamlfiles colocated with each system
Minimal Example¶
project:
directory: ./
log: ./build.log
gromacs:
command: gmx
systems:
- system_id: acetate
system_name: Aqueous acetate
topology: ../inputs/common/topol.top
templates:
ACE: ../inputs/common/ace.gro
mdp:
em: ../inputs/common/mdp/em.mdp
npt: ../inputs/common/mdp/npt.mdp
prod: ../inputs/common/mdp/nvt.mdp
charge: -1
multiplicity: 1
nsteps:
npt: 0
prod: 100000
box: [15.7107, 15.7107, 15.7107, 90, 90, 90]
Top-Level Keys¶
projectProject output settings. A string is accepted as shorthand forproject.directory.project.directoryOutput directory forequilibration/andsystems/.project.logOptional workflow log file.gromacs.commandGROMACS executable, usuallygmx.systemsNon-empty list of systems to build.
systems[] Keys¶
system_idRequired lowercase file-safe ID matching[a-z0-9][a-z0-9._-]*.system_nameOptional display-only name; never used for matching or paths.topologyGROMACS topology describing residue counts.templatesOptional mapping from residue name to coordinate template file for non-standard residues. Omit it when the system only contains built-in water or monoatomic-ion residues.chargeTotal system charge for staged CP2K reference inputs.multiplicitySpin multiplicity for staged CP2K reference inputs.boxOptional box dimensions. Accepts 3 values or full 6-value triclinic format.biasOptional opaque bias specification. Use eitherplumed_fileorcolvars_file.nsteps.nptRequired per-system NpT equilibration length. Use0to skip NpT.nsteps.prodRequired per-system seeded production run length. The seed trajectory is used later bybff label-snapshots.mdp.emEnergy minimization MDP file.mdp.nptNpT equilibration MDP file.mdp.prodProduction MDP file used for the seeded run and downstream FFMD assets.
Outputs¶
The stage writes build.log, gromacs.log, and systems/<system_id>/.
Each directory uses fixed filenames for the topology, index, MDPs, optional
bias, and seeded production outputs. Its system.yaml contains only display
and physical metadata such as charge, multiplicity, box, and production length;
it contains no file paths or version field.
The reference/ pair is always generated from the final production.gro.
Atoms declared by [ virtual_sites* ] sections are removed exactly from both
files; systems without virtual sites still receive the same stable paths. Use
this topology and coordinate pair when producing an external MLIP trajectory,
so its atom order matches the inputs later supplied to build-qoi-datasets.
bff sample-parameters and bff validate consume this directory directly.
bff label-snapshots accepts its production GRO and trajectory files as
explicit inputs. bff build-qoi-datasets accepts the files under reference/
and the externally generated reference trajectory as separate explicit inputs.