Force field typing tools

Force field typing engines

Engines for applying parameters to chemical systems

The SMIRks-Native Open Force Field (SMIRNOFF)

A reference implementation of the SMIRNOFF specification for parameterizing biomolecular systems

ForceField

The ForceField class is a primary part of the top-level toolkit API. ForceField objects are initialized from SMIRNOFF data sources (e.g. an OFFXML file). For a basic example of OpenMM System creation using a ForceField, see examples/SMIRNOFF_simulation.

ForceField

A factory that assigns SMIRNOFF parameters to a molecular system

get_available_force_fields

Get the filenames of all available .offxml force field files.

Parameter Type

ParameterType objects are representations of individual SMIRKS-based SMIRNOFF parameters. These are usually initialized during ForceField creation, and can be inspected and modified by users via the Python API. For more information, see examples/forcefield_modification.

ParameterType

Base class for SMIRNOFF parameter types.

ConstraintType

A SMIRNOFF constraint type

BondType

A SMIRNOFF bond type

AngleType

A SMIRNOFF angle type.

ProperTorsionType

A SMIRNOFF torsion type for proper torsions.

ImproperTorsionType

A SMIRNOFF torsion type for improper torsions.

vdWType

A SMIRNOFF vdWForce type.

LibraryChargeType

A SMIRNOFF Library Charge type.

GBSAType

A SMIRNOFF GBSA type.

ChargeIncrementType

A SMIRNOFF bond charge correction type.

VirtualSiteType

Parameter Handlers

Each ForceField primarily consists of several ParameterHandler objects, which each contain the machinery to add one energy component to an OpenMM System. During System creation, each ParameterHandler registered to a ForceField has its assign_parameters() function called.

ParameterList

Parameter list that also supports accessing items by SMARTS string.

ParameterHandler

Base class for parameter handlers.

ConstraintHandler

Handle SMIRNOFF <Constraints> tags

BondHandler

Handle SMIRNOFF <Bonds> tags

AngleHandler

Handle SMIRNOFF <AngleForce> tags

ProperTorsionHandler

Handle SMIRNOFF <ProperTorsionForce> tags

ImproperTorsionHandler

Handle SMIRNOFF <ImproperTorsionForce> tags

vdWHandler

Handle SMIRNOFF <vdW> tags

ElectrostaticsHandler

Handles SMIRNOFF <Electrostatics> tags.

LibraryChargeHandler

Handle SMIRNOFF <LibraryCharges> tags

ToolkitAM1BCCHandler

Handle SMIRNOFF <ToolkitAM1BCC> tags

GBSAHandler

Handle SMIRNOFF <GBSA> tags

ChargeIncrementModelHandler

Handle SMIRNOFF <ChargeIncrementModel> tags

VirtualSiteHandler

Handle SMIRNOFF <VirtualSites> tags TODO: Add example usage/documentation .

Parameter I/O Handlers

ParameterIOHandler objects handle reading and writing of serialzied SMIRNOFF data sources.

ParameterIOHandler

Base class for handling serialization/deserialization of SMIRNOFF ForceField objects

XMLParameterIOHandler

Handles serialization/deserialization of SMIRNOFF ForceField objects from OFFXML format.

Parameter Attributes

ParameterAttribute and IndexedParameterAttribute provide a standard backend for ParameterHandler and Parameter attributes, while also enforcing validation of types and units.

ParameterAttribute

A descriptor for ParameterType attributes.

IndexedParameterAttribute

The attribute of a parameter with an unspecified number of terms.

MappedParameterAttribute

The attribute of a parameter in which each term is a mapping.

IndexedMappedParameterAttribute

The attribute of a parameter with an unspecified number of terms, where each term is a mapping.