Workflows
Nextflow scripts that are currently checked into the repository
The repository contains Nextflow scripts under workflows/. The two-stage flow is built around:
workflows/build.nf— generate system folders and build files from CSVworkflows/simulate.nf— run the GROMACS simulation chain
Those scripts match the current mdfactory prepare-build and mdfactory build commands plus the GROMACS file layout produced by the builders.
Full pipeline
The easiest way to run both stages is the provided shell script:
cd workflows/
bash run_full_pipeline.shEdit the variables at the top of run_full_pipeline.sh to set your CSV input and output directory. The script runs the build stage followed by the simulation stage.
Stage 1: generate build folders
build.nf expects a CSV input file and an output directory:
nextflow run workflows/build.nf \
--csv_file systems.csv \
--output_dir resultsWhat it does:
- Runs
mdfactory prepare-build. - Reads the summary YAML written into the output directory.
- Builds each generated hash directory with
mdfactory build.
The summary YAML filename is derived from the CSV stem. For example, systems.csv produces results/systems.yaml.
Stage 2: run the GROMACS chain
simulate.nf consumes the stage-1 output directory plus the summary YAML:
nextflow run workflows/simulate.nf \
-c workflows/simulate.config \
--base_dir results \
--config_yaml results/systems.yamlCluster-specific configuration
The shipped simulate.config contains SLURM settings (queue name, module loads, GPU/CPU/memory requests) tuned for a specific cluster. Edit this file to match your HPC environment before running. See Running on HPC Clusters for guidance.
simulate.nf executes this fixed sequence for each hash listed in the summary YAML:
- Minimization using
em.mdp - NVT equilibration using
nvt.mdp - NPT equilibration using
npt.mdp - Production using
md.mdp
Outputs are published back into each simulation directory under --base_dir.
