Context | A Context stores the complete state of a simulation |

ContextImpl | This is the internal implementation of a Context |

**exception** | |

OpenMMException | This class is used for all exceptions thrown by OpenMM |

Force | Force objects apply forces to the particles in a System, or alter their behavior in other ways |

AmoebaAngleForce | This class implements an interaction between triplets of particles that varies with the angle between them |

AmoebaBondForce | This class implements an interaction between pairs of particles that varies with the distance between them |

AmoebaGeneralizedKirkwoodForce | This class implements an implicit solvation force using the generalized Kirkwood/Grycuk model |

AmoebaInPlaneAngleForce | This class implements an interaction at trigonal centers corresponding to the projected in-plane angle bend energy between four particles |

AmoebaMultipoleForce | This class implements the Amoeba multipole interaction |

AmoebaOutOfPlaneBendForce | This class implements the Amoeba out-of-plane bend interaction |

AmoebaPiTorsionForce | This class implements the Amoeba pi-torsion interaction |

AmoebaStretchBendForce | This class implements the Amoeba stretch-bend interaction |

AmoebaTorsionTorsionForce | This class implements the Amoeba torsion-torsion interaction |

AmoebaVdwForce | This class implements a buffered 14-7 potential used to model van der Waals forces |

AmoebaWcaDispersionForce | This class implements a nonbonded interaction between pairs of particles typically used along with AmoebaGeneralizedKirkwoodForce as part of an implicit solvent model |

AndersenThermostat | This class uses the Andersen method to maintain constant temperature |

CMAPTorsionForce | This class implements an interaction between pairs of dihedral angles |

CMMotionRemover | This class prevents the center of mass of a System from drifting |

CustomAngleForce | This class implements interactions between sets of three particles that depend on the angle between them |

CustomBondForce | This class implements bonded interactions between pairs of particles |

CustomCompoundBondForce | This class supports a wide variety of bonded interactions |

CustomExternalForce | This class implements an "external" force on particles |

CustomGBForce | This class implements complex, multiple stage nonbonded interactions between particles |

CustomHbondForce | This class supports a wide variety of energy functions used to represent hydrogen bonding |

CustomNonbondedForce | This class implements nonbonded interactions between particles |

CustomTorsionForce | This class implements interactions between sets of four particles that depend on the torsion angle between them |

DrudeForce | This class implements forces that are specific to Drude oscillators |

GBSAOBCForce | This class implements an implicit solvation force using the GBSA-OBC model |

GBVIForce | This class implements an implicit solvation force using the GB/VI model |

HarmonicAngleForce | This class implements an interaction between groups of three particles that varies harmonically with the angle between them |

HarmonicBondForce | This class implements an interaction between pairs of particles that varies harmonically with the distance between them |

MonteCarloAnisotropicBarostat | This class uses a Monte Carlo algorithm to adjust the size of the periodic box, simulating the effect of constant pressure |

MonteCarloBarostat | This class uses a Monte Carlo algorithm to adjust the size of the periodic box, simulating the effect of constant pressure |

NonbondedForce | This class implements nonbonded interactions between particles, including a Coulomb force to represent electrostatics and a Lennard-Jones force to represent van der Waals interactions |

PeriodicTorsionForce | This class implements an interaction between groups of four particles that varies periodically with the torsion angle between them |

RBTorsionForce | This class implements an interaction between groups of four particles that varies with the torsion angle between them according to the Ryckaert-Bellemans potential |

ForceImpl | A ForceImpl provides the internal implementation of a Force |

AmoebaAngleForceImpl | This is the internal implementation of AmoebaAngleForce |

AmoebaBondForceImpl | This is the internal implementation of AmoebaBondForce |

AmoebaGeneralizedKirkwoodForceImpl | This is the internal implementation of AmoebaGeneralizedKirkwoodForce |

AmoebaInPlaneAngleForceImpl | This is the internal implementation of AmoebaInPlaneAngleForce |

AmoebaMultipoleForceImpl | This is the internal implementation of AmoebaMultipoleForce |

AmoebaOutOfPlaneBendForceImpl | This is the internal implementation of AmoebaOutOfPlaneBendForce |

AmoebaPiTorsionForceImpl | This is the internal implementation of AmoebaPiTorsionForce |

AmoebaStretchBendForceImpl | This is the internal implementation of AmoebaStretchBendForce |

AmoebaTorsionTorsionForceImpl | This is the internal implementation of AmoebaTorsionTorsionForce |

AmoebaVdwForceImpl | This is the internal implementation of AmoebaVdwForce |

AmoebaWcaDispersionForceImpl | This is the internal implementation of AmoebaWcaDispersionForce |

AndersenThermostatImpl | This is the internal implementation of AndersenThermostat |

CMAPTorsionForceImpl | This is the internal implementation of CMAPTorsionForce |

CMMotionRemoverImpl | This is the internal implementation of CMMotionRemover |

CustomAngleForceImpl | This is the internal implementation of CustomAngleForce |

CustomBondForceImpl | This is the internal implementation of CustomBondForce |

CustomCompoundBondForceImpl | This is the internal implementation of CustomCompoundBondForce |

CustomExternalForceImpl | This is the internal implementation of CustomExternalForce |

CustomGBForceImpl | This is the internal implementation of CustomGBForce |

CustomHbondForceImpl | This is the internal implementation of CustomHbondForce |

CustomNonbondedForceImpl | This is the internal implementation of CustomNonbondedForce |

CustomTorsionForceImpl | This is the internal implementation of CustomTorsionForce |

DrudeForceImpl | This is the internal implementation of DrudeForce |

GBSAOBCForceImpl | This is the internal implementation of GBSAOBCForce |

GBVIForceImpl | This is the internal implementation of GBVIForce |

HarmonicAngleForceImpl | This is the internal implementation of HarmonicAngleForce |

HarmonicBondForceImpl | This is the internal implementation of HarmonicBondForce |

MonteCarloAnisotropicBarostatImpl | This is the internal implementation of MonteCarloAnisotropicBarostat |

MonteCarloBarostatImpl | This is the internal implementation of MonteCarloBarostat |

NonbondedForceImpl | This is the internal implementation of NonbondedForce |

PeriodicTorsionForceImpl | This is the internal implementation of PeriodicTorsionForce |

RBTorsionForceImpl | This is the internal implementation of RBTorsionForce |

fvec4 | A four element vector of floats |

fvec8 | An eight element vector of floats |

Integrator | An Integrator defines a method for simulating a System by integrating the equations of motion |

BrownianIntegrator | This is an Integrator which simulates a System using Brownian dynamics |

CustomIntegrator | This is an Integrator that can be used to implemented arbitrary, user defined integration algorithms |

DrudeLangevinIntegrator | This Integrator simulates systems that include Drude particles |

DrudeSCFIntegrator | This is a leap-frog Verlet Integrator that simulates systems with Drude particles |

LangevinIntegrator | This is an Integrator which simulates a System using Langevin dynamics |

RPMDIntegrator | This is an Integrator which simulates a System using ring polymer molecular dynamics (RPMD) |

VariableLangevinIntegrator | This is an error contolled, variable time step Integrator that simulates a System using Langevin dynamics |

VariableVerletIntegrator | This is an error contolled, variable time step Integrator that simulates a System using the leap-frog Verlet algorithm |

VerletIntegrator | This is an Integrator which simulates a System using the leap-frog Verlet algorithm |

ivec4 | A four element vector of ints |

ivec8 | An eight element vector of ints |

Kernel | A Kernel encapsulates a particular implementation of a calculation that can be performed on the data in a Context |

KernelFactory | A KernelFactory is an object that can create KernelImpls |

KernelImpl | A KernelImpl defines the internal implementation of a Kernel object |

LocalEnergyMinimizer | Given a Context, this class searches for a new set of particle positions that represent a local minimum of the potential energy |

Platform | A Platform defines an implementation of all the kernels needed to perform some calculation |

SplineFitter | SplineFitter provides routines for performing cubic spline interpolation |

**StateBuilder** | |

State | A State object records a snapshot of the current state of a simulation at a point in time |

System | This class represents a molecular system |

TabulatedFunction | A TabulatedFunction uses a set of tabulated values to define a mathematical function |

Continuous1DFunction | This is a TabulatedFunction that computes a continuous one dimensional function |

Continuous2DFunction | This is a TabulatedFunction that computes a continuous two dimensional function |

Continuous3DFunction | This is a TabulatedFunction that computes a continuous three dimensional function |

Discrete1DFunction | This is a TabulatedFunction that computes a discrete one dimensional function f(x) |

Discrete2DFunction | This is a TabulatedFunction that computes a discrete two dimensional function f(x,y) |

Discrete3DFunction | This is a TabulatedFunction that computes a discrete three dimensional function f(x,y,z) |

**Task** | |

ThreadPool | A ThreadPool creates a set of worker threads that can be used to execute tasks in parallel |

Vec3 | This class represents a three component vector |

VirtualSite | A VirtualSite describes the rules for computing a particle's position based on other particles |

LocalCoordinatesSite | This is a VirtualSite that uses the locations of three other particles to compute a local coordinate system, then places the virtual site at a fixed location in that coordinate system |

OutOfPlaneSite | This is a VirtualSite that computes the particle location based on three other particles' locations |

ThreeParticleAverageSite | This is a VirtualSite that computes the particle location as a weighted average of three other particle's locations |

TwoParticleAverageSite | This is a VirtualSite that computes the particle location as a weighted average of two other particle's locations |

XmlSerializer | XmlSerializer is used for serializing objects as XML, and for reconstructing them again |