IMP Reference Guide
2.17.0
The Integrative Modeling Platform
|
Represents a scoring function on the model. More...
#include "IMP/ScoringFunction.h"
Represents a scoring function on the model.
A call to the evaluate() method prompts the following events:
Definition at line 41 of file ScoringFunction.h.
Public Types | |
typedef std::pair< double, bool > | ScoreIsGoodPair |
Public Member Functions | |
ScoringFunction (Model *m, std::string name) | |
virtual Restraints | create_restraints () const =0 |
Return a set of restraints equivalent to this scoring function. More... | |
virtual ModelObjectsTemp | do_get_outputs () const override |
double | evaluate (bool derivatives) |
Evaluate and return the score. More... | |
double | evaluate_if_below (bool derivatives, double max) |
double | evaluate_if_good (bool derivatives) |
double | evaluate_moved (bool derivatives, const ParticleIndexes &moved_pis, const ParticleIndexes &reset_pis) |
Score when some particles have moved. More... | |
double | evaluate_moved_if_below (bool derivatives, const ParticleIndexes &moved_pis, const ParticleIndexes &reset_pis, double max) |
double | evaluate_moved_if_good (bool derivatives, const ParticleIndexes &moved_pis, const ParticleIndexes &reset_pis) |
bool | get_had_good_score () const |
double | get_last_score () const |
returns the score that was calculated in the last evaluate call More... | |
Public Member Functions inherited from IMP::ModelObject | |
ModelObject (Model *m, std::string name) | |
bool | get_has_dependencies () const |
Return whether this object has dependencies computed. More... | |
bool | get_has_required_score_states () const |
Return whether score states are computed. More... | |
ModelObjectsTemp | get_inputs () const |
ModelObjectsTemps | get_interactions () const |
Get the interacting sets induced by this ModelObject. More... | |
Model * | get_model () const |
ModelObjectsTemp | get_outputs () const |
const ScoreStatesTemp & | get_required_score_states () const |
Get the score states that are ancestors of this in the dependency graph. More... | |
void | set_has_dependencies (bool tf) |
Either invalidate the dependencies or ensure they are correct. More... | |
void | set_has_required_score_states (bool tf) |
Compute the required score states. More... | |
Public Member Functions inherited from IMP::Object | |
virtual void | clear_caches () |
CheckLevel | get_check_level () const |
LogLevel | get_log_level () const |
virtual VersionInfo | get_version_info () const |
Get information about the module and version of the object. More... | |
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) |
virtual std::string | get_type_name () const |
Protected Member Functions | |
virtual void | do_add_score_and_derivatives (ScoreAccumulator sa, const ScoreStatesTemp &ss)=0 |
virtual void | do_add_score_and_derivatives_moved (ScoreAccumulator sa, const ParticleIndexes &moved_pis, const ParticleIndexes &reset_pis, const ScoreStatesTemp &ss) |
Score when only some particles have moved. More... | |
ScoreAccumulator | get_score_accumulator (bool deriv) |
ScoreAccumulator | get_score_accumulator_if_below (bool deriv, double max) |
ScoreAccumulator | get_score_accumulator_if_good (bool deriv) |
Protected Member Functions inherited from IMP::ModelObject | |
virtual ModelObjectsTemp | do_get_inputs () const =0 |
virtual ModelObjectsTemps | do_get_interactions () const |
virtual void | handle_set_has_required_score_states (bool) |
Protected Member Functions inherited from IMP::Object | |
Object (std::string name) | |
Construct an object with the given name. More... | |
virtual void | do_destroy () |
|
pure virtual |
Return a set of restraints equivalent to this scoring function.
Implemented in IMP::core::IncrementalScoringFunction.
|
protectedpure virtual |
Do the actual work of computing the score and (optional) derivatives. The list of all score states that must be updated is passed.
Implemented in IMP::core::IncrementalScoringFunction.
|
protectedvirtual |
Score when only some particles have moved.
Definition at line 67 of file ScoringFunction.h.
|
overridevirtual |
Get any Particle, Container or other ModelObjects changed by this during evaluation. This is only useful for ScoreStates, at the moment.
Implements IMP::ModelObject.
Definition at line 89 of file ScoringFunction.h.
double IMP::ScoringFunction::evaluate | ( | bool | derivatives | ) |
Evaluate and return the score.
derivatives | if true, updates the derivatives of the scoring function |
double IMP::ScoringFunction::evaluate_moved | ( | bool | derivatives, |
const ParticleIndexes & | moved_pis, | ||
const ParticleIndexes & | reset_pis | ||
) |
Score when some particles have moved.
This should behave identically to evaluate() but may be more efficient if it can skip restraint terms that involve unchanged particles.
moved_pis | Particles that have moved since the last scoring function evaluation. |
reset_pis | Particles that have moved, but back to the positions they had at the last-but-one evaluation (e.g. due to a rejected Monte Carlo move). |
bool IMP::ScoringFunction::get_had_good_score | ( | ) | const |
Return true if the last evaluate satisfied all the restraint thresholds.
Definition at line 132 of file ScoringFunction.h.
double IMP::ScoringFunction::get_last_score | ( | ) | const |
returns the score that was calculated in the last evaluate call
Definition at line 135 of file ScoringFunction.h.