Reads an SDF file, parametrizes each molecule with the OpenFF force field, and writes one folder per ligand containing Gromacs-ready files.
macOS / Linux
bash setup_env.shWindows
setup_env.batconda activate openff_env
python parametrize.py run example.sdf --outdir output
python parametrize.py verify example.sdf --outdir output
output/
CHEMBL45305/
ligand.gro # coordinates (Gromacs format)
ligand.pdb # coordinates (PDB format)
topol.top # force field topology
Coordinates are read from the SDF via RDKit (removeHs=False).
No minimization or conformation generation is performed.
Input molecules are registered as 2D in the SDF header,
but contain valid 3D coordinates.
The following warnings may appear during execution and can be safely ignored:
RDKit 2D/3D warning
Warning: molecule is tagged as 2D, but at least one Z coordinate is not zero.
Input molecules are flagged as 2D in the SDF header despite having 3D geometry.
PyTorch FutureWarning
FutureWarning: torch.distributed.reduce_op is deprecated
Caused by an internal PyTorch compatibility issue inside openff-interchange.
Not related to this pipeline.
To suppress all warnings, keep suppress_warnings() enabled in main().
To show warnings, comment out that line.
See environment.yml (conda) or requirements.txt (pip).
All dependencies are installed automatically by the setup script.