2#ifndef STORMM_CLUSTERING_H
3#define STORMM_CLUSTERING_H
6#include "Random/random.h"
7#include "Structure/local_arrangement.h"
8#include "Structure/structure_enumerators.h"
9#include "cluster_manager.h"
10#include "series_ops.h"
15using random::Xoshiro256ppGenerator;
16using structure::BoundaryCondition;
17using structure::imageCoordinates;
18using structure::imageValue;
19using structure::ImagingMethod;
24template <
typename Tdata,
typename Tcalc>
25Tcalc clusteringDistance(
const Tdata* data_points,
size_t pt, Tdata centroid,
26 Tcalc scale_factor = 1.0,
27 BoundaryCondition boundaries = BoundaryCondition::ISOLATED,
70template <
typename Tdata,
typename Tcalc>
72 Tcalc scale_factor = 1.0,
73 BoundaryCondition boundaries = BoundaryCondition::ISOLATED, Tcalc range = 0.0);
86template <
typename Tdata,
typename Tcalc>
88 int clusters, Tcalc scale_factor = 1.0,
89 BoundaryCondition boundaries = BoundaryCondition::ISOLATED, Tcalc range = 0.0);
91template <
typename Tdata,
typename Tcalc>
93 Tcalc scale_factor = 1.0, BoundaryCondition boundaries = BoundaryCondition::ISOLATED,
96template <
typename Tdata,
typename Tcalc>
98 Tcalc scale_factor = 1.0, BoundaryCondition boundaries = BoundaryCondition::ISOLATED,
101template <
typename Tdata,
typename Tcalc>
103 Tcalc scale_factor = 1.0,
104 BoundaryCondition boundaries = BoundaryCondition::ISOLATED,
107template <
typename Tdata,
typename Tcalc>
109 Tcalc scale_factor = 1.0,
110 BoundaryCondition boundaries = BoundaryCondition::ISOLATED,
113template <
typename Tdata,
typename Tcalc>
115 Tcalc scale_factor = 1.0,
116 BoundaryCondition boundaries = BoundaryCondition::ISOLATED,
123#include "clustering.tpp"
An evolution of GpuBuffer in pmemd.cuda, the Composite array has elements that are accessible from ei...
Definition hybrid.h:202
The "Xoshiro256++" random number generator. While not cryptographically useful, it is a rock-solid ra...
Definition random.h:218
An object to track the clusters into which a set of data points can be sorted.
Definition cluster_manager.h:62