Public Member Functions | |
ConvexHullPathFinder (const fhicl::ParameterSet &) | |
Constructor. More... | |
~ConvexHullPathFinder () | |
Destructor. More... | |
void | configure (fhicl::ParameterSet const &pset) override |
void | initializeHistograms (art::TFileDirectory &) override |
Interface for initializing histograms if they are desired Note that the idea is to put hisgtograms in a subfolder. More... | |
void | ModifyClusters (reco::ClusterParametersList &) const override |
Scan an input collection of clusters and modify those according to the specific implementing algorithm. More... | |
float | getTimeToExecute () const override |
If monitoring, recover the time to execute a particular function. More... | |
Public Member Functions inherited from lar_cluster3d::IClusterModAlg | |
virtual | ~IClusterModAlg () noexcept=default |
Virtual Destructor. More... | |
virtual void | configure (const fhicl::ParameterSet &)=0 |
Interface for configuring the particular algorithm tool. More... | |
Private Types | |
using | HitOrderTuple = std::tuple< float, float, reco::ProjectedPoint > |
using | HitOrderTupleList = std::list< HitOrderTuple > |
using | MinMaxPoints = std::pair< reco::ProjectedPoint, reco::ProjectedPoint > |
using | MinMaxPointPair = std::pair< MinMaxPoints, MinMaxPoints > |
using | KinkTuple = std::tuple< int, reco::ConvexHullKinkTuple, HitOrderTupleList, HitOrderTupleList > |
using | KinkTupleVec = std::vector< KinkTuple > |
Definition at line 38 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 90 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 91 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 126 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 127 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 120 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 119 of file ConvexHullPathFinder_tool.cc.
|
explicit |
Constructor.
pset |
Definition at line 181 of file ConvexHullPathFinder_tool.cc.
lar_cluster3d::ConvexHullPathFinder::~ConvexHullPathFinder | ( | ) |
|
private |
Definition at line 1017 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 650 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 718 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 878 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 980 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 1078 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 1264 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 615 of file ConvexHullPathFinder_tool.cc.
|
override |
Definition at line 195 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 1212 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 1289 of file ConvexHullPathFinder_tool.cc.
|
inlineoverridevirtual |
If monitoring, recover the time to execute a particular function.
Implements lar_cluster3d::IClusterModAlg.
Definition at line 74 of file ConvexHullPathFinder_tool.cc.
|
overridevirtual |
Interface for initializing histograms if they are desired Note that the idea is to put hisgtograms in a subfolder.
TFileDirectory | - the folder to store the hists in |
Implements lar_cluster3d::IClusterModAlg.
Definition at line 210 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 527 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 573 of file ConvexHullPathFinder_tool.cc.
|
overridevirtual |
Scan an input collection of clusters and modify those according to the specific implementing algorithm.
clusterParametersList | A list of cluster objects (parameters from associated hits) |
Top level interface for algorithm to consider pairs of clusters from the input list and determine if they are consistent with each other and, therefore, should be merged. This is done by looking at the PCA for each cluster and looking at the projection of the primary axis along the vector connecting their centers.
Implements lar_cluster3d::IClusterModAlg.
Definition at line 249 of file ConvexHullPathFinder_tool.cc.
|
private |
|
private |
Definition at line 846 of file ConvexHullPathFinder_tool.cc.
|
private |
Use PCA to try to find path in cluster.
clusterParameters | The given cluster parameters object to try to split |
clusterParametersList | The list of clusters |
Definition at line 349 of file ConvexHullPathFinder_tool.cc.
|
private |
Tools.
Algorithm to do 3D space point clustering
Definition at line 177 of file ConvexHullPathFinder_tool.cc.
|
private |
Angle to declare a kink in convex hull calc.
Definition at line 142 of file ConvexHullPathFinder_tool.cc.
|
private |
Min hit separation to conisder in convex hull.
Definition at line 143 of file ConvexHullPathFinder_tool.cc.
|
private |
FHICL parameters.
Definition at line 138 of file ConvexHullPathFinder_tool.cc.
|
private |
Histogram definitions.
Definition at line 149 of file ConvexHullPathFinder_tool.cc.
|
private |
Minimum ratio of eigen 0 to 1 to continue breaking.
Definition at line 141 of file ConvexHullPathFinder_tool.cc.
|
private |
Minimum gap size to break at gaps.
Definition at line 140 of file ConvexHullPathFinder_tool.cc.
|
private |
Minimum size for a "tiny" cluster.
Definition at line 139 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 178 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 169 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 170 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 168 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 167 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 165 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 164 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 163 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 171 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 161 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 162 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 166 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 172 of file ConvexHullPathFinder_tool.cc.
|
mutableprivate |
Definition at line 144 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 158 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 159 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 155 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 154 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 153 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 157 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 151 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 152 of file ConvexHullPathFinder_tool.cc.
|
private |
Definition at line 156 of file ConvexHullPathFinder_tool.cc.