DL_POLY
DL_POLY is a package of subroutines, programs and data files, designed to facilitate molecular dynamics simulations of macromolecules, polymers, ionic systems and solutions on a distributed memory parallel computer. However DL_POLY is available in two different forms: DL_POLY_Classic (written by Bill Smith & Tim Forester, http://www.ccp5.ac.uk/DL_POLY_CLASSIC/) and DL_POLY_5 (written by Ilian Todorov & Bill Smith), only PL_POLY_5 is installed here.
Installed versions
5.1.0 (installed)
Submitting an DL_POLY calculation
The working directory must contain the CONFIG, CONTROL, and FIELD files in order to run a calculation with DL_POLY. This example describes a 2 ns long molecular dynamics simulation of 864 argon atoms in the original simulation box under periodic boundary conditions at 50 K. All files belonging to the project must be located in the same directory.
The necessary coordinate file (CONFIG) can be accessed from here
CONFIGThe force field parameters are in FIELD which can be accessed from here
FIELDThe MD parameters goes to
CONTROLinput:
argon LJ NVT equilibration (864) - 50K, Langevin thermostate, 10.0 Ang, 2ns
restart scale
temperature 50.0
equilibration steps 20000
steps 20000
timestep 0.001
cutoff 10.0
rvdw 10.0
ewald precision 1d-6
ensemble nvt langevin 0.5
print every 100
stats every 100
traj 1000 1000 0
collect
job time 100
close time 10
finish
Please note that the files mentioned above are highly sensitive to syntax; even minor formatting errors can lead to runtime failures.
(4) Job submission script (subDL_Poly.sh) for a standard DL_POLY SLURM job (Before submitting a calculation, the following files must be removed to avoid any interference from previous calculations performed in the same directory:
REVOLD, REVCON, REVIVE*, REVCFG*, STATIS, HISTORY, OUTPUT.):
#!/bin/bash
#SBATCH -J DL_POLY
#SBATCH -p cpu
#SBATCH -N 1
#SBATCH -t 24:00:00
#SBATCH -o slurm-%j.out
#SBATCH -e slurm-%j.err
set -euo pipefail
# --- Modules ---
module purge
module load PrgEnv-gnu/8.6.0
module load cray-mpich/8.1.31
module load libfabric/1.22.0
cd "$SLURM_SUBMIT_DIR"
# --- Clean restart artifacts ---
rm -f REVOLD REVCON REVIVE* REVCFG* STATIS HISTORY OUTPUT
# --- Threading (safe defaults) ---
# If you submit with --cpus-per-task, keep OMP in sync (harmless if unused).
export OMP_NUM_THREADS="${SLURM_CPUS_PER_TASK:-1}"
export OMP_PLACES=cores
export OMP_PROC_BIND=close
# --- Info ---
echo "JobID: ${SLURM_JOB_ID}"
echo "Partition: ${SLURM_JOB_PARTITION}"
echo "Nodes: ${SLURM_JOB_NUM_NODES}"
echo "MPI tasks: ${SLURM_NTASKS:-1}"
echo "CPUs per task: ${SLURM_CPUS_PER_TASK:-1}"
echo "OMP_NUM_THREADS: ${OMP_NUM_THREADS}"
echo "Node list: ${SLURM_NODELIST}"
echo "Working directory: $(pwd)"
# --- Run ---
DLPOLY_BIN="/opt/software/packages/DLPOLY/5.1.0/bin/DLPOLY.Z"
# Run exactly as allocated (no conflicting SBATCH lines)
srun -n "${SLURM_NTASKS:-1}" "${DLPOLY_BIN}"
To submit the DL_POLY job via SLURM to the KOMONDOR CPU queue, the job is executed on one compute node using 4 MPI tasks:
sbatch -p cpu -N 1 -n 4 subDL_Poly.sh
You can find DL_POLY-specific information at the following locations:
https://ccp5.gitlab.io/dl-poly/
https://www.jiscmail.ac.uk/cgi-bin/webadmin?A0=DLPOLY
https://github.com/ccp5UK/dl-poly/blob/devel/Release.md#version-510-december-2021
DL_poly should be cited as
Please cite the following reference when publishing results obtained with DL_POLY:
Todorov, W. Smith, The DL POLY 4.0 User Manual, STFC Daresbury Laboratory, Daresbury, Warrington WA4 4AD, Cheshire, UK (October 2010). URL http://www.ccp5.ac.uk/DL_POLY/
Last update by Milán SZŐRI: 2026-01-16