IMP
2.2.0
The Integrative Modeling Platform
|
#include <IMP/misc/MetricClosePairsFinder.h>
Public Member Functions | |
MetricClosePairsFinder (LowerBound lb, UpperBound ub, std::string name="MetricClosePairsFinder%1%") | |
virtual kernel::ModelObjectsTemp | do_get_inputs (kernel::Model *m, const kernel::ParticleIndexes &pis) const |
virtual IntPairs | get_close_pairs (const algebra::BoundingBox3Ds &) const |
virtual IntPairs | get_close_pairs (const algebra::BoundingBox3Ds &, const algebra::BoundingBox3Ds &) const |
virtual kernel::ParticleIndexPairs | get_close_pairs (kernel::Model *m, const kernel::ParticleIndexes &pc) const |
virtual kernel::ParticleIndexPairs | get_close_pairs (kernel::Model *m, const kernel::ParticleIndexes &pca, const kernel::ParticleIndexes &pcb) 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::core::ClosePairsFinder | |
ClosePairsFinder (std::string name) | |
kernel::ParticlePairsTemp | get_close_pairs (const kernel::ParticlesTemp &pc) const |
kernel::ParticlePairsTemp | get_close_pairs (const kernel::ParticlesTemp &pca, const kernel::ParticlesTemp &pcb) const |
virtual void | set_distance (double d) |
double | get_distance () const |
IMP_LIST (public, PairFilter, pair_filter, PairPredicate *, PairPredicates) | |
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::base::Object | |
Object (std::string name) | |
Construct an object with the given name. More... | |
A close pairs finder that only depends on metrics on the underlying particles. As a result, it should be usable with weird metrics (eg ones that incude symmetry).
The LowerBound template should be a functors that bounds the distance between two particles. For example the LowerBound distance between two balls is the center distance minus the radii, and the upperbound distance is the center distance plus the radii. They signature should be double operator()(kernel::Model *m, const kernel::ParticleIndexPair &pip) const
The algorithm works by building an index used sqrt(n)
of the n
input particles, assigning each particle to a bucked based on the closest index particle, and then checking for close pairs in buckets such that they can be close enough.
If we need something more involved, we can try this paper.
Definition at line 42 of file MetricClosePairsFinder.h.
|
virtual |
Overload this method to specify the inputs.
Reimplemented from IMP::kernel::ParticleInputs.
Definition at line 186 of file MetricClosePairsFinder.h.
|
virtual |
Not supported.
Implements IMP::core::ClosePairsFinder.
Definition at line 159 of file MetricClosePairsFinder.h.
|
virtual |
Not supported.
Implements IMP::core::ClosePairsFinder.
Definition at line 164 of file MetricClosePairsFinder.h.