Apply a function to the distance to a fixed point.
A particle is scored based on the distance between it and a constant point as passed to a UnaryFunction. This is useful for anchoring constraining particles within a sphere.
To restrain a set of particles store in SingletonContainer pc in a sphere do the following: import IMP.example radius=10 stiffness=2 center= IMP.algebra.Vector3D(1,2,3) (m,c)=IMP.example.create_model_and_particles() ub= IMP.core.HarmonicUpperBound(radius, stiffness) # Restrain based on the distance to a single point (hence a ball ss= IMP.core.DistanceToSingletonScore(ub, center) r= IMP.container.SingletonsRestraint(ss, c) m.add_restraint(r) m.evaluate(False)
Inheritance diagram for IMP::core::GenericDistanceToSingletonScore< UF >:Public Member Functions | |
| GenericDistanceToSingletonScore (UF *f, const algebra::Vector3D &pt) | |
Public Member Functions inherited from IMP::SingletonScore | |
| SingletonScore (std::string name="SingletonScore %1%") | |
| Restraints | create_current_decomposition (Particle *vt) const |
| virtual double | evaluate (Particle *vt, DerivativeAccumulator *da) const =0 |
| Compute the score and the derivative if needed. | |
| virtual double | evaluate (const ParticlesTemp &o, DerivativeAccumulator *da) const |
| virtual double | evaluate_if_good_index (Model *m, ParticleIndex vt, DerivativeAccumulator *da, double max) const |
| Compute the score and the derivative if needed. | |
| virtual double | evaluate_if_good_indexes (Model *m, const ParticleIndexes &o, DerivativeAccumulator *da, double max) const |
| virtual double | evaluate_index (Model *m, ParticleIndex vt, DerivativeAccumulator *da) const |
| Compute the score and the derivative if needed. | |
| virtual double | evaluate_indexes (Model *m, const ParticleIndexes &o, DerivativeAccumulator *da) const |
| virtual ContainersTemp | get_input_containers (Particle *p) const =0 |
| virtual ParticlesTemp | get_input_particles (Particle *p) const =0 |
Public Member Functions inherited from IMP::base::Object | |
| std::size_t | __hash__ () const |
| virtual std::string | get_type_name () const =0 |
| Return a string identifying the type of the object. | |
| virtual IMP::base::VersionInfo | get_version_info () const =0 |
| Get information about the module and version of the object. | |
| void | set_check_level (CheckLevel l) |
| void | set_log_level (LogLevel l) |
| Set the logging level used in this object. | |
| void | set_was_used (bool tf) const |
| void | show (std::ostream &out=std::cout) const |
| const std::string & | get_name () const |
| void | set_name (std::string name) |
Static Public Member Functions | |
|
static GenericDistanceToSingletonScore * | get_from (IMP::base::Object *o) |
Additional Inherited Members | |
Public Types inherited from IMP::SingletonScore | |
| typedef Particle * | Argument |
| typedef ParticleIndex | IndexArgument |