IMP
2.0.1
The Integrative Modeling Platform
|
RMSD clustering. More...
#include <IMP/multifit/RMSDClustering.h>
Public Member Functions | |
RMSDClustering (float bin_size=3.) | |
void | cluster (float max_dist, const std::vector< TransT > &input_trans, std::vector< TransT > &output_trans) |
cluster transformations | |
void | prepare (const ParticlesTemp &ps) |
prepare for clustering | |
void | set_bin_size (float bin_size) |
Protected Member Functions | |
void | build_full_graph (const Hash3 &h, const std::vector< TransformationRecord * > &recs, float max_dist, Graph &g) |
void | build_graph (const Hash3::PointList &inds, const std::vector< TransformationRecord * > &recs, float max_dist, Graph &g) |
virtual void | clean (std::vector< TransformationRecord * > *&records) |
Remove transformations which are not valid. | |
int | cluster_graph (Graph &g, const std::vector< TransformationRecord * > &recs, float max_dist) |
virtual int | exhaustive_clustering (float max_dist, std::vector< TransformationRecord * > &recs) |
int | fast_clustering (float max_dist, std::vector< TransformationRecord * > &recs) |
virtual float | get_squared_distance (const TransT &trans1, const TransT &trans2) |
Protected Attributes | |
float | bin_size_ |
algebra::Vector3D | centroid_ |
bool | is_fast_ |
bool | is_ready_ |
Particles | ps_ |
atom::RMSDCalculator | rmsd_calc_ |
core::XYZs | xyzs_ |
/note Iteratively joins pairs of close transformations. The algorithm first clusters transformations for which the transformed centroids are close (fall into the same bin in a hash). Then, all clusters are globally reclustered. /note TransT should implement the functions: join_into() add a transformation to the current cluster and possibly updates the representative transformation for the cluster get_score() that returns the score (higher score is better) update_score() that updates the score of the cluster according to a new member get_representative_transformation() a function that returns the the representative transformation for a cluster
Definition at line 40 of file RMSDClustering.h.
IMP::multifit::RMSDClustering< TransT >::RMSDClustering | ( | float | bin_size = 3. | ) |
[in] | bin_size | the radius of the bins of the hash differ with at most this value |
Definition at line 92 of file RMSDClustering.h.
|
protectedvirtual |
returns the RMSD between two transformations with respect to the stored points
Definition at line 139 of file RMSDClustering.h.