IMP Reference Guide
develop.4390929e3e,2024/11/12
The Integrative Modeling Platform
|
Object used to hold a set of restraints. More...
#include "IMP/RestraintSet.h"
Object used to hold a set of restraints.
RestraintSets allow one to define a tree of restraints and to weight various restraints. Upon evaluation, all of the restraints in RestraintSets that have been added to the model are evaluated using the provided weight (weights are multiplicative when RestraintSets are nested).
If the weight is 0, the restraints are not evaluated.
Talk to Daniel if you want to inherit from RestraintSet.
Definition at line 41 of file RestraintSet.h.
Public Member Functions | |
RestraintSet (Model *m, double weight, const std::string &name="RestraintSet %1%") | |
Create an empty set that is registered with the model. More... | |
RestraintSet (Model *m, const std::string &name="RestraintSet %1%") | |
Create an empty set that is registered with the model. More... | |
RestraintSet (const RestraintsTemp &rs, double weight, const std::string &name="RestraintSet %1%") | |
Create a set that is registered with the model. More... | |
double | get_last_score () const override |
std::pair< RestraintsTemp, RestraintSetsTemp > | get_non_sets_and_sets () const |
Divide the list of contained restraints into non-sets and sets. More... | |
virtual std::string | get_type_name () const override |
virtual ::IMP::VersionInfo | get_version_info () const override |
Get information about the module and version of the object. More... | |
double | unprotected_evaluate (DerivativeAccumulator *da) const override |
Return the unweighted score for the restraint. More... | |
Public Member Functions inherited from IMP::Restraint | |
Restraint (Model *m, std::string name) | |
Create a restraint and register it with the model. More... | |
Restraint () | |
Default constructor. More... | |
Restraint * | create_current_decomposition () const |
Decompose this restraint into constituent terms for the current conf. More... | |
Restraint * | create_decomposition () const |
Decompose this restraint into constituent terms. More... | |
virtual ScoringFunction * | create_scoring_function (double weight=1.0, double max=NO_MAX) const |
Create a scoring function with only this restraint. More... | |
virtual RestraintInfo * | get_dynamic_info () const |
bool | get_is_aggregate () const |
Return whether this restraint wraps a number of other restraints. More... | |
double | get_last_last_score () const |
Get the unweighted score from the last-but-one time it was evaluated. More... | |
double | get_score () const |
virtual RestraintInfo * | get_static_info () const |
bool | get_was_good () const |
double | evaluate (bool calc_derivs) const |
double | evaluate_moved (bool calc_derivs, const ParticleIndexes &moved_pis, const ParticleIndexes &reset_pis) const |
double | evaluate_moved_if_below (bool calc_derivatives, const ParticleIndexes &moved_pis, const ParticleIndexes &reset_pis, double max) const |
double | evaluate_moved_if_good (bool calc_derivatives, const ParticleIndexes &moved_pis, const ParticleIndexes &reset_pis) const |
double | evaluate_if_good (bool calc_derivatives) const |
double | evaluate_if_below (bool calc_derivatives, double max) const |
virtual double | unprotected_evaluate_moved (DerivativeAccumulator *da, const ParticleIndexes &moved_pis, const ParticleIndexes &reset_pis) const |
Return the unweighted score, taking moving particles into account. More... | |
virtual double | unprotected_evaluate_if_good (DerivativeAccumulator *da, double max) const |
virtual double | unprotected_evaluate_if_below (DerivativeAccumulator *da, double max) const |
The function calling this will treat any score >= max as bad. More... | |
virtual double | unprotected_evaluate_moved_if_below (DerivativeAccumulator *da, const ParticleIndexes &moved_pis, const ParticleIndexes &reset_pis, double max) const |
virtual double | unprotected_evaluate_moved_if_good (DerivativeAccumulator *da, const ParticleIndexes &moved_pis, const ParticleIndexes &reset_pis, double max) const |
void | set_weight (Float weight) |
Float | get_weight () const |
double | get_maximum_score () const |
void | set_maximum_score (double s) |
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 |
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) |
Methods to control the nested Restraint objects | |
This container manages a set of Restraint objects. To manipulate the stored set use the methods below. | |
list | restraints |
A Python list of Restraints More... | |
void | remove_restraint (Restraint *d) |
void | remove_restraints (const Restraints &d) |
void | set_restraints (const Restraints &ps) |
void | set_restraints_order (const Restraints &objs) |
unsigned int | add_restraint (Restraint *obj) |
void | add_restraints (const Restraints &objs) |
void | clear_restraints () |
unsigned int | get_number_of_restraints () const |
bool | get_has_restraints () |
Restraint * | get_restraint (unsigned int i) const |
Restraints | get_restraints () const |
void | erase_restraint (unsigned int i) |
void | reserve_restraints (unsigned int sz) |
Additional Inherited Members | |
Protected Member Functions inherited from IMP::Restraint | |
virtual void | do_add_score_and_derivatives (ScoreAccumulator sa) const |
virtual void | do_add_score_and_derivatives_moved (ScoreAccumulator sa, const ParticleIndexes &moved_pis, const ParticleIndexes &reset_pis) const |
virtual Restraints | do_create_current_decomposition () const |
virtual Restraints | do_create_decomposition () const |
ModelObjectsTemp | do_get_outputs () const override |
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 () |
Protected Attributes inherited from IMP::Restraint | |
bool | is_aggregate_ |
IMP::RestraintSet::RestraintSet | ( | Model * | m, |
double | weight, | ||
const std::string & | name = "RestraintSet %1%" |
||
) |
Create an empty set that is registered with the model.
IMP::RestraintSet::RestraintSet | ( | Model * | m, |
const std::string & | name = "RestraintSet %1%" |
||
) |
Create an empty set that is registered with the model.
IMP::RestraintSet::RestraintSet | ( | const RestraintsTemp & | rs, |
double | weight, | ||
const std::string & | name = "RestraintSet %1%" |
||
) |
Create a set that is registered with the model.
|
overridevirtual |
Return the (unweighted) score for this restraint last time it was evaluated.
Reimplemented from IMP::Restraint.
std::pair<RestraintsTemp, RestraintSetsTemp> IMP::RestraintSet::get_non_sets_and_sets | ( | ) | const |
Divide the list of contained restraints into non-sets and sets.
|
overridevirtual |
Get information about the module and version of the object.
Reimplemented from IMP::Object.
Reimplemented in IMP::pmi::CrossLinkRestraintSet, and IMP::isd::LogWrapper.
Definition at line 68 of file RestraintSet.h.
|
overridevirtual |
Return the unweighted score for the restraint.
Reimplemented from IMP::Restraint.
list IMP::RestraintSet::restraints |
A Python list of Restraints
Definition at line 77 of file RestraintSet.h.