forces.rst 2.75 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
.. _forces:

======
Forces
======

The ``Force`` abstract class
============================

The ``Force`` objects added to a ``System`` define the behavior of the
particles. ``Force`` is an abstract class; subclasses implement specific behaviors. Classes that extend ``Force`` may implement actual physical forces, or any number of processes that either actually apply forces to particles or directly modify their positions or momenta.

.. toctree::
    :maxdepth: 2

    generated/Force


Common bonded and non-bonded forces
===================================

These classes implement forces that are widely used in biomolecular simulation.

.. toctree::
    :maxdepth: 2

27
    generated/ConstantPotentialForce
28
29
30
31
32
33
    generated/CMAPTorsionForce
    generated/DrudeForce
    generated/GBSAOBCForce
    generated/GayBerneForce
    generated/HarmonicAngleForce
    generated/HarmonicBondForce
Evan Pretti's avatar
Evan Pretti committed
34
    generated/LCPOForce
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
    generated/NonbondedForce
    generated/PeriodicTorsionForce
    generated/RBTorsionForce


AMOEBA forces
=============

These forces are used to implement the polarizable AMOEBA force fields.

.. toctree::
    :maxdepth: 2

    generated/AmoebaGeneralizedKirkwoodForce
    generated/AmoebaMultipoleForce
    generated/AmoebaTorsionTorsionForce
    generated/AmoebaVdwForce
    generated/AmoebaWcaDispersionForce
53
    generated/HippoNonbondedForce
54
55
56
57
58
59


Pseudo-forces
=============

These inherit from ``Force``, but do not describe physical forces. They are used
60
61
for a variety of purposes: to implement thermostats or barostats, to apply biasing
potentials, or to otherwise modify the simulation from step to step.
62
63
64
65
66

.. toctree::
    :maxdepth: 2

    generated/AndersenThermostat
67
    generated/ATMForce
68
69
70
    generated/CMMotionRemover
    generated/MonteCarloAnisotropicBarostat
    generated/MonteCarloBarostat
71
    generated/MonteCarloFlexibleBarostat
72
    generated/MonteCarloMembraneBarostat
73
    generated/OrientationRestraintForce
74
    generated/RGForce
75
76
77
78
79
80
    generated/RMSDForce
    generated/RPMDMonteCarloBarostat


.. _custom-forces:

81
82
Custom Forces
=============
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103

OpenMM provides a number of classes that make it easier to implement custom
forces for common scenarios. These classes implement constructors that take an
algebraic expression as a string. The class is instantiated (not extended) to
provide a ``Force`` object that efficiently implements the provided
expression.

.. toctree::
    :maxdepth: 2

    generated/CustomAngleForce
    generated/CustomBondForce
    generated/CustomCVForce
    generated/CustomCentroidBondForce
    generated/CustomCompoundBondForce
    generated/CustomExternalForce
    generated/CustomGBForce
    generated/CustomHbondForce
    generated/CustomManyParticleForce
    generated/CustomNonbondedForce
    generated/CustomTorsionForce
104
    generated/CustomVolumeForce