Acetate Walkthrough¶
Source files:
Goal¶
The acetate example optimizes acetate partial charges using three systems:
- aqueous acetate
- acetate with calcium at contact distance
- acetate with calcium in a solvent-shared configuration
Stage-Local Workflow¶
The config files under configs/ are templates. For each stage, make the stage
directory, copy the needed template files into it, edit them there, and run BFF
from inside that directory. Each stage writes its own outputs to ./.
cd examples/acetate
mkdir -p 01-build
cp configs/build-colvars.yaml 01-build/config.yaml
cd 01-build
bff build config.yaml
cd ..
mkdir -p 02-assets
cp configs/prepare-assets.yaml 02-assets/config.yaml
cd 02-assets
bff prepare-assets config.yaml
cd ..
mkdir -p 03-reference
cp configs/evaluate-run-local.yaml 03-reference/config-snapshots.yaml
cd 03-reference
bff evaluate-snapshots config-snapshots.yaml
mkdir -p trajectories
# Generate or place reference trajectories under trajectories/system-*/.
cd ..
mkdir -p 03-sample
cp configs/sample-local.yaml 03-sample/config.yaml
cd 03-sample
bff sample config.yaml
cd ..
mkdir -p 04-analyze
cp configs/analyze.yaml 04-analyze/config.yaml
cd 04-analyze
bff analyze config.yaml
cd ..
mkdir -p 05-fit
cp configs/fit.yaml 05-fit/config.yaml
cd 05-fit
bff fit config.yaml
cd ..
mkdir -p 06-learn
cp configs/learn.yaml 06-learn/config.yaml
cd 06-learn
bff learn config.yaml
cd ..
mkdir -p 07-validate
cp configs/validate.yaml 07-validate/config.yaml
cd 07-validate
bff validate config.yaml
cd ..
The copied config is the record of what was run for that stage. Stage
directories are generated outputs and are ignored by git.
The learn stage writes marginals.pdf, qoi-marginals.pdf, and corner.pdf.
The 03-reference stage keeps snapshot datasets and analysis trajectories as
sibling directories:
03-reference/
snapshots/system-*/
trajectories/system-*/
Layout¶
examples/acetate/
configs/ config templates copied into stage directories
inputs/ committed molecular inputs and optional reference trajectories
notebooks/ optional interactive notebooks
Main Configs¶
- Colvars build config: configs/build-colvars.yaml
- asset-preparation config: configs/prepare-assets.yaml
- local CP2K snapshot evaluation config: configs/evaluate-run-local.yaml
- local sampling config: configs/sample-local.yaml
- analyze config: configs/analyze.yaml
- fit config: configs/fit.yaml
- learn config: configs/learn.yaml
- validate config: configs/validate.yaml
Variants¶
- PLUMED build config: configs/build-plumed.yaml
- Slurm snapshot evaluation config: configs/evaluate-run-slurm.yaml
- Slurm sampling config: configs/sample-slurm.yaml
The Slurm configs keep scheduler setup commands in the YAML. Edit those blocks for your cluster before running them.
Inputs¶
- shared force-field files, topologies, template coordinates, and MDP inputs:
inputs/common/ - Colvars and PLUMED restraint files:
inputs/biases/ - optional ab initio reference trajectories for QoI analysis:
inputs/reference-trajectories/ - optional CP2K input overrides for customized reference runs:
inputs/reference-inputs/ - custom QoI routine: inputs/restraint.py