LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
#include "Cluster3D.h"
Public Types | |
using | EigenValues = Eigen::Vector3f |
using | EigenVectors = Eigen::Matrix3f |
Public Member Functions | |
PrincipalComponents () | |
PrincipalComponents (bool ok, int nHits, const EigenValues &eigenValues, const EigenVectors &eigenVecs, const Eigen::Vector3f &avePos, const float aveHitDoca=9999.) | |
bool | getSvdOK () const |
int | getNumHitsUsed () const |
const EigenValues & | getEigenValues () const |
const EigenVectors & | getEigenVectors () const |
const Eigen::Vector3f & | getAvePosition () const |
float | getAveHitDoca () const |
void | flipAxis (size_t axis) |
void | setAveHitDoca (double doca) const |
Private Attributes | |
bool | m_svdOK |
SVD Decomposition was successful. More... | |
int | m_numHitsUsed |
Number of hits in the decomposition. More... | |
EigenValues | m_eigenValues |
Eigen values from SVD decomposition. More... | |
EigenVectors | m_eigenVectors |
The three principle axes. More... | |
Eigen::Vector3f | m_avePosition |
Average position of hits fed to PCA. More... | |
double | m_aveHitDoca |
Average doca of hits used in PCA. More... | |
Friends | |
std::ostream & | operator<< (std::ostream &o, const PrincipalComponents &a) |
bool | operator< (const PrincipalComponents &a, const PrincipalComponents &b) |
Definition at line 217 of file Cluster3D.h.
using reco::PrincipalComponents::EigenValues = Eigen::Vector3f |
Definition at line 219 of file Cluster3D.h.
using reco::PrincipalComponents::EigenVectors = Eigen::Matrix3f |
Definition at line 220 of file Cluster3D.h.
reco::PrincipalComponents::PrincipalComponents | ( | ) |
Definition at line 209 of file Cluster3D.cxx.
reco::PrincipalComponents::PrincipalComponents | ( | bool | ok, |
int | nHits, | ||
const EigenValues & | eigenValues, | ||
const EigenVectors & | eigenVecs, | ||
const Eigen::Vector3f & | avePos, | ||
const float | aveHitDoca = 9999. |
||
) |
Definition at line 218 of file Cluster3D.cxx.
void reco::PrincipalComponents::flipAxis | ( | size_t | axis | ) |
Definition at line 232 of file Cluster3D.cxx.
References m_eigenVectors.
Referenced by lar_cluster3d::ClusterPathFinder::breakIntoTinyBits(), lar_cluster3d::VoronoiPathFinder::breakIntoTinyBits(), lar_cluster3d::ConvexHullPathFinder::completeCandidateCluster(), lar_cluster3d::ParallelHitsSeedFinderAlg::findTrackSeeds(), lar_cluster3d::PCASeedFinderAlg::findTrackSeeds(), lar_cluster3d::PCASeedFinderAlg::getHitsAtEnd(), and lar_cluster3d::VoronoiPathFinder::makeCandidateCluster().
|
inline |
Definition at line 245 of file Cluster3D.h.
Referenced by lar_cluster3d::HoughSeedFinderAlg::buildSeed(), lar_cluster3d::Cluster3D::ConvertToArtOutput(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis(), lar_cluster3d::Cluster3D::ProduceArtClusters(), and lar_cluster3d::Cluster3D::splitClustersWithHough().
|
inline |
Definition at line 244 of file Cluster3D.h.
Referenced by lar_cluster3d::ClusterPathFinder::buildConvexHull(), lar_cluster3d::VoronoiPathFinder::buildConvexHull(), lar_cluster3d::ConvexHullPathFinder::buildConvexHull(), lar_cluster3d::MSTPathFinder::buildConvexHull(), lar_cluster3d::HoughSeedFinderAlg::buildSeed(), lar_cluster3d::ClusterPathFinder::buildVoronoiDiagram(), lar_cluster3d::VoronoiPathFinder::buildVoronoiDiagram(), lar_cluster3d::Cluster3D::ConvertToArtOutput(), lar_cluster3d::MinSpanTreeAlg::FindBestPathInCluster(), lar_cluster3d::MSTPathFinder::FindBestPathInCluster(), lar_cluster3d::HoughSeedFinderAlg::findHoughClusters(), lar_cluster3d::ClusterMergeAlg::linearClusters(), lar_cluster3d::Cluster3D::MakeAndSavePCAPoints(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_2D(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_calc2DDocas(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_calc3DDocas(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_reject3DOutliers(), and lar_cluster3d::Cluster3D::ProduceArtClusters().
|
inline |
Definition at line 242 of file Cluster3D.h.
Referenced by lar_cluster3d::Cluster3D::aParallelHitsCluster(), lar_cluster3d::VoronoiPathFinder::breakIntoTinyBits(), lar_cluster3d::Cluster3D::ConvertToArtOutput(), lar_cluster3d::MinSpanTreeAlg::FindBestPathInCluster(), lar_cluster3d::MSTPathFinder::FindBestPathInCluster(), lar_cluster3d::HoughSeedFinderAlg::findHoughClusters(), lar_cluster3d::HoughSeedFinderAlg::findTrackHits(), lar_cluster3d::PCASeedFinderAlg::findTrackSeeds(), lar_cluster3d::HoughSeedFinderAlg::findTrackSeeds(), lar_cluster3d::Cluster3D::findTrackSeeds(), lar_cluster3d::ClusterMergeAlg::linearClusters(), lar_cluster3d::ConvexHullPathFinder::makeCandidateCluster(), lar_cluster3d::VoronoiPathFinder::makeCandidateCluster(), lar_cluster3d::ClusterMergeAlg::ModifyClusters(), lar_cluster3d::ConvexHullPathFinder::ModifyClusters(), lar_cluster3d::VoronoiPathFinder::ModifyClusters(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_calc2DDocas(), lar_cluster3d::Cluster3D::ProduceArtClusters(), lar_cluster3d::ConvexHullPathFinder::subDivideCluster(), and lar_cluster3d::VoronoiPathFinder::subDivideCluster().
|
inline |
Definition at line 243 of file Cluster3D.h.
Referenced by lar_cluster3d::Cluster3D::aParallelHitsCluster(), lar_cluster3d::ClusterPathFinder::breakIntoTinyBits(), lar_cluster3d::VoronoiPathFinder::breakIntoTinyBits(), lar_cluster3d::ClusterPathFinder::buildConvexHull(), lar_cluster3d::VoronoiPathFinder::buildConvexHull(), lar_cluster3d::ConvexHullPathFinder::buildConvexHull(), lar_cluster3d::MSTPathFinder::buildConvexHull(), lar_cluster3d::HoughSeedFinderAlg::buildSeed(), lar_cluster3d::ClusterPathFinder::buildVoronoiDiagram(), lar_cluster3d::VoronoiPathFinder::buildVoronoiDiagram(), lar_cluster3d::MinSpanTreeAlg::CheckHitSorting(), lar_cluster3d::ConvexHullPathFinder::completeCandidateCluster(), lar_cluster3d::Cluster3D::ConvertToArtOutput(), lar_cluster3d::MinSpanTreeAlg::FindBestPathInCluster(), lar_cluster3d::MSTPathFinder::FindBestPathInCluster(), lar_cluster3d::HoughSeedFinderAlg::findHoughClusters(), lar_cluster3d::ParallelHitsSeedFinderAlg::findTrackSeeds(), lar_cluster3d::PCASeedFinderAlg::findTrackSeeds(), lar_cluster3d::PCASeedFinderAlg::getHitsAtEnd(), lar_cluster3d::ClusterMergeAlg::linearClusters(), lar_cluster3d::Cluster3D::MakeAndSavePCAPoints(), lar_cluster3d::ConvexHullPathFinder::makeCandidateCluster(), lar_cluster3d::VoronoiPathFinder::makeCandidateCluster(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_2D(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_calc2DDocas(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_calc3DDocas(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_reject3DOutliers(), lar_cluster3d::Cluster3D::ProduceArtClusters(), lar_cluster3d::ConvexHullPathFinder::subDivideCluster(), and lar_cluster3d::VoronoiPathFinder::subDivideCluster().
|
inline |
Definition at line 241 of file Cluster3D.h.
Referenced by lar_cluster3d::Cluster3D::ConvertToArtOutput(), and lar_cluster3d::Cluster3D::ProduceArtClusters().
|
inline |
Definition at line 240 of file Cluster3D.h.
Referenced by lar_cluster3d::ClusterPathFinder::breakIntoTinyBits(), lar_cluster3d::VoronoiPathFinder::breakIntoTinyBits(), lar_cluster3d::HoughSeedFinderAlg::buildSeed(), lar_cluster3d::MinSpanTreeAlg::CheckHitSorting(), lar_cluster3d::ConvexHullPathFinder::completeCandidateCluster(), lar_cluster3d::Cluster3D::ConvertToArtOutput(), lar_cluster3d::ClusterParamsBuilder::FillClusterParams(), lar_cluster3d::MinSpanTreeAlg::FindBestPathInCluster(), lar_cluster3d::MSTPathFinder::FindBestPathInCluster(), lar_cluster3d::HoughSeedFinderAlg::findHitGaps(), lar_cluster3d::ParallelHitsSeedFinderAlg::findTrackSeeds(), lar_cluster3d::HoughSeedFinderAlg::findTrackSeeds(), lar_cluster3d::PCASeedFinderAlg::getHitsAtEnd(), lar_cluster3d::VoronoiPathFinder::makeCandidateCluster(), lar_cluster3d::ClusterMergeAlg::mergeClusters(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis(), lar_cluster3d::Cluster3D::ProduceArtClusters(), lar_cluster3d::Cluster3D::splitClustersWithHough(), and lar_cluster3d::ClusterParamsBuilder::storeThisCluster().
|
inline |
Definition at line 248 of file Cluster3D.h.
References recob::operator<(), and recob::operator<<().
Referenced by lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_calc2DDocas(), and lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_calc3DDocas().
|
friend |
Definition at line 262 of file Cluster3D.cxx.
|
friend |
Definition at line 239 of file Cluster3D.cxx.
|
mutableprivate |
Average doca of hits used in PCA.
Definition at line 230 of file Cluster3D.h.
Referenced by reco::operator<<().
|
private |
Average position of hits fed to PCA.
Definition at line 229 of file Cluster3D.h.
Referenced by reco::operator<<().
|
private |
Eigen values from SVD decomposition.
Definition at line 227 of file Cluster3D.h.
Referenced by reco::operator<(), and reco::operator<<().
|
private |
The three principle axes.
Definition at line 228 of file Cluster3D.h.
Referenced by flipAxis(), and reco::operator<<().
|
private |
Number of hits in the decomposition.
Definition at line 226 of file Cluster3D.h.
Referenced by reco::operator<<().
|
private |
SVD Decomposition was successful.
Definition at line 225 of file Cluster3D.h.
Referenced by reco::operator<(), and reco::operator<<().