Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
LArPcaHelper.h
Go to the documentation of this file.
1
8#ifndef LAR_PCA_HELPER_H
9#define LAR_PCA_HELPER_H 1
10
12
13#include <vector>
14
15namespace lar_content
16{
17
22{
23public:
25 typedef std::vector<pandora::CartesianVector> EigenVectors;
26 typedef std::pair<const pandora::CartesianVector, double> WeightedPoint;
27 typedef std::vector<WeightedPoint> WeightedPointVector;
28
37 template <typename T>
38 static void RunPca(const T &t, pandora::CartesianVector &centroid, EigenValues &outputEigenValues, EigenVectors &outputEigenVectors);
39
48 static void RunPca(const WeightedPointVector &pointVector, pandora::CartesianVector &centroid, EigenValues &outputEigenValues,
49 EigenVectors &outputEigenVectors);
50};
51
52} // namespace lar_content
53
54#endif // #ifndef LAR_PCA_HELPER_H
Header file for the cartesian vector class.
LArPcaHelper class.
std::vector< WeightedPoint > WeightedPointVector
std::vector< pandora::CartesianVector > EigenVectors
pandora::CartesianVector EigenValues
std::pair< const pandora::CartesianVector, double > WeightedPoint
static void RunPca(const T &t, pandora::CartesianVector &centroid, EigenValues &outputEigenValues, EigenVectors &outputEigenVectors)
Run principal component analysis using input calo hits (TPC_VIEW_U,V,W or TPC_3D; all treated as 3D p...
CartesianVector class.