OpenMM Reporters

MDTraj provides a few flexible reporters for use with the OpenMM python app. OpenMM is a toolkit for molecular simulation using high performance GPU code. OpenMM itself ships with a DCD reporter, but it lacks the ability to, for instance, report on only a subset of the atoms, which might be desired to print only the protein coordinates and discard water during a simulation.

MDTraj currently provides three reporters, HDF5Reporter, NetCDFReporter and DCDReporter. Of these, `HDF5Reporter is the most flexible, because the HDF5 Format is the most full-featured trajectory file format available.

Example Usage

from import *
from simtk.openmm import *
from simtk.unit import *
from mdtraj.reporters import NetCDFReporter         # <-- new import from mdtraj

pdb = PDBFile('input.pdb')
forcefield = ForceField('amber99sb.xml', 'tip3p.xml')
system = forcefield.createSystem(pdb.topology, nonbondedMethod=PME,
                                 nonbondedCutoff=1*nanometer, constraints=HBonds)
integrator = LangevinIntegrator(300*kelvin, 1/picosecond, 0.002*picoseconds)
simulation = Simulation(pdb.topology, system, integrator)
simulation.reporters.append(NetCDFReporter('', 1000))   # <-- AMBER compatible

HDF5Reporter(file, reportInterval[, …])

HDF5Reporter stores a molecular dynamics trajectory in the HDF5 format.

NetCDFReporter(file, reportInterval[, …])

NetCDFReporter stores a molecular dynamics trajectory in the AMBER NetCDF format.

DCDReporter(file, reportInterval[, atomSubset])

DCDReporter stores a molecular dynamics trajectory in the CHARMM / NAMD DCD Format