Given an arbitrary collection of particles and rigid bodies, this restraint prevents the particles from interpenetrating. Such restraints are also known as steric clash restraints.
If any of the rigid bodies don't have radii, an appropriate radius will be added. Note, to take advantage of this, the RigidBody must be in the container before the Restraint is added to the model.
Public Member Functions | |
ExcludedVolumeRestraint (SingletonContainer *sc, double k=1) | |
ExcludedVolumeRestraint (SingletonContainer *sc, Refiner *r, double k=1) | |
ContainersTemp | get_input_containers () const |
ParticlesTemp | get_input_particles () const |
ParticlesList | get_interacting_particles () const |
virtual std::string | get_type_name () const |
virtual ::IMP::VersionInfo | get_version_info () const |
void | set_model (Model *m) |
virtual double | unprotected_evaluate (DerivativeAccumulator *accum) const |
Friends | |
template<class T > | |
void | IMP::internal::unref (T *) |
IMP::core::ExcludedVolumeRestraint::ExcludedVolumeRestraint | ( | SingletonContainer * | sc, | |
Refiner * | r, | |||
double | k = 1 | |||
) |
The SingletonContainer contains a set of XYZR particles and RigidBody particles. The spring constant used is k.
IMP::core::ExcludedVolumeRestraint::ExcludedVolumeRestraint | ( | SingletonContainer * | sc, | |
double | k = 1 | |||
) |
The SingletonContainer contains a set of XYZR particles. Rigid bodies are not supported.
The spring constant used is k.