Installation

Requirements

DROPPS requires Python 3.9 or newer. Python 3.10 or newer is recommended for the current dependency stack. Production GPU runs require a working NVIDIA driver compatible with the selected OpenMM CUDA package.

Automated installation

Unpack the source archive and run the bundled installer:

tar -xzf dropps-1.0.tar.gz
cd dropps-1.0
python scripts/install_dropps.py

The installer detects visible NVIDIA GPUs with nvidia-smi, chooses a compatible CUDA 12 or CUDA 13 OpenMM extra, installs DROPPS, and creates an OpenMM CUDA context as a functional check. On a machine that must provide a GPU, make this requirement explicit:

python scripts/install_dropps.py --require-cuda

Install the wheel

For a CPU or OpenCL environment on Python 3.10 or newer:

python -m pip install './dropps-1.0-py3-none-any.whl[latest]'

For a CUDA environment, select the extra compatible with the installed driver:

python -m pip install './dropps-1.0-py3-none-any.whl[cuda12]'
# or
python -m pip install './dropps-1.0-py3-none-any.whl[cuda13]'

The openmm81 extra is retained for trusted legacy TPR migration. It constrains NumPy below version 2 because OpenMM 8.1’s XTC extension uses the NumPy 1.x ABI:

python -m pip install './dropps-1.0-py3-none-any.whl[openmm81]'

Verify the environment

dps --version
dps help commands
python -m openmm.testInstallation

The first command must report dps 1.0. For production CUDA jobs, also run a short simulation with dps mdrun --platform CUDA; an explicit CUDA selection fails if the platform cannot be initialized instead of silently falling back to a CPU platform.