LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
ClusterParamsBuilder class definiton. More...
Public Member Functions | |
ClusterParamsBuilder (fhicl::ParameterSet const &pset) | |
Constructor. More... | |
virtual | ~ClusterParamsBuilder () |
Destructor. More... | |
void | configure (const fhicl::ParameterSet &) override |
void | BuildClusterInfo (reco::ClusterParametersList &clusterParametersList) const override |
Given the results of running DBScan, format the clusters so that they can be easily transferred back to the larsoft world. More... | |
void | FillClusterParams (reco::ClusterParameters &, reco::Hit2DToClusterMap &, double, double) const override |
Fill the cluster parameters (expose to outside world for case of splitting/merging clusters) More... | |
Private Member Functions | |
bool | keepThisCluster (reco::ClusterParameters &, const reco::Hit2DToClusterMap &) const |
Is a cluster "good" and worth keeping? More... | |
void | storeThisCluster (reco::ClusterParameters &, reco::Hit2DToClusterMap &) const |
void | removeUsedHitsFromMap (reco::ClusterParameters &, reco::HitPairListPtr &, reco::Hit2DToClusterMap &) const |
Private Attributes | |
size_t | m_clusterMinHits |
Data members to follow. More... | |
double | m_clusterMinUniqueFraction |
double | m_clusterMaxLostFraction |
PrincipalComponentsAlg | m_pcaAlg |
ClusterParamsBuilder class definiton.
Definition at line 28 of file ClusterParamsBuilder_tool.cc.
|
explicit |
Constructor.
pset |
Definition at line 99 of file ClusterParamsBuilder_tool.cc.
References configure().
|
virtual |
|
overridevirtual |
Given the results of running DBScan, format the clusters so that they can be easily transferred back to the larsoft world.
hitPairClusterMap | map between view and a list of 3D hits |
clusterParametersList | a container for our candidate 3D clusters |
rejectionFraction | Used for determine "hit purity" when rejecting clusters The last two parameters are passed through to the FillClusterParams method |
Given a list of a list of candidate cluster hits, build these out into the intermediate 3D cluster objects to pass to the final stage
Note that this routine will also reject unworthy clusters, in particular those that share too many hits with other clusters. The criteria is that a larger cluster (more hits) will be superior to a smaller one, if the smaller one shares too many hits with the larger it is zapped. *** THIS IS AN AREA FOR CONTINUED STUDY ***
Implements lar_cluster3d::IClusterParametersBuilder.
Definition at line 120 of file ClusterParamsBuilder_tool.cc.
References keepThisCluster(), m_clusterMinHits, and storeThisCluster().
|
overridevirtual |
Implements lar_cluster3d::IClusterParametersBuilder.
Definition at line 111 of file ClusterParamsBuilder_tool.cc.
References fhicl::ParameterSet::get(), m_clusterMaxLostFraction, m_clusterMinHits, and m_clusterMinUniqueFraction.
Referenced by ClusterParamsBuilder().
|
overridevirtual |
Fill the cluster parameters (expose to outside world for case of splitting/merging clusters)
ClusterParameters | The cluster parameters container to be modified |
Hit2DToClusterMap | Map to keep track of 2D hit to cluster association |
double | minimum fraction of unique hits |
double | maximum fraction of "lost" hits |
Given a list of hits fill out the remaining parameters for this cluster and evaluate the candidate's worthiness to achieve stardom in the event display
Implements lar_cluster3d::IClusterParametersBuilder.
Definition at line 290 of file ClusterParamsBuilder_tool.cc.
References reco::ClusterParameters::getClusterParams(), reco::ClusterParameters::getFullPCA(), reco::ClusterParameters::getHit2DToHit3DListMap(), reco::ClusterParameters::getHit3DToEdgeMap(), reco::ClusterParameters::getHitPairListPtr(), reco::ClusterParameters::getSkeletonPCA(), reco::PrincipalComponents::getSvdOK(), art::left(), m_pcaAlg, lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_3D(), reco::ClusterHit3D::REJECTEDHIT, art::right(), reco::ClusterParameters::UpdateParameters(), and reco::ClusterHit2D::USED.
|
private |
Is a cluster "good" and worth keeping?
ClusterParameters | The cluster parameters of cluster to be checked |
Hit2DToClusterMap | Map to keep track of 2D hit to cluster association |
Definition at line 202 of file ClusterParamsBuilder_tool.cc.
References util::empty(), reco::ClusterParameters::getHitPairListPtr(), and util::size().
Referenced by BuildClusterInfo().
|
private |
|
private |
Definition at line 256 of file ClusterParamsBuilder_tool.cc.
References reco::ClusterParameters::getFullPCA(), reco::ClusterParameters::getHitPairListPtr(), reco::ClusterParameters::getSkeletonPCA(), reco::PrincipalComponents::getSvdOK(), m_pcaAlg, lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_3D(), reco::ClusterParameters::UpdateParameters(), and reco::ClusterHit2D::USED.
Referenced by BuildClusterInfo().
|
private |
Definition at line 91 of file ClusterParamsBuilder_tool.cc.
Referenced by configure().
|
private |
Data members to follow.
Definition at line 89 of file ClusterParamsBuilder_tool.cc.
Referenced by BuildClusterInfo(), and configure().
|
private |
Definition at line 90 of file ClusterParamsBuilder_tool.cc.
Referenced by configure().
|
private |
Definition at line 93 of file ClusterParamsBuilder_tool.cc.
Referenced by FillClusterParams(), and storeThisCluster().