AmoebaOutOfPlaneBendForce

class simtk.openmm.openmm.AmoebaOutOfPlaneBendForce(*args)

This class implements the Amoeba out-of-plane bend interaction.

To use it, create an OutOfPlaneBendForce object then call addOutOfPlaneBend() once for each outOfPlaneBend. After an out-of-plane bend has been added, you can modify its force field parameters by calling setOutOfPlaneBendParameters(). This will have no effect on Contexts that already exist unless you call updateParametersInContext().

__init__(self) → AmoebaOutOfPlaneBendForce

__init__(self, other) -> AmoebaOutOfPlaneBendForce Create an AmoebaOutOfPlaneBendForce.

Methods

__init__(self)

__init__(self, other) -> AmoebaOutOfPlaneBendForce Create an AmoebaOutOfPlaneBendForce.

addOutOfPlaneBend(self, particle1, …)

Add an out-of-plane bend term to the force field.

getAmoebaGlobalOutOfPlaneBendCubic(self)

Get the global cubic term

getAmoebaGlobalOutOfPlaneBendPentic(self)

Get the global pentic term

getAmoebaGlobalOutOfPlaneBendQuartic(self)

Get the global quartic term

getAmoebaGlobalOutOfPlaneBendSextic(self)

Get the global sextic term

getForceGroup(self)

Get the force group this Force belongs to.

getNumOutOfPlaneBends(self)

Get the number of out-of-plane bend terms in the potential function

getOutOfPlaneBendParameters(self, index)

Get the force field parameters for an out-of-plane bend term.

setAmoebaGlobalOutOfPlaneBendCubic(self, cubicK)

Set the global cubic term

setAmoebaGlobalOutOfPlaneBendPentic(self, …)

Set the global pentic term

setAmoebaGlobalOutOfPlaneBendQuartic(self, …)

Set the global cubic term

setAmoebaGlobalOutOfPlaneBendSextic(self, …)

Set the global sextic term

setForceGroup(self, group)

Set the force group this Force belongs to.

setOutOfPlaneBendParameters(self, index, …)

Set the force field parameters for an out-of-plane bend term.

setUsesPeriodicBoundaryConditions(self, periodic)

Set whether this force should apply periodic boundary conditions when calculating displacements.

updateParametersInContext(self, context)

Update the per-bend term parameters in a Context to match those stored in this Force object.

usesPeriodicBoundaryConditions(self)

Returns whether or not this force makes use of periodic boundary conditions.

Attributes

thisown

The membership flag

property thisown

The membership flag

getNumOutOfPlaneBends(self) → int

Get the number of out-of-plane bend terms in the potential function

setAmoebaGlobalOutOfPlaneBendCubic(self, cubicK)

Set the global cubic term

Parameters

cubicK (double) – the cubic force constant for the angle

getAmoebaGlobalOutOfPlaneBendCubic(self) → double

Get the global cubic term

Returns

global cubicK term

Return type

double

setAmoebaGlobalOutOfPlaneBendQuartic(self, quarticK)

Set the global cubic term

Parameters

quarticK (double) – the quartic force constant for the angle

getAmoebaGlobalOutOfPlaneBendQuartic(self) → double

Get the global quartic term

Returns

global quartic term

Return type

double

setAmoebaGlobalOutOfPlaneBendPentic(self, penticK)

Set the global pentic term

Parameters

penticK (double) – the pentic force constant for the angle

getAmoebaGlobalOutOfPlaneBendPentic(self) → double

Get the global pentic term

Returns

global penticK term

Return type

double

setAmoebaGlobalOutOfPlaneBendSextic(self, sexticK)

Set the global sextic term

Parameters

sexticK (double) – the sextic force constant for the angle

getAmoebaGlobalOutOfPlaneBendSextic(self) → double

Get the global sextic term

Returns

global sexticK term

Return type

double

addOutOfPlaneBend(self, particle1, particle2, particle3, particle4, k) → int

Add an out-of-plane bend term to the force field.

Parameters
  • particle1 (int) – the index of the first particle connected by the outOfPlaneBend

  • particle2 (int) – the index of the second particle connected by the outOfPlaneBend

  • particle3 (int) – the index of the third particle connected by the outOfPlaneBend

  • particle4 (int) – the index of the fourth particle connected by the outOfPlaneBend

  • k (double) – the force constant for the out-of-plane bend

Returns

the index of the out-of-plane bend that was added

Return type

int

getOutOfPlaneBendParameters(self, index)

Get the force field parameters for an out-of-plane bend term.

Parameters

index (int) – the index of the outOfPlaneBend for which to get parameters

Returns

  • particle1 (int) – the index of the first particle connected by the outOfPlaneBend

  • particle2 (int) – the index of the second particle connected by the outOfPlaneBend

  • particle3 (int) – the index of the third particle connected by the outOfPlaneBend

  • particle4 (int) – the index of the fourth particle connected by the outOfPlaneBend

  • k (double) – the force constant for the out-of-plane bend

setOutOfPlaneBendParameters(self, index, particle1, particle2, particle3, particle4, k)

Set the force field parameters for an out-of-plane bend term.

Parameters
  • index (int) – the index of the outOfPlaneBend for which to set parameters

  • particle1 (int) – the index of the first particle connected by the outOfPlaneBend

  • particle2 (int) – the index of the second particle connected by the outOfPlaneBend

  • particle3 (int) – the index of the third particle connected by the outOfPlaneBend

  • particle4 (int) – the index of the fourth particle connected by the outOfPlaneBend

  • k (double) – the force constant for the out-of-plane bend

updateParametersInContext(self, context)

Update the per-bend term parameters in a Context to match those stored in this Force object. This method provides an efficient method to update certain parameters in an existing Context without needing to reinitialize it. Simply call setOutOfPlaneBendParameters() to modify this object’s parameters, then call updateParametersInContext() to copy them over to the Context.

The only information this method updates is the values of per-bend term parameters. The set of particles involved in a term cannot be changed, nor can new terms be added.

setUsesPeriodicBoundaryConditions(self, periodic)

Set whether this force should apply periodic boundary conditions when calculating displacements. Usually this is not appropriate for bonded forces, but there are situations when it can be useful.

usesPeriodicBoundaryConditions(self) → bool

Returns whether or not this force makes use of periodic boundary conditions.

Returns

true if force uses PBC and false otherwise

Return type

bool

__copy__(self) → Force
getForceGroup(self) → int

Get the force group this Force belongs to.

setForceGroup(self, group)

Set the force group this Force belongs to.

Parameters

group (int) – the group index. Legal values are between 0 and 31 (inclusive).