Skip to content

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

Variants

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