IMP logo
IMP Reference Guide  develop.98ef8da184,2024/04/23
The Integrative Modeling Platform
IMP::npctransport::LinearInteraction Class Reference

#include <IMP/npctransport/functor_linear_distance_pair_scores_typedefs.h>

+ Inheritance diagram for IMP::npctransport::LinearInteraction:

Detailed Description

A soft linear attractive / repulsive score between two spheres. The score is 0 if the spheres are beyond the attractive range. Within the attractive range, the score decreases linearly (= attraction) with slope k_attr_ until the spheres touch. Once the spheres begin to penetrate each other, the score rises linearly with slope k_rep_ (= repulsion), though it may be negative for small penetration.

Definition at line 37 of file functor_linear_distance_pair_scores_typedefs.h.

Public Member Functions

 LinearInteraction (double krep, double attr_range, double kattr)
 
template<unsigned int D>
bool get_is_trivially_zero (Model *, const Array< D, ParticleIndex > &, double squared_distance) const
 
template<unsigned int D>
double get_maximum_range (Model *, const Array< D, ParticleIndex > &) const
 
template<unsigned int D>
double get_score (Model *m, const Array< D, ParticleIndex > &pp, double distance) const
 
template<unsigned int D>
DerivativePair get_score_and_derivative (Model *m, const Array< D, ParticleIndex > &p, double distance) const
 
void show (std::ostream &out=std::cout) const
 
- Public Member Functions inherited from IMP::score_functor::LinearLowerBound
 LinearLowerBound (double k)
 
template<unsigned int D>
bool get_is_trivially_zero (Model *, const Array< D, ParticleIndex > &, double squared_distance) const
 
float get_k () const
 
template<unsigned int D>
double get_maximum_range (Model *, const Array< D, ParticleIndex > &) const
 
template<unsigned int D>
double get_score (Model *, const Array< D, ParticleIndex > &, double distance) const
 
template<unsigned int D>
DerivativePair get_score_and_derivative (Model *, const Array< D, ParticleIndex > &, double distance) const
 
- Public Member Functions inherited from IMP::score_functor::Score
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
 

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