IMP Reference Guide  2.7.0 The Integrative Modeling Platform
IMP::atom::ImproperSingletonScore Class Reference

Score the improper dihedral based on a UnaryFunction,. More...

#include <IMP/atom/ImproperSingletonScore.h>

Inheritance diagram for IMP::atom::ImproperSingletonScore:

## Detailed Description

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.

Note
The multiplicity of the the Dihedral is not used.

Definition at line 35 of file ImproperSingletonScore.h.

## Public Member Functions

ImproperSingletonScore (UnaryFunction *f)
Use f to penalize deviations in angle. More...

virtual ModelObjectsTemp do_get_inputs (Model *m, const ParticleIndexes &pis) const
Overload this method to specify the inputs. More...

double evaluate_if_good_indexes (Model *m, const ParticleIndexes &p, DerivativeAccumulator *da, double max, unsigned int lower_bound, unsigned int upper_bound) const

virtual double evaluate_index (Model *m, ParticleIndex p, DerivativeAccumulator *da) const
Compute the score and the derivative if needed. More...

double evaluate_indexes (Model *m, const 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::VersionInfo get_version_info () const
Get information about the module and version of the object. More...

Public Member Functions inherited from IMP::SingletonScore
SingletonScore (std::string name="SingletonScore %1%")

Restraints create_current_decomposition (Model *m, ParticleIndex vt) const

virtual double evaluate_if_good_index (Model *m, ParticleIndex vt, DerivativeAccumulator *da, double max) const
Compute the score and the derivative if needed, only if "good". More...

Public Member Functions inherited from IMP::ParticleInputs
ModelObjectsTemp get_inputs (Model *m, const ParticleIndexes &pis) const
Get the ModelObjects read when the given list of particles is used. More...

Public Member Functions inherited from IMP::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)

Public Types inherited from IMP::SingletonScore
typedef ParticleArgument

typedef ParticleIndex IndexArgument

typedef SingletonModifier Modifier

typedef ParticlePassArgument

typedef ParticleIndex PassIndexArgument

Protected Member Functions inherited from IMP::SingletonScore
virtual Restraints do_create_current_decomposition (Model *m, ParticleIndex vt) const
Override this to return your own decomposition. More...

Protected Member Functions inherited from IMP::Object
Object (std::string name)
Construct an object with the given name. More...

virtual void do_destroy ()

## Constructor & Destructor Documentation

 IMP::atom::ImproperSingletonScore::ImproperSingletonScore ( UnaryFunction * f )

Use f to penalize deviations in angle.

## Member Function Documentation

 virtual ModelObjectsTemp IMP::atom::ImproperSingletonScore::do_get_inputs ( Model * m, const ParticleIndexes & pis ) const
virtual

Overload this method to specify the inputs.

Implements IMP::ParticleInputs.

 double IMP::atom::ImproperSingletonScore::evaluate_if_good_indexes ( Model * m, const ParticleIndexes & o, DerivativeAccumulator * da, double max, unsigned int lower_bound, unsigned int upper_bound ) const
virtual

Compute the score and the derivative if needed over a set, only if "good". This functions similarly to evaluate_indexes(), but may terminate the computation early if the total score is higher than max.

Returns
the score if score<= max or some arbitrary value > max otherwise.
Note
Implementations for these are provided by the IMP_SINGLETON_SCORE() macro.

Reimplemented from IMP::SingletonScore.

Definition at line 45 of file ImproperSingletonScore.h.

 virtual double IMP::atom::ImproperSingletonScore::evaluate_index ( Model * m, ParticleIndex vt, DerivativeAccumulator * da ) const
virtual

Compute the score and the derivative if needed.

Parameters
 m the model of vt vt the index in m of an object of type Particle da a DerivativeAccumulator that weights computed derivatives. If nullptr, derivatives will not be computed.

Implements IMP::SingletonScore.

 double IMP::atom::ImproperSingletonScore::evaluate_indexes ( Model * m, const ParticleIndexes & o, DerivativeAccumulator * da, unsigned int lower_bound, unsigned int upper_bound ) const
virtual

Compute the score and the derivative if needed over a set.

Parameters
 m the model of o o objects of type Particle, specified by index da a derivative accumulator that weights 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
Note
Implementations for these are provided by the IMP_SINGLETON_SCORE() macro.

Reimplemented from IMP::SingletonScore.

Definition at line 45 of file ImproperSingletonScore.h.

 virtual ::IMP::VersionInfo IMP::atom::ImproperSingletonScore::get_version_info ( ) const
virtual

Get information about the module and version of the object.

Reimplemented from IMP::Object.

Definition at line 46 of file ImproperSingletonScore.h.

The documentation for this class was generated from the following file: