1 #ifndef OPENMM_CUSTOMBONDEDFORCEIMPL_H_
2 #define OPENMM_CUSTOMBONDEDFORCEIMPL_H_
35 #include "ForceImpl.h"
36 #include "openmm/CustomBondForce.h"
37 #include "openmm/Kernel.h"
This is the internal implementation of a Context.
Definition: ContextImpl.h:53
void updateParametersInContext(ContextImpl &context)
std::vector< std::string > getKernelNames()
Get the names of all Kernels used by this Force.
const CustomBondForce & getOwner() const
Get the Force object from which this ForceImpl was created.
Definition: CustomBondForceImpl.h:53
This is the internal implementation of CustomBondForce.
Definition: CustomBondForceImpl.h:48
This class implements bonded interactions between pairs of particles.
Definition: CustomBondForce.h:72
void initialize(ContextImpl &context)
This is called after the ForceImpl is created and before updateContextState(), calcForces(), or calcEnergy() is called on it.
double calcForcesAndEnergy(ContextImpl &context, bool includeForces, bool includeEnergy, int groups)
Calculate the force on each particle generated by this ForceImpl and/or this ForceImpl's contribution...
std::map< std::string, double > getDefaultParameters()
Get a map containing the default values for all adjustable parameters defined by this ForceImpl...
std::vector< std::pair< int, int > > getBondedParticles() const
Get pairs of particles connected by bonds by this force.
A Kernel encapsulates a particular implementation of a calculation that can be performed on the data ...
Definition: Kernel.h:58
A ForceImpl provides the internal implementation of a Force.
Definition: ForceImpl.h:57
CustomBondForceImpl(const CustomBondForce &owner)
void updateContextState(ContextImpl &context)
This method is called at the beginning of each time step.
Definition: CustomBondForceImpl.h:56