IMP Reference Guide
2.20.0
The Integrative Modeling Platform
|
Base class for smoothing nonbonded interactions as a function of distance. More...
#include <IMP/atom/smoothing_functions.h>
Base class for smoothing nonbonded interactions as a function of distance.
The class is given the score (and optionally its first derivative) at a given distance and returns a smoothed form of the score. Smoothing functions are used to avoid a discontinuity in the scoring function and/or its derivatives at the cutoff distance (the distance threshold used by IMP::core::ClosePairsFinder), as this can lead to nonphysical motions of the system. They are used by physical scoring functions that drop off slowly with distance, such as CoulombPairScore, in combination with a ClosePairsFinder.
Smoothing functions usually offset the score by a constant value (a shift function) or smooth it from its normal value to zero over a defined range (a switch function, such as ForceSwitch).
Definition at line 33 of file smoothing_functions.h.
Public Member Functions | |
virtual double | operator() (double score, double distance) const =0 |
Smooth the score at a given distance. More... | |
virtual DerivativePair | operator() (double score, double deriv, double distance) const =0 |
Smooth the score and its first derivative at a given distance. 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 |
Additional Inherited Members | |
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 |
Smooth the score at a given distance.
Implemented in IMP::atom::ForceSwitch.
|
pure virtual |
Smooth the score and its first derivative at a given distance.
Implemented in IMP::atom::ForceSwitch.