IMP
2.3.0
The Integrative Modeling Platform
|
Score the improper dihedral based on a UnaryFunction,. More...
#include <IMP/atom/ImproperSingletonScore.h>
Score the improper dihedral based on a UnaryFunction,.
This scores the improper dihedral using information stored in its Dihedral decorator. The score is based on the difference between the stored ideal improper angle and the actual angle and scaled by the stiffness. That is stiffness * (improper_angle-ideal_value). The difference is in radians between -pi and +pi; it is the shortest distance from one angle to the other.
Just as for regular dihedral angles, the improper angle is defined as the angle between the plane in which the first three atoms lie and the plane in which the last three atoms lie.
Definition at line 35 of file ImproperSingletonScore.h.
Public Member Functions | |
ImproperSingletonScore (UnaryFunction *f) | |
Use f to penalize deviations in angle. More... | |
virtual kernel::ModelObjectsTemp | do_get_inputs (kernel::Model *m, const kernel::ParticleIndexes &pis) const |
double | evaluate_if_good_indexes (kernel::Model *m, const kernel::ParticleIndexes &p, DerivativeAccumulator *da, double max, unsigned int lower_bound, unsigned int upper_bound) const |
virtual double | evaluate_index (kernel::Model *m, kernel::ParticleIndex p, DerivativeAccumulator *da) const |
Compute the score and the derivative if needed. More... | |
double | evaluate_indexes (kernel::Model *m, const kernel::ParticleIndexes &p, DerivativeAccumulator *da, unsigned int lower_bound, unsigned int upper_bound) const |
Compute the score and the derivative if needed over a set. More... | |
virtual std::string | get_type_name () const |
virtual ::IMP::base::VersionInfo | get_version_info () const |
Get information about the module and version of the object. More... | |
Public Member Functions inherited from IMP::kernel::SingletonScore | |
SingletonScore (std::string name="SingletonScore %1%") | |
Restraints | create_current_decomposition (kernel::Model *m, kernel::ParticleIndex vt) const |
virtual double | evaluate (kernel::Particle *vt, DerivativeAccumulator *da) const |
Compute the score and the derivative if needed. More... | |
virtual double | evaluate_if_good_index (kernel::Model *m, kernel::ParticleIndex vt, DerivativeAccumulator *da, double max) const |
Compute the score and the derivative if needed. More... | |
Public Member Functions inherited from IMP::kernel::ParticleInputs | |
virtual ContainersTemp | get_input_containers (Particle *p) const |
virtual ParticlesTemp | get_input_particles (Particle *p) const |
ModelObjectsTemp | get_inputs (kernel::Model *m, const ParticleIndexes &pis) const |
Public Member Functions inherited from IMP::base::Object | |
virtual void | clear_caches () |
CheckLevel | get_check_level () const |
LogLevel | get_log_level () const |
void | set_check_level (CheckLevel l) |
void | set_log_level (LogLevel l) |
Set the logging level used in this object. More... | |
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) |
Additional Inherited Members | |
Public Types inherited from IMP::kernel::SingletonScore | |
typedef kernel::Particle * | Argument |
typedef kernel::ParticleIndex | IndexArgument |
typedef SingletonModifier | Modifier |
typedef kernel::Particle * | PassArgument |
typedef kernel::ParticleIndex | PassIndexArgument |
Protected Member Functions inherited from IMP::kernel::SingletonScore | |
virtual Restraints | do_create_current_decomposition (kernel::Model *m, kernel::ParticleIndex vt) const |
Protected Member Functions inherited from IMP::base::Object | |
Object (std::string name) | |
Construct an object with the given name. More... | |
virtual void | do_destroy () |
IMP::atom::ImproperSingletonScore::ImproperSingletonScore | ( | UnaryFunction * | f | ) |
Use f to penalize deviations in angle.
|
virtual |
Overload this method to specify the inputs.
Reimplemented from IMP::kernel::ParticleInputs.
|
virtual |
Compute the score and the derivative if needed as in evaluate_index(). but may terminate the computation early if the total score is higher than max.
Implementations for these are provided by the IMP_SINGLETON_SCORE() macro.
Reimplemented from IMP::kernel::SingletonScore.
Definition at line 45 of file ImproperSingletonScore.h.
|
virtual |
Compute the score and the derivative if needed.
evaluate the score and the derivative if needed over vt
m | the model of vt |
vt | the index in m of an object of type Particle |
da | a derivative accumulator that reweighting computed derivatives. If nullptr, derivatives will not be computed |
Reimplemented from IMP::kernel::SingletonScore.
|
virtual |
Compute the score and the derivative if needed over a set.
evaluate the score and the derivative if needed over a set of objects in o
m | the model of o |
o | objects of type Particle, specified by index |
da | a derivative accumulator that reweighting computed derivatives. If nullptr, derivatives will not be computed |
lower_bound | index of first item in o to evaluate |
upper_bound | index of last item in o to evaluate |
Reimplemented from IMP::kernel::SingletonScore.
Definition at line 45 of file ImproperSingletonScore.h.
|
virtual |
Get information about the module and version of the object.
Reimplemented from IMP::base::Object.
Definition at line 46 of file ImproperSingletonScore.h.