CLI Reference
Complete reference for all PolyzyMD command-line interface commands.
Global Options
All commands support these global options (placed before the subcommand name):
polyzymd --version # Show version and exit
polyzymd --help # Show top-level help
polyzymd <command> --help # Show subcommand help
polyzymd -v <command> # Enable verbose output
polyzymd --openff-logs <command> # Show OpenFF toolkit logging
polyzymd --no-color <command> # Disable colored output
Note: Global options must appear before the subcommand. For example:
polyzymd --no-color check-progress -c config.yaml(notpolyzymd check-progress --no-color -c config.yaml).--versionprints the installed version and exits immediately.--helpshows top-level help; usepolyzymd <command> --helpfor subcommand help.--verbose/-venables verbose output.--openff-logsenables OpenFF toolkit logging.--no-colordisables colored output.
Colored Output
PolyzyMD uses per-module colored logging to help you visually distinguish
which subsystem (building, simulation, workflow, etc.) produced each log
line. Colors are auto-detected based on your terminal capabilities and can
be disabled with --no-color or the NO_COLOR environment variable.
See the Colored Logging Guide for full details including the color table, terminal support levels, and HPC notes.
Logging Behavior
By default, PolyzyMD suppresses verbose log messages from OpenFF Interchange and Toolkit libraries. These libraries generate per-atom INFO messages during system building (e.g., “Preset charges applied to atom index 8667” or “Key collision with different parameters”). For large systems with tens of thousands of atoms, this can produce millions of log lines.
Default behavior: OpenFF INFO logs are suppressed; only WARNING and ERROR messages are shown.
To enable OpenFF logs for debugging:
polyzymd --openff-logs build -c config.yaml
polyzymd --openff-logs run -c config.yaml --engine gromacs
OpenFF logs: OpenFF Interchange and Toolkit libraries are suppressed by default (they generate per-atom INFO messages during system building). Use --openff-logs to enable them for debugging force field issues.
Investigating charge assignment problems
Troubleshooting system building failures
polyzymd init
Initialize a new PolyzyMD project directory with template files.
polyzymd init --name <project_name>
polyzymd init -n <project_name>
Options
Option |
Short |
Required |
Description |
|---|---|---|---|
|
|
Yes |
Name of the project directory to create |
What It Creates
<project_name>/
├── config.yaml <- Template configuration (edit this)
├── structures/ <- Add your PDB/SDF files here
│ ├── place_protein_here.placeholder.txt
│ └── place_ligand_here.placeholder.txt
├── job_scripts/ <- Generated SLURM scripts go here
└── slurm_logs/ <- SLURM output logs go here
Example
# Create a new project
polyzymd init --name lipase_dmso_study
cd lipase_dmso_study
# Add your structure files
cp ~/structures/LipA.pdb structures/enzyme.pdb
cp ~/docking/substrate.sdf structures/substrate.sdf
# Remove placeholder files
rm structures/*.placeholder.txt
# Edit the configuration
nano config.yaml
# Validate
polyzymd validate -c config.yaml
Notes
The command will fail if the directory already exists
The template
config.yamlhas all sections commented out with example valuesUncomment and modify only the sections you need
polyzymd validate
Validate a configuration file without building or running.
polyzymd validate --config <path>
polyzymd validate -c <path>
Options
Option |
Short |
Required |
Description |
|---|---|---|---|
|
|
Yes |
Path to YAML configuration file |
What It Checks
YAML syntax validity
Required fields are present
Referenced files (PDB, SDF) exist
Monomer probabilities sum to 1.0
Valid enum values (water model, ensemble, etc.)
Co-solvent specification (volume_fraction XOR concentration)
Example
polyzymd validate -c config.yaml
Output (success):
Validating configuration: config.yaml
Configuration is valid!
Summary:
Name: LipA_polymer_simulation
Enzyme: LipA
Substrate: ResorufinButyrate
Polymers: SBMA-EGPMA
Count: 2
Length: 5
Monomer A: 98.0%
Monomer B: 2.0%
Temperature: 300.0 K
Pressure: 1.0 atm
Simulation phases:
Equilibration: 1.0 ns (NVT)
Production: 100.0 ns (NPT)
polyzymd build
Build the simulation system (parameterize, solvate) without running.
polyzymd build --config <path> [options]
polyzymd build -c <path> -r <replicates>
polyzymd build -c <path> --format gromacs # Export for GROMACS
Options
Option |
Short |
Required |
Default |
Description |
|---|---|---|---|---|
|
|
Yes |
- |
Path to YAML configuration file |
|
|
No |
“1” |
Replicate range (for example “1”, “1-3”, “1,3,5”) |
|
- |
No |
from config |
Override scratch directory |
|
- |
No |
from config |
Override projects directory |
|
|
No |
from config |
Alias for –scratch-dir |
|
- |
No |
false |
Validate only, don’t build |
|
- |
No |
OpenMM |
Export format ( |
Note:
--replicateand--gromacsare retained as hidden deprecated aliases.
Example
# Build replicate 1 for OpenMM
polyzymd build -c config.yaml -r 1
# Build replicates 1 through 3 for OpenMM
polyzymd build -c config.yaml -r 1-3
# Build with custom output directory
polyzymd build -c config.yaml -r 1-3 --scratch-dir ./test_output
# Dry run to check configuration
polyzymd build -c config.yaml --dry-run
# Export to GROMACS format
polyzymd build -c config.yaml -r 1 --format gromacs
Output Files (OpenMM)
The build command creates:
solvated_system.pdb- Complete system with water and ionssystem.xml- OpenMM serialized system with restraints
Output Files (GROMACS)
With --format gromacs, the build command creates in {projects_dir}/replicate_{N}/gromacs/:
{system}.gro- GROMACS coordinate file{system}.top- GROMACS topology file*.itp- Molecule parameter files (one per component)em.mdp- Energy minimization parameterseq_XX_name.mdp- Equilibration stage parametersprod.mdp- Production parametersPosition restraints (
#ifdef POSRES_PROTEIN, etc.) appended into molecule.itpfilesrun_{system}_gromacs.sh- Shell script to run the workflow
polyzymd run
Build and run a complete local simulation with OpenMM or GROMACS.
Builds the system and executes the selected local engine workflow:
--engine gromacsexports GROMACS files and runs the full GROMACS workflow--engine openmmbuilds and runs the OpenMM simulation locally
polyzymd run -c <path> --engine <gromacs|openmm> [options]
polyzymd run -c <path> --engine gromacs --gmx-path /usr/local/gromacs/bin/gmx
polyzymd run -c <path> --engine openmm --dry-run
Options
Option |
Short |
Required |
Default |
Description |
|---|---|---|---|---|
|
|
Yes |
- |
Path to YAML configuration file |
|
|
No |
“1” |
Replicate range (for example “1”, “1-3”, “1,3,5”) |
|
- |
Yes |
- |
Local engine to run: |
|
- |
No |
from config |
Override scratch directory |
|
- |
No |
from config |
Override projects directory |
|
- |
No |
unset |
Path to GROMACS executable (gromacs engine only) |
|
- |
No |
false |
Validate and preview actions only (writes nothing) |
Note:
--replicateis retained as a hidden deprecated alias.
Example
# Run full GROMACS workflow locally
polyzymd run -c config.yaml -r 1-3 --engine gromacs
# Use custom GROMACS installation
polyzymd run -c config.yaml --engine gromacs --gmx-path /usr/local/gromacs/bin/gmx
# Run a full OpenMM simulation locally
polyzymd run -c config.yaml -r 1 --engine openmm
# Preview without writing files
polyzymd run -c config.yaml -r 1-3 --engine gromacs --dry-run
Workflow
Load and validate configuration
Build system (enzyme + substrate + polymers + solvent)
Run selected engine workflow:
GROMACS: export
.gro/.top/.mdpthen run EM/equilibration/production/post-processingOpenMM: run minimization/equilibration/production locally
GROMACS output is streamed in real-time for familiar user experience. On any failure, execution stops immediately and intermediate files are preserved.
Notes
Requires GROMACS only when
--engine gromacsis selectedUse
--gmx-pathonly with--engine gromacsMDP parameters are generated from your config.yaml to match OpenMM settings
OpenFF force field defaults are used (rcoulomb=0.9, rvdw=0.9, PME) for 1:1 parity with OpenMM
Position restraints are automatically generated for equilibration stages
Post-processing creates
prod_nojump.xtcandprod_centered.xtctrajectoriesFor OpenMM simulations, use
polyzymd run-segment(for a single segment) orpolyzymd submit(to submit self-resubmitting SLURM jobs)
Output Files
Files are created in {projects_dir}/replicate_{N}/gromacs/:
gromacs/
├── {system}.gro # Initial coordinates
├── {system}.top # Topology
├── *.itp # Molecule parameters (one per component)
├── em.mdp # Energy minimization parameters
├── eq_01_heating.mdp # Equilibration stage 1
├── eq_02_free_equilibration.mdp # Equilibration stage 2
├── prod.mdp # Production parameters
├── run_{system}_gromacs.sh # Generated run script
├── em.tpr, em.gro, em.edr # Energy minimization outputs
├── eq_01.*, eq_02.* # Equilibration outputs
├── prod.tpr, prod.xtc, ... # Production outputs
├── prod_nojump.xtc # Trajectory without PBC jumps
└── prod_centered.xtc # Centered trajectory for visualization
polyzymd submit
Submit self-resubmitting simulation jobs to SLURM for HPC execution.
Each replicate gets one SLURM script that handles the full simulation lifecycle: building, equilibration, production segments, interruption recovery, and resubmission. See Run PolyzyMD on SLURM Clusters for details.
polyzymd submit --config <path> --replicates <range> [options]
polyzymd submit -c <path> -r 1-5 --preset aa100
Options
Option |
Short |
Required |
Default |
Description |
|---|---|---|---|---|
|
|
Yes |
- |
Path to YAML configuration file |
|
|
No |
“1” |
Replicate range (e.g., “1-5”, “1,3,5”) |
|
- |
No |
aa100 |
SLURM partition preset |
|
- |
No |
from config or openmm |
Simulation engine: |
|
- |
No |
“” |
Email for job notifications |
|
- |
No |
from config |
Override scratch directory |
|
- |
No |
from config |
Override projects directory |
|
- |
No |
auto |
Directory for job scripts |
|
- |
No |
from preset |
Override SLURM time limit (HH:MM:SS) |
|
- |
No |
3G |
Override SLURM memory allocation |
|
- |
No |
- |
Override SLURM account / allocation ID |
|
- |
No |
from preset |
Override SLURM partition |
|
- |
No |
- |
Override SLURM QoS |
|
- |
No |
- |
GPU type for GRES (e.g., “a100”, “a40”, “mi100”) |
|
- |
No |
- |
SLURM |
|
- |
No |
- |
SLURM |
|
- |
No |
from preset |
Pixi environment for SLURM jobs ( |
|
- |
No |
false |
Skip system building (use pre-built system from |
|
- |
No |
false |
Skip duplicate-job check |
|
- |
No |
false |
Enable verbose OpenFF logs in job scripts |
|
- |
No |
false |
Preview submission plan only (no files written, no submission) |
|
- |
No |
false |
Generate SLURM scripts without submitting (the previous |
Note
--dry-run and --generate-only are mutually exclusive. Use --dry-run to
preview the submission plan without writing any files. Use --generate-only to
generate SLURM scripts for inspection without submitting them to the scheduler.
SLURM Presets
Preset |
Partition |
Time Limit |
Description |
|---|---|---|---|
|
aa100 |
24:00:00 |
NVIDIA A100 GPUs |
|
al40 |
24:00:00 |
NVIDIA L40 GPUs |
|
blanca-shirts |
7-00:00:00 |
Blanca condo partition |
|
GPU |
48:00:00 |
PSC Bridges2 GPU |
|
atesting |
01:00:00 |
Quick tests |
Example
# Preview what would be submitted (no files written)
polyzymd submit -c config.yaml -r 1-5 --preset aa100 --dry-run
# Generate scripts for inspection without submitting
polyzymd submit -c config.yaml -r 1-5 --preset aa100 --generate-only
# Submit for real with email notifications
polyzymd submit -c config.yaml -r 1-5 --preset aa100 --email you@university.edu
# Quick test with short time limit
polyzymd submit -c config.yaml -r 1 --preset testing --time-limit 0:05:00
# Custom directories for HPC
polyzymd submit -c config.yaml -r 1-3 --preset aa100 \
--scratch-dir /scratch/alpine/$USER/sims \
--projects-dir /projects/$USER/polyzymd
# GROMACS GPU submission with constraint
polyzymd submit -c config.yaml -r 1-3 \
--engine gromacs \
--preset blanca-shirts \
--constraint "A40" \
--email you@university.edu
# GROMACS CPU submission
polyzymd submit -c config.yaml -r 1-3 \
--engine gromacs \
--preset aa100
Self-Resubmitting Jobs
The submit command creates one self-resubmitting SLURM script per replicate:
┌─────────────────────────┐
│ Job runs segment │
│ Job checks progress │◄──── resubmits itself
│ Job resubmits if │ if work remains
│ work remains │
└─────────────────────────┘
Each job is identical and idempotent — it scans the filesystem to determine what work remains. See Run PolyzyMD on SLURM Clusters for details.
polyzymd run-segment
Unified entry point for SLURM jobs. Determines what work remains by loading progress state, then runs the next segment of work.
polyzymd run-segment -c CONFIG [OPTIONS]
Options
Option |
Short |
Required |
Default |
Description |
|---|---|---|---|---|
|
|
Yes |
- |
Path to YAML configuration file |
|
|
No |
1 |
Replicate number |
|
- |
No |
from config |
Override scratch directory |
|
- |
No |
false |
Skip system building for initial segment |
Behavior
If no segments exist: builds system, equilibrates, runs production segment 0
If segments exist but simulation incomplete: continues from last completed segment
If simulation is already complete: exits 0 immediately
Exit Codes
Code |
Meaning |
|---|---|
0 |
Segment completed successfully |
1 |
Error |
99 |
Graceful interruption (wall-time/preemption signal) |
Notes
This command is called by the generated SLURM scripts, not typically by users directly
Progress is tracked in
progress.jsonin the working directory
polyzymd check-progress
Check whether a simulation is complete. Used by SLURM resubmission logic to decide whether to resubmit.
polyzymd check-progress -c CONFIG [OPTIONS]
Options
Option |
Short |
Required |
Default |
Description |
|---|---|---|---|---|
|
|
Yes |
- |
Path to YAML configuration file |
|
|
No |
1 |
Replicate number |
|
- |
No |
from config |
Override scratch directory |
Exit Codes
Code |
Meaning |
|---|---|
0 |
Simulation complete — do NOT resubmit |
1 |
Work remains — resubmit |
Example
polyzymd check-progress -c config.yaml -r 1
# Output:
# Progress: 50000000/50000000 steps (100.0%), 10 segment(s)
# Status: COMPLETE
Notes
This command is called by the generated SLURM scripts, not typically by users directly
For a visual overview of all replicates, use
polyzymd statusinstead
polyzymd status
Show a compact progress overview for all replicates of a simulation. Auto-detects replicate directories on disk and displays colored progress bars with completion percentage, nanoseconds completed, and simulation status.
Usage
polyzymd status -c config.yaml
Options
Option |
Required |
Description |
|---|---|---|
|
Yes |
Path to YAML configuration file |
Output Format
polyzymd status — fnIII_apo_OEGMA-SBMA_A50_B50_100ns_310K
──────────────────────────────────────────────────────
run1 ██████████████████████████████████████████ 100.0% 100.0/100.0 ns completed
run2 █████████████████████░░░░░░░░░░░░░░░░░░░░░ 50.2% 50.2/100.0 ns running
run3 ███████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░ 35.0% 35.0/100.0 ns interrupted
run4 ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 0.0% 0.0/100.0 ns not_started
1/4 need attention (recover with: polyzymd recover -c config.yaml -r <N> --submit)
Status Colors
Status |
Color |
Meaning |
|---|---|---|
|
Green |
Production run finished |
|
Cyan |
Currently executing |
|
Amber |
Stalled — needs |
|
Red |
Error occurred |
|
Gray |
Directory exists but no progress data |
|
Gray |
Expected directory not on disk |
Notes
This is a read-only command — it only reads
progress.jsonfilesReplicate directories are auto-detected via the naming template in the config
The command is a one-shot snapshot (prints and exits)
Use
polyzymd recover -c config.yaml -r <N> --submitto resume interrupted replicates
polyzymd recover
Resume a stalled or interrupted simulation. Scans the working directory,
loads progress state, and reports how much work remains. With --submit,
generates and submits a self-resubmitting SLURM job that will automatically
continue from the last completed segment.
polyzymd recover -c CONFIG [OPTIONS]
Options
Option |
Short |
Required |
Default |
Description |
|---|---|---|---|---|
|
|
Yes |
- |
Path to YAML configuration file |
|
|
No |
1 |
Replicate number |
|
- |
No |
from config |
Override scratch directory |
|
- |
No |
aa100 |
SLURM preset for recovery job |
|
- |
No |
from config |
Override simulation engine ( |
|
- |
No |
–no-submit |
Submit a recovery job (default: status only) |
|
- |
No |
false |
Show what would be submitted without submitting |
|
- |
No |
“” |
Email for job notifications |
|
- |
No |
3G |
Override SLURM memory allocation (e.g. ‘4G’, ‘8G’) |
|
- |
No |
from preset |
Override SLURM partition |
|
- |
No |
- |
Override SLURM QoS |
|
- |
No |
- |
SLURM |
|
- |
No |
- |
SLURM |
|
- |
No |
from preset |
Pixi environment for recovery job |
|
- |
No |
false |
Skip duplicate-job check |
Example
# Check status only
polyzymd recover -c config.yaml -r 1
# Submit a recovery job
polyzymd recover -c config.yaml -r 1 --submit --preset blanca-shirts
# GROMACS recovery with GPU constraint
polyzymd recover -c config.yaml -r 1 \
--engine gromacs \
--submit \
--preset blanca-shirts \
--constraint "A40"
# Dry-run (show what would be submitted)
polyzymd recover -c config.yaml -r 1 --submit --dry-run
Example Output (Status Only)
Working directory: /scratch/user/sim/LipA_300K_run1
Progress: 12500000/50000000 steps (25.0%)
Status: in_progress
Segments: 5
segment 0: completed (100%)
segment 1: completed (100%)
segment 2: completed (100%)
segment 3: completed (100%)
segment 4: interrupted (50%)
Remaining: 75.000 ns (37500000 steps)
To resume, run:
polyzymd recover -c config.yaml -r 1 --submit --preset aa100
Notes
Without
--submit, this is a read-only status report — useful for inspecting simulation health across replicatesWith
--submit, generates a self-resubmitting SLURM job in{working_dir}/recovery_scripts/and submits itThe recovery job is identical to a normal submission job — it uses
run-segmentto determine what work remains and continues from there
polyzymd info
Display PolyzyMD installation and dependency information.
polyzymd info
Example Output
PolyzyMD - Molecular Dynamics for Enzyme-Polymer Systems
Version: 0.1.0
Dependencies:
OpenMM: 8.1.1
OpenFF Toolkit: 0.16.0
OpenFF Interchange: 0.3.25
Pydantic: 2.7.1
Example configs: polyzymd/templates/examples/
Use Cases
Verify installation is complete
Check dependency versions for troubleshooting
Confirm GPU-enabled OpenMM is installed
polyzymd compare
Compare analysis results across multiple simulation conditions with statistical testing.
polyzymd compare COMMAND [OPTIONS]
Commands:
init Initialize a new comparison project
validate Validate comparison configuration
run Run a comparison by analysis type
run-all Run all enabled comparisons
plot-all Generate comparison plots from a workspace
submit Submit analysis as SLURM job DAG (HPC)
submit-all Submit all enabled analyses as dependency-ordered SLURM DAGs
status Show status of submitted SLURM analysis jobs
finalize Run comparison + plotting from aggregated on-disk results
polyzymd compare init
Create a new comparison project with template configuration.
polyzymd compare init -n NAME [OPTIONS]
Options:
-n, --name TEXT Project name (creates directory) [required]
--eq-time TEXT Default equilibration time [default: 10ns]
-o, --output-dir PATH Parent directory [default: current]
Example
polyzymd compare init -n polymer_study
cd polymer_study
# Edit comparison.yaml to add your conditions
polyzymd compare run
Run a single analysis comparison by type. This is a generic command that works with any discovered analysis plugin.
polyzymd compare run COMPARISON_TYPE [OPTIONS]
Arguments:
COMPARISON_TYPE Analysis plugin name (e.g. rmsf, contacts, distances)
Options:
-f, --file PATH Path to comparison.yaml [default: comparison.yaml]
--eq-time TEXT Override equilibration time (e.g. '10ns', '5000ps')
--recompute Force recompute even if cached results exist
--format TEXT Output format: table, markdown, json [default: table]
-o, --output PATH Save formatted output to file
-q, --quiet Suppress INFO messages
--debug Enable DEBUG logging
--list List available comparison types and exit
Example
# Run RMSF comparison (uses plugins.rmsf from comparison.yaml)
polyzymd compare run rmsf
# Override equilibration time
polyzymd compare run rmsf --eq-time 20ns
# Run contacts comparison with markdown output
polyzymd compare run contacts --format markdown -o report.md
# List all available analysis types
polyzymd compare run --list
polyzymd compare validate
Validate a comparison.yaml configuration file without running analyses.
polyzymd compare validate [OPTIONS]
Options:
-f, --file PATH Path to comparison.yaml [default: comparison.yaml]
--format [table|json] Output format [default: table]
What It Checks
YAML syntax and structure
Required fields present
At least 1 condition defined
Condition labels are unique
Control label matches a condition (if specified)
Config files exist for each condition
Example
# Basic validation
polyzymd compare validate
# Validate specific file
polyzymd compare validate -f path/to/comparison.yaml
# JSON output for CI integration
polyzymd compare validate --format json
Output (success):
Validating: /path/to/comparison.yaml
✓ Configuration is valid
Name: polymer_study
Conditions: 3
- WT, PEG, SBMA
Control: WT
Analysis sections: rmsf, catalytic_triad
Output (errors):
Validating: /path/to/comparison.yaml
✗ Configuration has errors
• Control 'NoPolymer' not found in conditions: ['WT', 'PEG']
• Config file not found: /path/to/missing/config.yaml
JSON output:
{
"file": "/path/to/comparison.yaml",
"valid": true,
"errors": [],
"summary": {
"name": "polymer_study",
"conditions_count": 3,
"condition_labels": ["WT", "PEG", "SBMA"],
"control": "WT",
"sections_configured": ["rmsf", "catalytic_triad"]
}
}
polyzymd compare plot-all
Generate configured plots from a comparison workspace.
polyzymd compare plot-all [OPTIONS]
Options:
-f, --file PATH Path to comparison.yaml [default: comparison.yaml]
-o, --output-dir PATH Override plot output directory
-a, --analysis TEXT Plot one analysis type only
--list-available List registered/available plots and exit
-q, --quiet Suppress INFO messages
--debug Enable DEBUG logging
Example
# Generate all configured plots
polyzymd compare plot-all
# High-level availability check
polyzymd compare plot-all --list-available
# One analysis only
polyzymd compare plot-all -a rmsf
polyzymd compare submit
Submit replicate-level SLURM analysis DAG for one plugin. Each replicate is computed as an independent SLURM job, followed by per-condition aggregation jobs and a final comparison + plotting job.
Before submission, this command runs a dependency preflight check: if the
target plugin declares dependencies, required upstream comparison results must
already exist on disk (or use compare submit-all instead).
polyzymd compare submit ANALYSIS [OPTIONS]
Arguments:
ANALYSIS Analysis plugin name (e.g. rmsf, contacts)
Options:
-f, --file PATH Path to comparison.yaml [default: comparison.yaml]
--partition TEXT SLURM partition [default: cluster default]
--qos TEXT SLURM QoS
--account TEXT SLURM account/allocation
--pixi-path TEXT Path to pixi executable [default: pixi]
--ntasks INT SLURM ntasks [default: 1]
--cpus-per-task INT SLURM cpus-per-task [default: 1]
--mem TEXT SLURM memory request [default: 4G]
--time TEXT SLURM walltime [default: 01:00:00]
--max-retries INT Max retries for failed jobs [default: 3]
--mail-user TEXT Email for failure notifications
--recompute Force recomputation in workers
--allow-partial Allow finalize when some conditions are missing results
--equilibration TEXT Override equilibration time
--dry-run Generate scripts without submitting jobs
--job-arrays Submit one SLURM array job per condition
Example
# Submit RMSF analysis to SLURM
polyzymd compare submit rmsf --partition gpu --account my_alloc
# Dry run to inspect generated scripts
polyzymd compare submit contacts --dry-run
# Use job arrays for efficiency
polyzymd compare submit rmsf --job-arrays --partition aa100
# Rely on plugin memory hints and cluster default partition
polyzymd compare submit secondary_structure --qos normal
polyzymd compare submit-all
Submit all enabled analyses from comparison.yaml in dependency order with
cross-plugin finalize dependencies.
polyzymd compare submit-all [OPTIONS]
Options:
-f, --file PATH Path to comparison.yaml [default: comparison.yaml]
--partition TEXT SLURM partition [default: cluster default]
--qos TEXT SLURM QoS
--account TEXT SLURM account/allocation
--pixi-path TEXT Path to pixi executable [default: pixi]
--ntasks INT SLURM ntasks [default: 1]
--cpus-per-task INT SLURM cpus-per-task [default: 1]
--mem TEXT SLURM memory request [default: 4G]
--time TEXT SLURM walltime [default: 01:00:00]
--max-retries INT Max retries for failed jobs [default: 3]
--mail-user TEXT Email for failure notifications
--recompute Force recomputation in workers
--allow-partial Allow finalize when some conditions are missing results
--equilibration TEXT Override equilibration time
--dry-run Generate scripts without submitting jobs
--exclude TEXT Exclude one analysis (repeatable)
Example
# Submit everything enabled in comparison.yaml
polyzymd compare submit-all -f comparison.yaml --partition aa100 --qos normal
# Skip selected plugins
polyzymd compare submit-all -f comparison.yaml --exclude exposure --exclude polymer_affinity
# Dry-run planning only
polyzymd compare submit-all -f comparison.yaml --dry-run
polyzymd compare status
Show the status of a submitted SLURM analysis DAG. Reports counts of pending, running, succeeded, and failed jobs.
polyzymd compare status ANALYSIS [OPTIONS]
Arguments:
ANALYSIS Analysis plugin name
Options:
-f, --file PATH Path to comparison.yaml [default: comparison.yaml]
--reconcile Reconcile status files with sacct before reporting
--json Print machine-readable JSON status
Example
# Check status of RMSF SLURM jobs
polyzymd compare status rmsf
# Reconcile with SLURM scheduler and get JSON output
polyzymd compare status rmsf --reconcile --json
polyzymd compare finalize
Run comparison and plotting from aggregated on-disk results. Use this after SLURM jobs complete, or to re-run comparison/plotting without recomputing per-replicate results.
polyzymd compare finalize ANALYSIS [OPTIONS]
Arguments:
ANALYSIS Analysis plugin name
Options:
-f, --file PATH Path to comparison.yaml [default: comparison.yaml]
--recompute Retained for CLI compatibility (no effect)
--allow-partial Allow finalize when some conditions are missing results
Example
# Finalize after SLURM jobs complete
polyzymd compare finalize rmsf
# Allow partial results (some conditions may have failed)
polyzymd compare finalize contacts --allow-partial
Plotting comparisons (polyzymd compare plot-all)
The standalone polyzymd plot command group was removed.
Use polyzymd compare plot-all for all comparison plotting workflows.
polyzymd compare plot-all [OPTIONS]
Options:
-f, --file PATH Path to comparison.yaml [default: comparison.yaml]
-o, --output-dir PATH Override plot output directory
-a, --analysis TEXT Plot one analysis type only
--list-available List registered/available plots and exit
-q, --quiet Suppress INFO messages
--debug Enable DEBUG logging
Example
# Generate all configured plots
polyzymd compare plot-all
# Show available plots
polyzymd compare plot-all --list-available
# Plot only RMSF
polyzymd compare plot-all -a rmsf
Environment Variables
PolyzyMD expands environment variables in configuration paths:
Variable |
Example |
Description |
|---|---|---|
|
jola3134 |
Current username |
|
/home/jola3134 |
Home directory |
|
/home/jola3134 |
Home directory shortcut |
|
- |
Any environment variable |
Example
output:
projects_directory: "/projects/$USER/polyzymd"
scratch_directory: "/scratch/alpine/$USER/simulations"
Exit Codes
Code |
Meaning |
|---|---|
0 |
Success |
1 |
Error (validation failure, build failure, etc.) |
99 |
Graceful shutdown — simulation was interrupted but interrupted state was saved (see Run PolyzyMD on SLURM Clusters) |
See Also
Run Your First PolyzyMD Simulation - Getting started tutorial
Configuration Reference - Configuration file reference
Run PolyzyMD on SLURM Clusters - HPC and SLURM guide
RMSF Analysis: Quick Start - RMSF analysis tutorial
How to Compare Simulation Conditions - Comparing simulation conditions