IMP  2.1.0
The Integrative Modeling Platform
IMP::score_functor::DistancePairScore< DistanceScoreT > Class Template Reference

Create efficient distance-based pair scores. More...

#include <IMP/score_functor/DistancePairScore.h>

+ Inheritance diagram for IMP::score_functor::DistancePairScore< DistanceScoreT >:

Public Types

typedef DistanceScoreT DistanceScore
 
- Public Types inherited from IMP::kernel::PairScore
typedef ParticlePair Argument
 
typedef ParticleIndexPair IndexArgument
 
typedef PairModifier Modifier
 
typedef const ParticlePairPassArgument
 
typedef const ParticleIndexPairPassIndexArgument
 

Public Member Functions

 DistancePairScore (const DistanceScore &t0, std::string name="FunctorDistancePairScore %1%")
 
virtual kernel::ModelObjectsTemp do_get_inputs (kernel::Model *m, const kernel::ParticleIndexes &pis) const
 
double evaluate_if_good_indexes (kernel::Model *m, const ParticleIndexPairs &p, DerivativeAccumulator *da, double max, unsigned int lower_bound, unsigned int upper_bound) const
 
virtual double evaluate_index (kernel::Model *m, const kernel::ParticleIndexPair &pip, DerivativeAccumulator *da) const
 Compute the score and the derivative if needed.
 
double evaluate_indexes (kernel::Model *m, const ParticleIndexPairs &p, DerivativeAccumulator *da, unsigned int lower_bound, unsigned int upper_bound) const
 
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.
 
- Public Member Functions inherited from IMP::kernel::PairScore
 PairScore (std::string name="PairScore %1%")
 
Restraints create_current_decomposition (kernel::Model *m, const ParticleIndexPair &vt) const
 
virtual double evaluate (const ParticlePair &vt, DerivativeAccumulator *da) const
 Compute the score and the derivative if needed. More...
 
virtual double evaluate_if_good_index (kernel::Model *m, const ParticleIndexPair &vt, DerivativeAccumulator *da, double max) const
 Compute the score and the derivative if needed.
 
- 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 ()
 
virtual void do_destroy ()
 
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

- Protected Member Functions inherited from IMP::kernel::PairScore
virtual Restraints do_create_current_decomposition (kernel::Model *m, const ParticleIndexPair &vt) const
 
- Protected Member Functions inherited from IMP::base::Object
 Object (std::string name)
 Construct an object with the given name. More...
 
 Object ()
 

Detailed Description

template<class DistanceScoreT>
class IMP::score_functor::DistancePairScore< DistanceScoreT >

This class allows one to create efficient distance-based pair scores in C++ by simply writing a pair of small functors (DistanceScore and DistanceDerivative) that do the scoring.

See Also
DistanceScore
Note
we can add arguments to get the list of input particles and containers later, for now the former is assumed to just be the input and the latter empty.
Examples:
atom/dope_and_excluded_volume.cpp.

Definition at line 30 of file score_functor/DistancePairScore.h.

Member Function Documentation

template<class DistanceScoreT>
virtual kernel::ModelObjectsTemp IMP::score_functor::DistancePairScore< DistanceScoreT >::do_get_inputs ( kernel::Model m,
const kernel::ParticleIndexes pis 
) const
virtual

Overload this method to specify the inputs.

Reimplemented from IMP::kernel::ParticleInputs.

template<class DistanceScoreT>
double IMP::score_functor::DistancePairScore< DistanceScoreT >::evaluate_if_good_indexes ( kernel::Model m,
const ParticleIndexPairs o,
DerivativeAccumulator da,
double  max,
unsigned int  lower_bound,
unsigned int  upper_bound 
) const
virtual

Implementations for these are provided by the IMP_PAIR_SCORE() macro.

Reimplemented from IMP::kernel::PairScore.

Definition at line 45 of file score_functor/DistancePairScore.h.

template<class DistanceScoreT>
double IMP::score_functor::DistancePairScore< DistanceScoreT >::evaluate_indexes ( kernel::Model m,
const ParticleIndexPairs o,
DerivativeAccumulator da,
unsigned int  lower_bound,
unsigned int  upper_bound 
) const
virtual

Implementations for these are provided by the IMP_PAIR_SCORE() macro.

Reimplemented from IMP::kernel::PairScore.

Definition at line 45 of file score_functor/DistancePairScore.h.


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