CandidateVertexCreationAlgorithm::Algorithm class. More...
#include <CandidateVertexCreationAlgorithm.h>
 
  
 | Public Member Functions | |
| CandidateVertexCreationAlgorithm () | |
| Default constructor.  More... | |
| Private Types | |
| typedef std::unordered_map < const pandora::Cluster *, pandora::CartesianPointVector > | ClusterToSpacepointsMap | 
| Private Member Functions | |
| pandora::StatusCode | Run () | 
| void | SelectClusters (pandora::ClusterVector &clusterVectorU, pandora::ClusterVector &clusterVectorV, pandora::ClusterVector &clusterVectorW) | 
| Select a subset of input clusters (contained in the input list names) for processing in this algorithm.  More... | |
| void | CreateEndpointCandidates (const pandora::ClusterVector &clusterVector1, const pandora::ClusterVector &clusterVector2) const | 
| Create candidate vertex positions by comparing pairs of cluster end positions.  More... | |
| void | CreateEndpointVertex (const pandora::CartesianVector &position1, const pandora::HitType hitType1, const TwoDSlidingFitResult &fitResult2) const | 
| Create a candidate vertex position, using an end-point position from one cluster and sliding fit to a second cluster.  More... | |
| void | CreateCrossingCandidates (const pandora::ClusterVector &clusterVectorU, const pandora::ClusterVector &clusterVectorV, const pandora::ClusterVector &clusterVectorW) const | 
| Extrapolate 2D clusters, find where they cross, and match crossing points between views to create vertex candidates.  More... | |
| void | FindCrossingPoints (const pandora::ClusterVector &clusterVector, pandora::CartesianPointVector &crossingPoints) const | 
| Identify where (extrapolated) clusters plausibly cross in 2D.  More... | |
| void | GetSpacepoints (const pandora::Cluster *const pCluster, pandora::CartesianPointVector &spacePoints) const | 
| Get a list of spacepoints representing cluster 2D hit positions and extrapolated positions.  More... | |
| void | FindCrossingPoints (const pandora::CartesianPointVector &spacepoints1, const pandora::CartesianPointVector &spacepoints2, pandora::CartesianPointVector &crossingPoints) const | 
| Identify where (extrapolated) clusters plausibly cross in 2D.  More... | |
| void | CreateCrossingVertices (const pandora::CartesianPointVector &crossingPoints1, const pandora::CartesianPointVector &crossingPoints2, const pandora::HitType hitType1, const pandora::HitType hitType2, unsigned int &nCrossingCandidates) const | 
| Attempt to create candidate vertex positions, using 2D crossing points in 2 views.  More... | |
| void | AddInputVertices () const | 
| Add candidate vertices from any input vertices.  More... | |
| void | AddToSlidingFitCache (const pandora::Cluster *const pCluster) | 
| Creates a 2D sliding fit of a cluster and stores it for later use.  More... | |
| const TwoDSlidingFitResult & | GetCachedSlidingFitResult (const pandora::Cluster *const pCluster) const | 
| Get a sliding fit result from the algorithm cache.  More... | |
| void | TidyUp () | 
| Clear relevant algorithm member variables between events.  More... | |
| pandora::StatusCode | ReadSettings (const pandora::TiXmlHandle xmlHandle) | 
| Private Attributes | |
| pandora::StringVector | m_inputClusterListNames | 
| The list of cluster list names.  More... | |
| std::string | m_inputVertexListName | 
| The list name for existing candidate vertices.  More... | |
| std::string | m_outputVertexListName | 
| The name under which to save the output vertex list.  More... | |
| bool | m_replaceCurrentVertexList | 
| Whether to replace the current vertex list with the output list.  More... | |
| unsigned int | m_slidingFitWindow | 
| The layer window for the sliding linear fits.  More... | |
| TwoDSlidingFitResultMap | m_slidingFitResultMap | 
| The sliding fit result map.  More... | |
| unsigned int | m_minClusterCaloHits | 
| The min number of hits in base cluster selection method.  More... | |
| float | m_minClusterLengthSquared | 
| The min length (squared) in base cluster selection method.  More... | |
| float | m_chiSquaredCut | 
| The chi squared cut (accept only 3D vertex positions with values below cut)  More... | |
| bool | m_enableEndpointCandidates | 
| Whether to create endpoint-based candidates.  More... | |
| float | m_maxEndpointXDiscrepancy | 
| The max cluster endpoint discrepancy.  More... | |
| bool | m_enableCrossingCandidates | 
| Whether to create crossing vertex candidates.  More... | |
| unsigned int | m_nMaxCrossingCandidates | 
| The max number of crossing candidates to create.  More... | |
| float | m_maxCrossingXDiscrepancy | 
| The max cluster endpoint discrepancy.  More... | |
| unsigned int | m_extrapolationNSteps | 
| Number of extrapolation steps, at each end of cluster, of specified size.  More... | |
| float | m_extrapolationStepSize | 
| The extrapolation step size in cm.  More... | |
| float | m_maxCrossingSeparationSquared | 
| The separation (squared) between spacepoints below which a crossing can be identified.  More... | |
| float | m_minNearbyCrossingDistanceSquared | 
| The minimum allowed distance between identified crossing positions.  More... | |
| bool | m_reducedCandidates | 
| Whether to reduce the number of candidates.  More... | |
| float | m_selectionCutFactorMax | 
| Maximum factor to multiply the base cluster selection cuts.  More... | |
| float | m_nClustersPassingMaxCutsPar | 
| Parameter for number of clusters passing the max base cluster selection cuts.  More... | |
CandidateVertexCreationAlgorithm::Algorithm class.
Definition at line 23 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
Definition at line 134 of file CandidateVertexCreationAlgorithm.h.
| lar_content::CandidateVertexCreationAlgorithm::CandidateVertexCreationAlgorithm | ( | ) | 
Default constructor.
Definition at line 23 of file CandidateVertexCreationAlgorithm.cc.
| 
 | private | 
Add candidate vertices from any input vertices.
Definition at line 386 of file CandidateVertexCreationAlgorithm.cc.
| 
 | private | 
Creates a 2D sliding fit of a cluster and stores it for later use.
| pCluster | address of the relevant cluster | 
Definition at line 414 of file CandidateVertexCreationAlgorithm.cc.
| 
 | private | 
Extrapolate 2D clusters, find where they cross, and match crossing points between views to create vertex candidates.
| clusterVectorU | the clusters in the u view | 
| clusterVectorV | the clusters in the v view | 
| clusterVectorW | the clusters in the w view | 
Definition at line 239 of file CandidateVertexCreationAlgorithm.cc.
| 
 | private | 
Attempt to create candidate vertex positions, using 2D crossing points in 2 views.
| crossingPoints1 | the crossing points in view 1 | 
| crossingPoints2 | the crossing points in view 2 | 
| hitType1 | the hit type of crossing points 1 | 
| hitType2 | the hit type of crossing points 2 | 
| nCrossingCandidates | to count the number of crossing candidates created | 
Definition at line 351 of file CandidateVertexCreationAlgorithm.cc.
| 
 | private | 
Create candidate vertex positions by comparing pairs of cluster end positions.
| clusterVector1 | the clusters in view 1 | 
| clusterVector1 | the clusters in view 2 | 
Definition at line 173 of file CandidateVertexCreationAlgorithm.cc.
| 
 | private | 
Create a candidate vertex position, using an end-point position from one cluster and sliding fit to a second cluster.
| position1 | an end-point position for the first cluster | 
| hitType1 | the hit type of the first cluster | 
| fitResult2 | the two dimensional sliding fit result for the second cluster | 
Definition at line 201 of file CandidateVertexCreationAlgorithm.cc.
| 
 | private | 
Identify where (extrapolated) clusters plausibly cross in 2D.
| clusterVector | the input clusters | 
| crossingPoints | to receive the 2D crossing points | 
| 
 | private | 
Identify where (extrapolated) clusters plausibly cross in 2D.
| spacepoints1 | space points for cluster 1 | 
| spacepoints2 | space points for cluster 2 | 
| crossingPoints | to receive the list of plausible 2D crossing points | 
| 
 | private | 
Get a sliding fit result from the algorithm cache.
| pCluster | address of the relevant cluster | 
Definition at line 425 of file CandidateVertexCreationAlgorithm.cc.
| 
 | private | 
Get a list of spacepoints representing cluster 2D hit positions and extrapolated positions.
| pCluster | address of the cluster | 
| spacePoints | to receive the list of spacepoints | 
Definition at line 279 of file CandidateVertexCreationAlgorithm.cc.
| 
 | private | 
Definition at line 444 of file CandidateVertexCreationAlgorithm.cc.
| 
 | private | 
Definition at line 46 of file CandidateVertexCreationAlgorithm.cc.
| 
 | private | 
Select a subset of input clusters (contained in the input list names) for processing in this algorithm.
| clusterVectorU | to receive the selected clusters in the u view | 
| clusterVectorV | to receive the selected clusters in the v view | 
| clusterVectorW | to receive the selected clusters in the w view | 
Definition at line 91 of file CandidateVertexCreationAlgorithm.cc.
| 
 | private | 
Clear relevant algorithm member variables between events.
Definition at line 437 of file CandidateVertexCreationAlgorithm.cc.
| 
 | private | 
The chi squared cut (accept only 3D vertex positions with values below cut)
Definition at line 146 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
Whether to create crossing vertex candidates.
Definition at line 151 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
Whether to create endpoint-based candidates.
Definition at line 148 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
Number of extrapolation steps, at each end of cluster, of specified size.
Definition at line 154 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
The extrapolation step size in cm.
Definition at line 155 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
The list of cluster list names.
Definition at line 136 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
The list name for existing candidate vertices.
Definition at line 137 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
The separation (squared) between spacepoints below which a crossing can be identified.
Definition at line 156 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
The max cluster endpoint discrepancy.
Definition at line 153 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
The max cluster endpoint discrepancy.
Definition at line 149 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
The min number of hits in base cluster selection method.
Definition at line 144 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
The min length (squared) in base cluster selection method.
Definition at line 145 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
The minimum allowed distance between identified crossing positions.
Definition at line 157 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
Parameter for number of clusters passing the max base cluster selection cuts.
Definition at line 161 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
The max number of crossing candidates to create.
Definition at line 152 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
The name under which to save the output vertex list.
Definition at line 138 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
Whether to reduce the number of candidates.
Definition at line 159 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
Whether to replace the current vertex list with the output list.
Definition at line 139 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
Maximum factor to multiply the base cluster selection cuts.
Definition at line 160 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
The sliding fit result map.
Definition at line 142 of file CandidateVertexCreationAlgorithm.h.
| 
 | private | 
The layer window for the sliding linear fits.
Definition at line 141 of file CandidateVertexCreationAlgorithm.h.
 1.8.5
 1.8.5