AmoebaWcaDispersionForce

class AmoebaWcaDispersionForce : public OpenMM::Force

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

To use it, create an AmoebaWcaDispersionForce object then call addParticle() once for each particle. After a particle has been added, you can modify its force field parameters by calling setParticleParameters(). This will have no effect on Contexts that already exist unless you call updateParametersInContext().

Public Functions

AmoebaWcaDispersionForce()

Create an AmoebaWcaDispersionForce.

inline int getNumParticles() const

Get the number of particles

void setParticleParameters(int particleIndex, double radius, double epsilon)

Set the force field parameters for a WCA dispersion particle.

Parameters
  • particleIndex – the particle index

  • radius – radius

  • epsilon – epsilon

void getParticleParameters(int particleIndex, double &radius, double &epsilon) const

Get the force field parameters for a WCA dispersion particle.

Parameters
  • particleIndex – the particle index

  • radius[out] radius

  • epsilon[out] epsilon

int addParticle(double radius, double epsilon)

Set the force field parameters for a WCA dispersion particle.

Parameters
  • radius – radius

  • epsilon – epsilon

Returns

index of added particle

void updateParametersInContext(Context &context)

Update the per-particle 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 setParticleParameters() 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-particle parameters. All other aspects of the Force are unaffected and can only be changed by reinitializing the Context.

inline virtual bool usesPeriodicBoundaryConditions() const

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

Returns

true if nonbondedMethod uses PBC and false otherwise