IMP logo
IMP Reference Guide  develop.5de2a9ba5d,2024/02/24
The Integrative Modeling Platform
IMP::score_functor::Score Struct Reference

A functor for computing a distance based score for D particles. More...

#include <IMP/score_functor/Score.h>

+ Inheritance diagram for IMP::score_functor::Score:

Detailed Description

A functor for computing a distance based score for D particles.

Definition at line 20 of file Score.h.

Public Member Functions

ModelObjectsTemp get_inputs (Model *m, const ParticleIndexes &pis) const
 
template<unsigned int D>
bool get_is_trivially_zero (Model *m, const Array< D, ParticleIndex > &p, double squared_distance) const
 
template<unsigned int D>
double get_maximum_range (Model *m, const Array< D, ParticleIndex > &p) const
 
template<unsigned int D>
double get_score (Model *m, const Array< D, ParticleIndex > &p, double distance) const
 Return the score at the passed feature size (eg distance). More...
 
template<unsigned int D>
DerivativePair get_score_and_derivative (Model *m, const Array< D, ParticleIndex > &p, double distance) const
 Return the score and derivative at the passed feature size (eg distance). More...
 
void show (std::ostream &) const
 

Member Function Documentation

ModelObjectsTemp IMP::score_functor::Score::get_inputs ( Model m,
const ParticleIndexes pis 
) const

Return the set of particles read when particle p is part of the passed tuples. The default implementation provided here just returns the list containing p.

Definition at line 72 of file Score.h.

+ Here is the call graph for this function:

template<unsigned int D>
bool IMP::score_functor::Score::get_is_trivially_zero ( Model m,
const Array< D, ParticleIndex > &  p,
double  squared_distance 
) const

Return true if the function can be easily determined to be zero at the passed squared distance. The default implementation provided here returns false.

Note
That it is squared distance, not distance.

Definition at line 52 of file Score.h.

template<unsigned int D>
double IMP::score_functor::Score::get_maximum_range ( Model m,
const Array< D, ParticleIndex > &  p 
) const

Return an upper bound on the distance at which the score can be non-zero. The default implementation provided here returns infinity.

Definition at line 63 of file Score.h.

template<unsigned int D>
double IMP::score_functor::Score::get_score ( Model m,
const Array< D, ParticleIndex > &  p,
double  distance 
) const

Return the score at the passed feature size (eg distance).

The involved particle indexes are passed along.

Precondition
get_is_trivially_zero() or get_maximum_range() has been called and get_is_trivially_zero() is false.
template<unsigned int D>
DerivativePair IMP::score_functor::Score::get_score_and_derivative ( Model m,
const Array< D, ParticleIndex > &  p,
double  distance 
) const

Return the score and derivative at the passed feature size (eg distance).

The derivative is for the feature decreasing.

Precondition
get_is_trivially_zero() or get_maximum_range() has been called and get_is_trivially_zero() is false.

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