Get engine forcefield#
Translating force field specifications into engine-specific parameter definitions.
The function molsysmt.molecular_mechanics.get_engine_forcefield() maps high-level force field, solvent, and water model keywords to the corresponding XML parameter files for simulation engines (such as OpenMM).
Added in version 1.0.0.
API documentation
Follow this link for a detailed description of the input arguments, raised errors, and returned objects of this function: molsysmt.molecular_mechanics.get_engine_forcefield().
Note
Molecular Mechanics Backend Engine
Molecular mechanics and force evaluations in MolSysMT are executed using backend simulation engines (currently OpenMM by default). MolSysMT intentionally unifies the Pythonic interface and data structures while delegating energy evaluations, parameterizations, and gradient calculations to high-performance, battle-tested molecular simulation engines.
Basic usage#
Let’s query the OpenMM XML definition files for the AMBER14 force field in vacuum:
import molsysmt as msm
ff_xmls = msm.molecular_mechanics.get_engine_forcefield('AMBER14', engine='OpenMM')
print('OpenMM XML definitions for AMBER14 in vacuum:', ff_xmls)
OpenMM XML definitions for AMBER14 in vacuum: ['amber14-all.xml']
Force field definitions with explicit water and implicit solvent models#
Specifying explicit water models (e.g. water_model='TIP3P') or implicit solvent models (e.g. implicit_solvent='OBC1') automatically includes the complementary parameter files:
ff_tip3p = msm.molecular_mechanics.get_engine_forcefield('AMBER14', water_model='TIP3P', engine='OpenMM')
ff_obc1 = msm.molecular_mechanics.get_engine_forcefield('AMBER14', implicit_solvent='OBC1', engine='OpenMM')
print('AMBER14 + TIP3P XMLs:', ff_tip3p)
print('AMBER14 + OBC1 XMLs:', ff_obc1)
AMBER14 + TIP3P XMLs: ['amber14-all.xml', 'amber14/tip3p.xml']
AMBER14 + OBC1 XMLs: ['amber14-all.xml']
See also
Related Tools & References
Get potential energy: Calculate potential energy with
molsysmt.molecular_mechanics.get_potential_energy().Potential energy minimization: Minimize potential energy with
molsysmt.molecular_mechanics.potential_energy_minimization().