RMSD Clustering module
Submodules
Module contents
RMSD clustering module.
This module takes in input the RMSD matrix calculated in the previous step and performs a hierarchical clustering procedure on it, leveraging scipy routines for this purpose.
Essentially, the procedure amounts at lumping the input models in a progressively coarser hierarchy of clusters, called the dendrogram.
Four parameters can be defined in this context:
linkage: governs the way clusters are merged together in the creation of the dendrogram
criterion: defines the prescription to cut the dendrogram and obtain the desired clusters
n_clusters: number of desired clusters (if criterion is maxclust).
clust_cutoff: value of distance that separates distinct clusters (if criterion is
distance)min_population : set the minimum number of models that should be present in a cluster to consider it. If criterion is maxclust, the value is ignored.
This module passes the path to the RMSD matrix to the next step of the workflow through the rmsd_matrix.json file. Note that this does not mean several clustrmsd modules can be chained (possibly with different parameters) on the same RMSD matrix within a single continuous workflow run - doing so leads to a mismatched model-cluster mapping. To re-cluster an already computed matrix with different parameters without recomputing it, use haddock3-re or the –restart option instead.
Note that the output models are reordered by cluster rank and the rank within each cluster; this means that the order of output models of this cluster will be different than the input - this may be relevant for modules executed downstream.
For more details about this module, please refer to the haddock3 user manual
- class haddock.modules.analysis.clustrmsd.HaddockModule(order: int, path: Path, initial_params: Path | str = PosixPath('/opt/hostedtoolcache/Python/3.10.20/x64/lib/python3.10/site-packages/haddock/modules/analysis/clustrmsd/defaults.yaml'))[source]
Bases:
BaseHaddockModuleHADDOCK3 module for clustering with RMSD.