Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
lar_content::CheatingVertexSelectionAlgorithm Class Reference

CheatingVertexSelectionAlgorithm class. More...

#include "CheatingVertexSelectionAlgorithm.h"

Inheritance diagram for lar_content::CheatingVertexSelectionAlgorithm:
Collaboration diagram for lar_content::CheatingVertexSelectionAlgorithm:

Public Types

typedef std::map< const pandora::Vertex *const, VertexFeatureInfoVertexFeatureInfoMap
 
typedef std::vector< VertexScoreVertexScoreList
 
typedef std::vector< SlidingFitDataSlidingFitDataList
 
typedef std::vector< ShowerClusterShowerClusterList
 
typedef std::map< pandora::HitType, const pandora::ClusterList & > ClusterListMap
 Map array of cluster lists for passing to tools.
 
typedef std::map< pandora::HitType, const SlidingFitDataListSlidingFitDataListMap
 Map of sliding fit data lists for passing to tools.
 
typedef std::map< pandora::HitType, const ShowerClusterListShowerClusterListMap
 Map of shower cluster lists for passing to tools.
 
typedef std::map< pandora::HitType, const std::reference_wrapper< HitKDTree2D > > KDTreeMap
 Map array of hit kd trees for passing to tools.
 
typedef MvaFeatureTool< const VertexSelectionBaseAlgorithm *const, const pandora::Vertex *const, const SlidingFitDataListMap &, const ClusterListMap &, const KDTreeMap &, const ShowerClusterListMap &, const float, float & > VertexFeatureTool
 The base type for the vertex feature tools.
 

Public Member Functions

const std::string & GetType () const
 Get the type.
 
const std::string & GetInstanceName () const
 Get the instance name.
 
const PandoraGetPandora () const
 Get the associated pandora instance.
 

Protected Types

typedef std::pair< pandora::CartesianVector, pandora::CartesianVectorClusterEndPoints
 
typedef std::map< const pandora::Cluster *const, ClusterEndPointsClusterEndPointsMap
 
typedef std::vector< LArMvaHelper::MvaFeatureVectorFeatureListVector
 
typedef std::vector< pandora::VertexVectorVectorOfVertexVectors
 
typedef KDTreeLinkerAlgo< const pandora::CaloHit *, 2 > HitKDTree2D
 
typedef KDTreeNodeInfoT< const pandora::CaloHit *, 2 > HitKDNode2D
 
typedef std::vector< HitKDNode2DHitKDNode2DList
 
typedef std::unordered_map< const pandora::CaloHit *, const pandora::Cluster * > HitToClusterMap
 

Protected Member Functions

void CalculateShowerClusterList (const pandora::ClusterList &inputClusterList, ShowerClusterList &showerClusterList) const
 Calculate the shower cluster map for a cluster list.
 
void GetShowerLikeClusterEndPoints (const pandora::ClusterList &clusterList, pandora::ClusterList &showerLikeClusters, ClusterEndPointsMap &clusterEndPointsMap) const
 Add the endpoints of any shower-like clusters to the map.
 
void PopulateKdTree (const pandora::ClusterList &clusterList, HitKDTree2D &kdTree, HitToClusterMap &hitToClusterMap) const
 Populate kd tree with information about hits in a provided list of clusters.
 
bool AddClusterToShower (const ClusterEndPointsMap &clusterEndPointsMap, pandora::ClusterList &availableShowerLikeClusters, const pandora::Cluster *const pCluster, pandora::ClusterList &showerCluster) const
 Try to add an available cluster to a given shower cluster, using shower clustering approximation.
 
bool AddClusterToShower (HitKDTree2D &kdTree, const HitToClusterMap &hitToClusterMap, pandora::ClusterList &availableShowerLikeClusters, const pandora::Cluster *const pCluster, pandora::ClusterList &showerCluster) const
 Try to add an available cluster to a given shower cluster, using cluster hit positions cached in kd tree.
 
EventFeatureInfo CalculateEventFeatures (const pandora::ClusterList &clusterListU, const pandora::ClusterList &clusterListV, const pandora::ClusterList &clusterListW, const pandora::VertexVector &vertexVector) const
 Calculate the event parameters.
 
void IncrementShoweryParameters (const pandora::ClusterList &clusterList, unsigned int &nShoweryHits, unsigned int &nHits, float &eventEnergy) const
 Increment the showery hit parameters for a cluster list.
 
bool IsClusterShowerLike (const pandora::Cluster *const pCluster) const
 Find whether a cluster is shower-like.
 
void GetLegacyEventShapeFeatures (const pandora::ClusterList &clusterList, float &eventVolume, float &longitudinality) const
 Get the event shape features.
 
void GetEventShapeFeatures (const ClusterListMap &clusterListMap, float &eventArea, float &longitudinality) const
 Get the event shape features.
 
void Get2DSpan (const pandora::ClusterList &clusterList, float &xSpan, float &zSpan) const
 Get the coordinate span in one view.
 
void UpdateSpanCoordinate (const float minPositionCoord, const float maxPositionCoord, pandora::InputFloat &minCoord, pandora::InputFloat &maxCoord) const
 Update the min/max coordinate spans.
 
float GetCoordinateSpan (const pandora::InputFloat &minCoord, const pandora::InputFloat &maxCoord) const
 Get the coordinate span.
 
void AddEventFeaturesToVector (const EventFeatureInfo &eventFeatureInfo, LArMvaHelper::MvaFeatureVector &featureVector) const
 Add the event features to a vector in the correct order.
 
void PopulateVertexFeatureInfoMap (const BeamConstants &beamConstants, const ClusterListMap &clusterListMap, const SlidingFitDataListMap &slidingFitDataListMap, const ShowerClusterListMap &showerClusterListMap, const KDTreeMap &kdTreeMap, const pandora::Vertex *const pVertex, VertexFeatureInfoMap &vertexFeatureInfoMap) const
 Populate the vertex feature info map for a given vertex.
 
void PopulateInitialScoreList (VertexFeatureInfoMap &vertexFeatureInfoMap, const pandora::Vertex *const pVertex, VertexScoreList &initialScoreList) const
 Populate the initial vertex score list for a given vertex.
 
void GetBestRegionVertices (VertexScoreList &initialScoreList, pandora::VertexVector &bestRegionVertices) const
 Get the list of top-N separated vertices.
 
void ProduceTrainingSets (const pandora::VertexVector &vertexVector, const pandora::VertexVector &bestRegionVertices, VertexFeatureInfoMap &vertexFeatureInfoMap, const LArMvaHelper::MvaFeatureVector &eventFeatureList, const KDTreeMap &kdTreeMap) const
 Produce the region and vertex training sets.
 
void CalculateRPhiScores (pandora::VertexVector &vertexVector, VertexFeatureInfoMap &vertexFeatureInfoMap, const KDTreeMap &kdTreeMap) const
 Calculate the r/phi scores for the vertices in a vector, possibly erasing those that fail the fast score test.
 
std::string GetInteractionType () const
 Get the interaction type string.
 
const pandora::VertexProduceTrainingExamples (const pandora::VertexVector &vertexVector, const VertexFeatureInfoMap &vertexFeatureInfoMap, std::bernoulli_distribution &coinFlip, std::mt19937 &generator, const std::string &interactionType, const std::string &trainingOutputFile, const LArMvaHelper::MvaFeatureVector &eventFeatureList, const KDTreeMap &kdTreeMap, const float maxRadius, const bool useRPhi) const
 Produce a set of training examples for a binary classifier.
 
void GetBestVertex (const pandora::VertexVector &vertexVector, const pandora::Vertex *&pBestVertex, float &bestVertexDr) const
 Use the MC information to get the best vertex from a list.
 
void GetSharedFeatures (const pandora::Vertex *const pVertex1, const pandora::Vertex *const pVertex2, const KDTreeMap &kdTreeMap, float &separation, float &axisHits) const
 Calculates the shared features of a pair of vertex candidates.
 
void IncrementSharedAxisValues (const pandora::CartesianVector pos1, const pandora::CartesianVector pos2, HitKDTree2D &kdTree, float &axisHits) const
 Increments the axis hits information for one view.
 
bool IsHitInBox (const pandora::CartesianVector &hitPos, const pandora::CartesianVector &point1, const pandora::CartesianVector &point2, const pandora::CartesianVector &point3, const pandora::CartesianVector &point4) const
 Determines whether a hit lies within the box defined by four other positions.
 
void AddVertexFeaturesToVector (const VertexFeatureInfo &vertexFeatureInfo, LArMvaHelper::MvaFeatureVector &featureVector, const bool useRPhi) const
 Add the vertex features to a vector in the correct order.
 
void AddSharedFeaturesToVector (const VertexSharedFeatureInfo &vertexSharedFeatureInfo, LArMvaHelper::MvaFeatureVector &featureVector) const
 Add the shared features to a vector in the correct order.
 
void PopulateFinalVertexScoreList (const VertexFeatureInfoMap &vertexFeatureInfoMap, const pandora::Vertex *const pFavouriteVertex, const pandora::VertexVector &vertexVector, VertexScoreList &finalVertexScoreList) const
 Populate the final vertex score list using the r/phi score to find the best vertex in the vicinity.
 
virtual void FilterVertexList (const pandora::VertexList *const pInputVertexList, HitKDTree2D &kdTreeU, HitKDTree2D &kdTreeV, HitKDTree2D &kdTreeW, pandora::VertexVector &filteredVertices) const
 Filter the input list of vertices to obtain a reduced number of vertex candidates.
 
virtual void GetBeamConstants (const pandora::VertexVector &vertexVector, BeamConstants &beamConstants) const
 Get the beam score constants for a provided list of candidate vertices.
 
void GetClusterLists (const pandora::StringVector &inputClusterListNames, pandora::ClusterList &clusterListU, pandora::ClusterList &clusterListV, pandora::ClusterList &clusterListW) const
 Get the cluster lists.
 
void CalculateClusterSlidingFits (const pandora::ClusterList &inputClusterList, const unsigned int minClusterCaloHits, const unsigned int slidingFitWindow, SlidingFitDataList &slidingFitDataList) const
 Calculate the cluster sliding fits.
 
float GetBeamDeweightingScore (const BeamConstants &beamConstants, const pandora::Vertex *const pVertex) const
 Get the beam deweighting score for a vertex.
 
bool IsBeamModeOn () const
 Whether algorithm is running in beam mode, assuming neutrinos travel in positive z-direction.
 
float GetVertexEnergy (const pandora::Vertex *const pVertex, const KDTreeMap &kdTreeMap) const
 Calculate the energy of a vertex candidate by summing values from all three planes.
 
float VertexHitEnergy (const pandora::Vertex *const pVertex, const pandora::HitType hitType, HitKDTree2D &kdTree) const
 Finds the energy of the nearest hit to the vertex candidate in this view.
 
virtual StatusCode Initialize ()
 Perform any operations that must occur after reading settings, but before running the process.
 
virtual StatusCode Reset ()
 Perform any operations when pandora is reset, typically at the end of each event.
 
StatusCode RegisterDetails (const Pandora *const pPandora, const std::string &type, const std::string &instanceName)
 Register i) the pandora instance that will run the process and ii) the process type.
 

Protected Attributes

VertexFeatureTool::FeatureToolVector m_featureToolVector
 The feature tool vector.
 
bool m_trainingSetMode
 Whether to train.
 
bool m_allowClassifyDuringTraining
 Whether classification is allowed during training.
 
float m_mcVertexXCorrection
 The correction to the x-coordinate of the MC vertex position.
 
std::string m_trainingOutputFileRegion
 The training output file for the region mva.
 
std::string m_trainingOutputFileVertex
 The training output file for the vertex mva.
 
std::string m_mcParticleListName
 The MC particle list for creating training examples.
 
std::string m_caloHitListName
 The 2D CaloHit list name.
 
pandora::StringVector m_inputClusterListNames
 The list of cluster list names.
 
unsigned int m_minClusterCaloHits
 The min number of hits parameter in the energy score.
 
unsigned int m_slidingFitWindow
 The layer window for the sliding linear fits.
 
float m_minShowerSpineLength
 The minimum length at which all are considered to be tracks.
 
float m_beamDeweightingConstant
 The beam deweighting constant for the initial region score list.
 
float m_localAsymmetryConstant
 The local asymmetry constant for the initial region score list.
 
float m_globalAsymmetryConstant
 The global asymmetry constant for the initial region score list.
 
float m_showerAsymmetryConstant
 The shower asymmetry constant for the initial region score list.
 
float m_energyKickConstant
 The energy kick constant for the initial region score list.
 
float m_showerClusteringDistance
 The shower clustering distance.
 
unsigned int m_minShowerClusterHits
 The minimum number of shower cluster hits.
 
bool m_useShowerClusteringApproximation
 Whether to use the shower clustering distance approximation.
 
float m_regionRadius
 The radius for a vertex region.
 
float m_rPhiFineTuningRadius
 The maximum distance the r/phi tune can move a vertex.
 
float m_maxTrueVertexRadius
 The maximum distance at which a vertex candidate can be considered the 'true' vertex.
 
bool m_useRPhiFeatureForRegion
 Whether to use the r/phi feature for the region vertex.
 
bool m_dropFailedRPhiFastScoreCandidates
 Whether to drop candidates that fail the r/phi fast score test.
 
bool m_testBeamMode
 Test beam mode.
 
bool m_legacyEventShapes
 Whether to use the old event shapes calculation.
 
bool m_legacyVariables
 Whether to only use the old variables.
 
const Pandoram_pPandora
 The pandora object that will run the process.
 
std::string m_type
 The process type.
 
std::string m_instanceName
 The process instance name.
 

Private Member Functions

void GetVertexScoreList (const pandora::VertexVector &vertexVector, const BeamConstants &beamConstants, HitKDTree2D &kdTreeU, HitKDTree2D &kdTreeV, HitKDTree2D &kdTreeW, VertexScoreList &vertexScoreList) const
 Get the vertex score list.
 
pandora::StatusCode ReadSettings (const pandora::TiXmlHandle xmlHandle)
 Read the algorithm settings.
 
pandora::StatusCode Run ()
 Run the algorithm.
 
void InitializeKDTrees (HitKDTree2D &kdTreeU, HitKDTree2D &kdTreeV, HitKDTree2D &kdTreeW) const
 Initialize kd trees with details of hits in algorithm-configured cluster lists.
 
bool IsVertexOnHit (const pandora::Vertex *const pVertex, const pandora::HitType hitType, HitKDTree2D &kdTree) const
 Whether the vertex lies on a hit in the specified view.
 
bool IsVertexInGap (const pandora::Vertex *const pVertex, const pandora::HitType hitType) const
 Whether the vertex lies in a registered gap.
 
void SelectTopScoreVertices (VertexScoreList &vertexScoreList, pandora::VertexList &selectedVertexList) const
 From the top-scoring candidate vertices, select a subset for further investigation.
 
bool AcceptVertexLocation (const pandora::Vertex *const pVertex, const pandora::VertexList &selectedVertexList) const
 Whether to accept a candidate vertex, based on its spatial position in relation to other selected candidates.
 

Static Private Member Functions

static bool SortByVertexZPosition (const pandora::Vertex *const pLhs, const pandora::Vertex *const pRhs)
 Sort vertices by increasing z position.
 

Private Attributes

pandora::StringVector m_inputCaloHitListNames
 The list of calo hit list names.
 
std::string m_outputVertexListName
 The name under which to save the output vertex list.
 
bool m_replaceCurrentVertexList
 Whether to replace the current vertex list with the output list.
 
bool m_beamMode
 Whether to run in beam mode, assuming neutrinos travel in positive z-direction.
 
float m_nDecayLengthsInZSpan
 The number of score decay lengths to use over the course of the vertex z-span.
 
bool m_selectSingleVertex
 Whether to make a final decision and select just one vertex candidate.
 
unsigned int m_maxTopScoreSelections
 Max number of top-scoring vertex candidate to select for output.
 
float m_maxOnHitDisplacement
 Max hit-vertex displacement for declaring vertex to lie on a hit in each view.
 
float m_minCandidateDisplacement
 Ignore other top-scoring candidates located in close proximity to original.
 
float m_minCandidateScoreFraction
 Ignore other top-scoring candidates with score less than a fraction of original.
 
bool m_useDetectorGaps
 Whether to account for registered detector gaps in vertex selection.
 
float m_gapTolerance
 The tolerance to use when querying whether a sampling point is in a gap, units cm.
 
bool m_isEmptyViewAcceptable
 Whether views entirely empty of hits are classed as 'acceptable' for candidate filtration.
 
unsigned int m_minVertexAcceptableViews
 The minimum number of views in which a candidate must sit on/near a hit or in a gap (or view can be empty)
 

Detailed Description

Member Typedef Documentation

◆ ClusterEndPoints

◆ ClusterEndPointsMap

◆ ClusterListMap

Map array of cluster lists for passing to tools.

Definition at line 227 of file VertexSelectionBaseAlgorithm.h.

◆ FeatureListVector

◆ HitKDNode2D

◆ HitKDNode2DList

Definition at line 169 of file TrainedVertexSelectionAlgorithm.h.

◆ HitKDTree2D

◆ HitToClusterMap

typedef std::unordered_map<const pandora::CaloHit *, const pandora::Cluster *> lar_content::TrainedVertexSelectionAlgorithm::HitToClusterMap
protectedinherited

Definition at line 171 of file TrainedVertexSelectionAlgorithm.h.

◆ KDTreeMap

typedef std::map<pandora::HitType, const std::reference_wrapper<HitKDTree2D> > lar_content::VertexSelectionBaseAlgorithm::KDTreeMap
inherited

Map array of hit kd trees for passing to tools.

Definition at line 230 of file VertexSelectionBaseAlgorithm.h.

◆ ShowerClusterList

◆ ShowerClusterListMap

Map of shower cluster lists for passing to tools.

Definition at line 229 of file VertexSelectionBaseAlgorithm.h.

◆ SlidingFitDataList

◆ SlidingFitDataListMap

Map of sliding fit data lists for passing to tools.

Definition at line 228 of file VertexSelectionBaseAlgorithm.h.

◆ VectorOfVertexVectors

◆ VertexFeatureInfoMap

◆ VertexFeatureTool

The base type for the vertex feature tools.

Definition at line 234 of file VertexSelectionBaseAlgorithm.h.

◆ VertexScoreList

Member Function Documentation

◆ AcceptVertexLocation()

bool lar_content::VertexSelectionBaseAlgorithm::AcceptVertexLocation ( const pandora::Vertex *const  pVertex,
const pandora::VertexList selectedVertexList 
) const
privateinherited

Whether to accept a candidate vertex, based on its spatial position in relation to other selected candidates.

Parameters
pVertexthe address of the vertex
selectedVertexListthe selected vertex list
Returns
boolean

Definition at line 314 of file VertexSelectionBaseAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddClusterToShower() [1/2]

bool lar_content::TrainedVertexSelectionAlgorithm::AddClusterToShower ( const ClusterEndPointsMap clusterEndPointsMap,
pandora::ClusterList availableShowerLikeClusters,
const pandora::Cluster *const  pCluster,
pandora::ClusterList showerCluster 
) const
protectedinherited

Try to add an available cluster to a given shower cluster, using shower clustering approximation.

Parameters
clusterEndPointsMapthe map of shower-like cluster endpoints
availableShowerLikeClustersthe list of shower-like clusters still available
pClusterthe cluster in the shower cluster from which to consider distances
showerClusterthe shower cluster
Returns
boolean

Definition at line 167 of file TrainedVertexSelectionAlgorithm.cc.

Here is the caller graph for this function:

◆ AddClusterToShower() [2/2]

bool lar_content::TrainedVertexSelectionAlgorithm::AddClusterToShower ( HitKDTree2D kdTree,
const HitToClusterMap hitToClusterMap,
pandora::ClusterList availableShowerLikeClusters,
const pandora::Cluster *const  pCluster,
pandora::ClusterList showerCluster 
) const
protectedinherited

Try to add an available cluster to a given shower cluster, using cluster hit positions cached in kd tree.

Parameters
kdTreethe kd tree, used purely for efficiency in events with large hit multiplicity
hitToClusterMapthe hit to cluster map, used to interpret kd tree findings
availableShowerLikeClustersthe list of shower-like clusters still available
pClusterthe cluster in the shower cluster from which to consider distances
showerClusterthe shower cluster
Returns
boolean

Definition at line 205 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:

◆ AddEventFeaturesToVector()

void lar_content::TrainedVertexSelectionAlgorithm::AddEventFeaturesToVector ( const EventFeatureInfo eventFeatureInfo,
LArMvaHelper::MvaFeatureVector featureVector 
) const
protectedinherited

Add the event features to a vector in the correct order.

Parameters
eventFeatureInfothe event feature info
featureVectorthe vector of doubles to append

Definition at line 412 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:

◆ AddSharedFeaturesToVector()

void lar_content::TrainedVertexSelectionAlgorithm::AddSharedFeaturesToVector ( const VertexSharedFeatureInfo vertexSharedFeatureInfo,
LArMvaHelper::MvaFeatureVector featureVector 
) const
protectedinherited

Add the shared features to a vector in the correct order.

Parameters
vertexSharedFeatureInfothe shared vertex feature info
featureVectorthe vector of floats to append

Definition at line 829 of file TrainedVertexSelectionAlgorithm.cc.

Here is the caller graph for this function:

◆ AddVertexFeaturesToVector()

void lar_content::TrainedVertexSelectionAlgorithm::AddVertexFeaturesToVector ( const VertexFeatureInfo vertexFeatureInfo,
LArMvaHelper::MvaFeatureVector featureVector,
const bool  useRPhi 
) const
protectedinherited

Add the vertex features to a vector in the correct order.

Parameters
vertexFeatureInfothe vertex feature info
featureVectorthe vector of floats to append
useRPhiwhether to include the r/phi feature

Definition at line 807 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CalculateClusterSlidingFits()

void lar_content::VertexSelectionBaseAlgorithm::CalculateClusterSlidingFits ( const pandora::ClusterList inputClusterList,
const unsigned int  minClusterCaloHits,
const unsigned int  slidingFitWindow,
SlidingFitDataList slidingFitDataList 
) const
protectedinherited

Calculate the cluster sliding fits.

Parameters
inputClusterListthe input cluster list
minClusterCaloHitsthe minimum number of cluster calo hits
slidingFitWindowthe sliding fit window
slidingFitDataListthe list of sliding fits to fill

Definition at line 120 of file VertexSelectionBaseAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CalculateEventFeatures()

TrainedVertexSelectionAlgorithm::EventFeatureInfo lar_content::TrainedVertexSelectionAlgorithm::CalculateEventFeatures ( const pandora::ClusterList clusterListU,
const pandora::ClusterList clusterListV,
const pandora::ClusterList clusterListW,
const pandora::VertexVector vertexVector 
) const
protectedinherited

Calculate the event parameters.

Parameters
clusterListUthe U-view cluster list
clusterListVthe V-view cluster list
clusterListWthe W-view cluster list
vertexVectorthe vector of vertex candidates
Returns
the EventFeatureInfo object

Definition at line 240 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:

◆ CalculateRPhiScores()

void lar_content::TrainedVertexSelectionAlgorithm::CalculateRPhiScores ( pandora::VertexVector vertexVector,
VertexFeatureInfoMap vertexFeatureInfoMap,
const KDTreeMap kdTreeMap 
) const
protectedinherited

Calculate the r/phi scores for the vertices in a vector, possibly erasing those that fail the fast score test.

Parameters
vertexVectorthe vector of vertices
vertexFeatureInfoMapthe vertex feature info map
kdTreeMapthe kd tree map

Definition at line 571 of file TrainedVertexSelectionAlgorithm.cc.

Here is the caller graph for this function:

◆ CalculateShowerClusterList()

void lar_content::TrainedVertexSelectionAlgorithm::CalculateShowerClusterList ( const pandora::ClusterList inputClusterList,
ShowerClusterList showerClusterList 
) const
protectedinherited

Calculate the shower cluster map for a cluster list.

Parameters
inputClusterListthe input cluster list
showerClusterListthe shower cluster list to populate

Definition at line 65 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:

◆ FilterVertexList()

void lar_content::VertexSelectionBaseAlgorithm::FilterVertexList ( const pandora::VertexList *const  pInputVertexList,
HitKDTree2D kdTreeU,
HitKDTree2D kdTreeV,
HitKDTree2D kdTreeW,
pandora::VertexVector filteredVertices 
) const
protectedvirtualinherited

Filter the input list of vertices to obtain a reduced number of vertex candidates.

Parameters
pInputVertexListthe address of the input vertex list
kdTreeUthe kd tree for u hits
kdTreeVthe kd tree for v hits
kdTreeWthe kd tree for w hits
filteredVerticesto receive the filtered vertex list

Definition at line 40 of file VertexSelectionBaseAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Get2DSpan()

void lar_content::TrainedVertexSelectionAlgorithm::Get2DSpan ( const pandora::ClusterList clusterList,
float &  xSpan,
float &  zSpan 
) const
protectedinherited

Get the coordinate span in one view.

Parameters
clusterListthe cluster list in one view
xSpanthe coordinate span in the drift direction
zSpanthe coordinate span in the wire direction

Definition at line 352 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetBeamConstants()

void lar_content::VertexSelectionBaseAlgorithm::GetBeamConstants ( const pandora::VertexVector vertexVector,
BeamConstants beamConstants 
) const
protectedvirtualinherited

Get the beam score constants for a provided list of candidate vertices.

Parameters
vertexVectorthe vertex vector
beamConstantsto receive the beam constants

Definition at line 65 of file VertexSelectionBaseAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetBeamDeweightingScore()

float lar_content::VertexSelectionBaseAlgorithm::GetBeamDeweightingScore ( const BeamConstants beamConstants,
const pandora::Vertex *const  pVertex 
) const
inlineprotectedinherited

Get the beam deweighting score for a vertex.

Parameters
beamConstantsthe beam constants
pVertexaddress of the vertex
Returns
the score

Definition at line 419 of file VertexSelectionBaseAlgorithm.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetBestRegionVertices()

void lar_content::TrainedVertexSelectionAlgorithm::GetBestRegionVertices ( VertexScoreList initialScoreList,
pandora::VertexVector bestRegionVertices 
) const
protectedinherited

Get the list of top-N separated vertices.

Parameters
initialScoreListthe initial score list
bestRegionVerticesthe list of best region vertices populate

Definition at line 498 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:

◆ GetBestVertex()

void lar_content::TrainedVertexSelectionAlgorithm::GetBestVertex ( const pandora::VertexVector vertexVector,
const pandora::Vertex *&  pBestVertex,
float &  bestVertexDr 
) const
protectedinherited

Use the MC information to get the best vertex from a list.

Parameters
vertexVectorthe vector of vertices
pBestVertexaddress of the best vertex
bestVertexDrdR of the best vertex

Definition at line 764 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetClusterLists()

void lar_content::VertexSelectionBaseAlgorithm::GetClusterLists ( const pandora::StringVector inputClusterListNames,
pandora::ClusterList clusterListU,
pandora::ClusterList clusterListV,
pandora::ClusterList clusterListW 
) const
protectedinherited

Get the cluster lists.

Parameters
inputClusterListNamesthe input cluster list names
clusterListUthe U-view cluster list to populate
clusterListVthe V-view cluster list to populate
clusterListWthe W-view cluster list to populate

Definition at line 91 of file VertexSelectionBaseAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCoordinateSpan()

float lar_content::TrainedVertexSelectionAlgorithm::GetCoordinateSpan ( const pandora::InputFloat minCoord,
const pandora::InputFloat maxCoord 
) const
inlineprotectedinherited

Get the coordinate span.

Parameters
minCoordthe min coordinate
maxCoordthe max coordinate
Returns
the coordinate span

Definition at line 402 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetEventShapeFeatures()

void lar_content::TrainedVertexSelectionAlgorithm::GetEventShapeFeatures ( const ClusterListMap clusterListMap,
float &  eventArea,
float &  longitudinality 
) const
protectedinherited

Get the event shape features.

Parameters
clusterListthe map of cluster lists for each view
eventAreathe event area
longitudinalitythe event longitudinality

Definition at line 332 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetInstanceName()

const std::string & pandora::Process::GetInstanceName ( ) const
inlineinherited

Get the instance name.

Returns
The instance name

Definition at line 109 of file Process.h.

◆ GetInteractionType()

std::string lar_content::TrainedVertexSelectionAlgorithm::GetInteractionType ( ) const
protectedinherited

Get the interaction type string.

Returns
the interaction type string

Definition at line 594 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetLegacyEventShapeFeatures()

void lar_content::TrainedVertexSelectionAlgorithm::GetLegacyEventShapeFeatures ( const pandora::ClusterList clusterList,
float &  eventVolume,
float &  longitudinality 
) const
protectedinherited

Get the event shape features.

Parameters
clusterListthe cluster list
eventVolumethe event volume
longitudinalitythe event longitudinality

Definition at line 292 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetPandora()

const Pandora & pandora::Process::GetPandora ( ) const
inlineinherited

Get the associated pandora instance.

Returns
the associated pandora instance

Definition at line 116 of file Process.h.

◆ GetSharedFeatures()

void lar_content::TrainedVertexSelectionAlgorithm::GetSharedFeatures ( const pandora::Vertex *const  pVertex1,
const pandora::Vertex *const  pVertex2,
const KDTreeMap kdTreeMap,
float &  separation,
float &  axisHits 
) const
protectedinherited

Calculates the shared features of a pair of vertex candidates.

Parameters
pVertex1the address of the first vertex
pVertex2the address of the second vertex
kdTreeMapthe map of 2D hit kd trees
separationthe 3D distance between the two vertex candidates
axisHitsthe number of hits between the two candidates normalised to the distance between them

Definition at line 688 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetShowerLikeClusterEndPoints()

void lar_content::TrainedVertexSelectionAlgorithm::GetShowerLikeClusterEndPoints ( const pandora::ClusterList clusterList,
pandora::ClusterList showerLikeClusters,
ClusterEndPointsMap clusterEndPointsMap 
) const
protectedinherited

Add the endpoints of any shower-like clusters to the map.

Parameters
clusterListthe list of clusters
showerLikeClustersthe list of shower-like clusters to populate
clusterEndPointsMapthe map of shower-like cluster endpoints to populate

Definition at line 119 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetType()

const std::string & pandora::Process::GetType ( ) const
inlineinherited

Get the type.

Returns
The type

Definition at line 102 of file Process.h.

◆ GetVertexEnergy()

float lar_content::VertexSelectionBaseAlgorithm::GetVertexEnergy ( const pandora::Vertex *const  pVertex,
const KDTreeMap kdTreeMap 
) const
protectedinherited

Calculate the energy of a vertex candidate by summing values from all three planes.

Parameters
pVertexthe address of the vertex
kdTreeMapthe map of 2D hit kd trees
Returns
the summed vertex energy

Definition at line 243 of file VertexSelectionBaseAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetVertexScoreList()

void lar_content::CheatingVertexSelectionAlgorithm::GetVertexScoreList ( const pandora::VertexVector vertexVector,
const BeamConstants beamConstants,
HitKDTree2D kdTreeU,
HitKDTree2D kdTreeV,
HitKDTree2D kdTreeW,
VertexScoreList vertexScoreList 
) const
privatevirtual

Get the vertex score list.

Parameters
vertexVectorthe vector of vertices
beamConstantsthe beam constants
kdTreeUthe hit kd tree for the U view
kdTreeVthe hit kd tree for the V view
kdTreeWthe hit kd tree for the W view
vertexScoreListthe vertex score list to fill

Implements lar_content::TrainedVertexSelectionAlgorithm.

Definition at line 18 of file CheatingVertexSelectionAlgorithm.cc.

Here is the call graph for this function:

◆ IncrementSharedAxisValues()

void lar_content::TrainedVertexSelectionAlgorithm::IncrementSharedAxisValues ( const pandora::CartesianVector  pos1,
const pandora::CartesianVector  pos2,
HitKDTree2D kdTree,
float &  axisHits 
) const
protectedinherited

Increments the axis hits information for one view.

Parameters
pos12D projected position of the first vertex
pos22D projected position of the second vertex
kdTreethe kd tree of 2D hits
axisHitsthe number of hits between the two candidates

Definition at line 707 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IncrementShoweryParameters()

void lar_content::TrainedVertexSelectionAlgorithm::IncrementShoweryParameters ( const pandora::ClusterList clusterList,
unsigned int &  nShoweryHits,
unsigned int &  nHits,
float &  eventEnergy 
) const
protectedinherited

Increment the showery hit parameters for a cluster list.

Parameters
clusterListthe cluster list
nShoweryHitsthe number of showery hits
nHitsthe number of hits
eventEnergythe event energy

Definition at line 270 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Initialize()

StatusCode pandora::Process::Initialize ( )
inlineprotectedvirtualinherited

Perform any operations that must occur after reading settings, but before running the process.

Reimplemented in lar_content::BdtBeamParticleIdTool, lar_content::BeamParticleIdTool, lar_content::CosmicRayTaggingTool, lar_content::EventReadingAlgorithm, lar_content::EventWritingAlgorithm, lar_content::LArPseudoLayerPlugin, lar_content::LArRotationalTransformationPlugin, EventReadingAlgorithm, and EventWritingAlgorithm.

Definition at line 126 of file Process.h.

Here is the caller graph for this function:

◆ InitializeKDTrees()

void lar_content::VertexSelectionBaseAlgorithm::InitializeKDTrees ( HitKDTree2D kdTreeU,
HitKDTree2D kdTreeV,
HitKDTree2D kdTreeW 
) const
privateinherited

Initialize kd trees with details of hits in algorithm-configured cluster lists.

Parameters
kdTreeUthe kd tree for u hits
kdTreeVthe kd tree for v hits
kdTreeWthe kd tree for w hits

Definition at line 186 of file VertexSelectionBaseAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsBeamModeOn()

bool lar_content::VertexSelectionBaseAlgorithm::IsBeamModeOn ( ) const
inlineprotectedinherited

Whether algorithm is running in beam mode, assuming neutrinos travel in positive z-direction.

Returns
boolean

Definition at line 427 of file VertexSelectionBaseAlgorithm.h.

Here is the caller graph for this function:

◆ IsClusterShowerLike()

bool lar_content::TrainedVertexSelectionAlgorithm::IsClusterShowerLike ( const pandora::Cluster *const  pCluster) const
inlineprotectedinherited

Find whether a cluster is shower-like.

Parameters
pClusterthe cluster
Returns
boolean

Definition at line 285 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsHitInBox()

bool lar_content::TrainedVertexSelectionAlgorithm::IsHitInBox ( const pandora::CartesianVector hitPos,
const pandora::CartesianVector point1,
const pandora::CartesianVector point2,
const pandora::CartesianVector point3,
const pandora::CartesianVector point4 
) const
protectedinherited

Determines whether a hit lies within the box defined by four other positions.

Parameters
hitPosthe hit position
point1the first corner of the box
point2the second corner of the box
point3the third corner of the box
point4the fourth corner of the box
Returns
boolean

Definition at line 747 of file TrainedVertexSelectionAlgorithm.cc.

Here is the caller graph for this function:

◆ IsVertexInGap()

bool lar_content::VertexSelectionBaseAlgorithm::IsVertexInGap ( const pandora::Vertex *const  pVertex,
const pandora::HitType  hitType 
) const
privateinherited

Whether the vertex lies in a registered gap.

Parameters
pVertexthe address of the vertex
hitTypethe relevant hit type
Returns
boolean

Definition at line 233 of file VertexSelectionBaseAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsVertexOnHit()

bool lar_content::VertexSelectionBaseAlgorithm::IsVertexOnHit ( const pandora::Vertex *const  pVertex,
const pandora::HitType  hitType,
HitKDTree2D kdTree 
) const
privateinherited

Whether the vertex lies on a hit in the specified view.

Parameters
pVertexthe address of the vertex
hitTypethe relevant hit type
kdTreethe relevant kd tree
Returns
boolean

Definition at line 220 of file VertexSelectionBaseAlgorithm.cc.

Here is the call graph for this function:

◆ PopulateFinalVertexScoreList()

void lar_content::TrainedVertexSelectionAlgorithm::PopulateFinalVertexScoreList ( const VertexFeatureInfoMap vertexFeatureInfoMap,
const pandora::Vertex *const  pFavouriteVertex,
const pandora::VertexVector vertexVector,
VertexScoreList finalVertexScoreList 
) const
protectedinherited

Populate the final vertex score list using the r/phi score to find the best vertex in the vicinity.

Parameters
vertexFeatureInfoMapthe vertex feature info map
pFavouriteVertexaddress of the favourite vertex
vertexVectorthe vector of all vertex candidates
finalVertexScoreListthe final vertex score list to populate

Definition at line 838 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:

◆ PopulateInitialScoreList()

void lar_content::TrainedVertexSelectionAlgorithm::PopulateInitialScoreList ( VertexFeatureInfoMap vertexFeatureInfoMap,
const pandora::Vertex *const  pVertex,
VertexScoreList initialScoreList 
) const
protectedinherited

Populate the initial vertex score list for a given vertex.

Parameters
vertexFeatureInfoMapthe vertex feature info map
pVertexthe vertex
initialScoreListthe score list to populate

Definition at line 482 of file TrainedVertexSelectionAlgorithm.cc.

◆ PopulateKdTree()

void lar_content::TrainedVertexSelectionAlgorithm::PopulateKdTree ( const pandora::ClusterList clusterList,
HitKDTree2D kdTree,
HitToClusterMap hitToClusterMap 
) const
protectedinherited

Populate kd tree with information about hits in a provided list of clusters.

Parameters
clusterListthe list of clusters
kdTreeto receive the populated kd tree
hitToClusterMapto receive the populated hit to cluster map

Definition at line 146 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ PopulateVertexFeatureInfoMap()

void lar_content::TrainedVertexSelectionAlgorithm::PopulateVertexFeatureInfoMap ( const BeamConstants beamConstants,
const ClusterListMap clusterListMap,
const SlidingFitDataListMap slidingFitDataListMap,
const ShowerClusterListMap showerClusterListMap,
const KDTreeMap kdTreeMap,
const pandora::Vertex *const  pVertex,
VertexFeatureInfoMap vertexFeatureInfoMap 
) const
protectedinherited

Populate the vertex feature info map for a given vertex.

Parameters
beamConstantsthe beam constants
clusterListMapthe cluster list map
slidingFitDataListMapthe sliding fit data list map
showerClusterListMapthe shower cluster list map
kdTreeMapthe kd tree map
pVertexthe vertex
vertexFeatureInfoMapthe map to populate

Definition at line 428 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:

◆ ProduceTrainingExamples()

const pandora::Vertex * lar_content::TrainedVertexSelectionAlgorithm::ProduceTrainingExamples ( const pandora::VertexVector vertexVector,
const VertexFeatureInfoMap vertexFeatureInfoMap,
std::bernoulli_distribution &  coinFlip,
std::mt19937 &  generator,
const std::string &  interactionType,
const std::string &  trainingOutputFile,
const LArMvaHelper::MvaFeatureVector eventFeatureList,
const KDTreeMap kdTreeMap,
const float  maxRadius,
const bool  useRPhi 
) const
protectedinherited

Produce a set of training examples for a binary classifier.

Parameters
vertexVectorthe vector of vertices to use
vertexFeatureInfoMapthe vertex feature info map
coinFlipa distribution for producing coin flips
generatorthe random number generator
interactionTypethe interaction type string
trainingOutputFilethe training set output file
eventFeatureListthe event feature list
kdTreeMapthe map of 2D hit kd trees
maxRadiusthe maximum allowed radius for the 'best' vertex
useRPhiwhether to include the r/phi feature
Returns
address of the vertex used as the 'best' vertex in the classifier

Definition at line 628 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ProduceTrainingSets()

void lar_content::TrainedVertexSelectionAlgorithm::ProduceTrainingSets ( const pandora::VertexVector vertexVector,
const pandora::VertexVector bestRegionVertices,
VertexFeatureInfoMap vertexFeatureInfoMap,
const LArMvaHelper::MvaFeatureVector eventFeatureList,
const KDTreeMap kdTreeMap 
) const
protectedinherited

Produce the region and vertex training sets.

Parameters
vertexVectorthe vector of all vertices
bestRegionVerticesthe best region vertices
vertexFeatureInfoMapthe vertex feature info map
eventFeatureListthe list of event features
kdTreeMap

Definition at line 531 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:

◆ ReadSettings()

StatusCode lar_content::CheatingVertexSelectionAlgorithm::ReadSettings ( const pandora::TiXmlHandle  xmlHandle)
privatevirtual

Read the algorithm settings.

Parameters
xmlHandlethe relevant xml handle

Implements pandora::Process.

Definition at line 30 of file CheatingVertexSelectionAlgorithm.cc.

Here is the call graph for this function:

◆ RegisterDetails()

StatusCode pandora::Process::RegisterDetails ( const Pandora *const  pPandora,
const std::string &  type,
const std::string &  instanceName 
)
inlineprotectedinherited

Register i) the pandora instance that will run the process and ii) the process type.

Parameters
pPandoraaddress of the pandora object that will run the process
typethe process type
instanceNamethe process instance name

Definition at line 146 of file Process.h.

Here is the caller graph for this function:

◆ Reset()

StatusCode pandora::Process::Reset ( )
inlineprotectedvirtualinherited

Perform any operations when pandora is reset, typically at the end of each event.

Reimplemented in lar_content::MasterAlgorithm, lar_content::PostProcessingAlgorithm, and lar_content::PreProcessingAlgorithm.

Definition at line 133 of file Process.h.

Here is the caller graph for this function:

◆ Run()

StatusCode lar_content::VertexSelectionBaseAlgorithm::Run ( )
privatevirtualinherited

Run the algorithm.

Implements pandora::Algorithm.

Definition at line 142 of file VertexSelectionBaseAlgorithm.cc.

Here is the call graph for this function:

◆ SelectTopScoreVertices()

void lar_content::VertexSelectionBaseAlgorithm::SelectTopScoreVertices ( VertexScoreList vertexScoreList,
pandora::VertexList selectedVertexList 
) const
privateinherited

From the top-scoring candidate vertices, select a subset for further investigation.

Parameters
vertexScoreListthe vertex score list
selectedVertexListto receive the selected vertex list

Definition at line 286 of file VertexSelectionBaseAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SortByVertexZPosition()

bool lar_content::VertexSelectionBaseAlgorithm::SortByVertexZPosition ( const pandora::Vertex *const  pLhs,
const pandora::Vertex *const  pRhs 
)
staticprivateinherited

Sort vertices by increasing z position.

Parameters
pLhsaddress of the lhs vertex
pRhsaddress of the rhs vertex
Returns
whether lhs should precedes rhs

Definition at line 333 of file VertexSelectionBaseAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ UpdateSpanCoordinate()

void lar_content::TrainedVertexSelectionAlgorithm::UpdateSpanCoordinate ( const float  minPositionCoord,
const float  maxPositionCoord,
pandora::InputFloat minCoord,
pandora::InputFloat maxCoord 
) const
inlineprotectedinherited

Update the min/max coordinate spans.

Parameters
minPositionCoordthe min position coordinate
maxPositionCoordthe max position coordinate
minCoordthe current min coordinate
maxCoordthe current max coordinate

Definition at line 390 of file TrainedVertexSelectionAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VertexHitEnergy()

float lar_content::VertexSelectionBaseAlgorithm::VertexHitEnergy ( const pandora::Vertex *const  pVertex,
const pandora::HitType  hitType,
HitKDTree2D kdTree 
) const
protectedinherited

Finds the energy of the nearest hit to the vertex candidate in this view.

Parameters
pVertexthe address of the vertex
hitTypethe relevant hit type
kdTreethe kd tree of 2D hits
Returns
the energy of the nearest hit

Definition at line 261 of file VertexSelectionBaseAlgorithm.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ m_allowClassifyDuringTraining

bool lar_content::TrainedVertexSelectionAlgorithm::m_allowClassifyDuringTraining
protectedinherited

Whether classification is allowed during training.

Definition at line 454 of file TrainedVertexSelectionAlgorithm.h.

◆ m_beamDeweightingConstant

float lar_content::TrainedVertexSelectionAlgorithm::m_beamDeweightingConstant
protectedinherited

The beam deweighting constant for the initial region score list.

Definition at line 466 of file TrainedVertexSelectionAlgorithm.h.

◆ m_beamMode

bool lar_content::VertexSelectionBaseAlgorithm::m_beamMode
privateinherited

Whether to run in beam mode, assuming neutrinos travel in positive z-direction.

Definition at line 399 of file VertexSelectionBaseAlgorithm.h.

◆ m_caloHitListName

std::string lar_content::TrainedVertexSelectionAlgorithm::m_caloHitListName
protectedinherited

The 2D CaloHit list name.

Definition at line 459 of file TrainedVertexSelectionAlgorithm.h.

◆ m_dropFailedRPhiFastScoreCandidates

bool lar_content::TrainedVertexSelectionAlgorithm::m_dropFailedRPhiFastScoreCandidates
protectedinherited

Whether to drop candidates that fail the r/phi fast score test.

Definition at line 479 of file TrainedVertexSelectionAlgorithm.h.

◆ m_energyKickConstant

float lar_content::TrainedVertexSelectionAlgorithm::m_energyKickConstant
protectedinherited

The energy kick constant for the initial region score list.

Definition at line 470 of file TrainedVertexSelectionAlgorithm.h.

◆ m_featureToolVector

VertexFeatureTool::FeatureToolVector lar_content::TrainedVertexSelectionAlgorithm::m_featureToolVector
protectedinherited

The feature tool vector.

Definition at line 452 of file TrainedVertexSelectionAlgorithm.h.

◆ m_gapTolerance

float lar_content::VertexSelectionBaseAlgorithm::m_gapTolerance
privateinherited

The tolerance to use when querying whether a sampling point is in a gap, units cm.

Definition at line 411 of file VertexSelectionBaseAlgorithm.h.

◆ m_globalAsymmetryConstant

float lar_content::TrainedVertexSelectionAlgorithm::m_globalAsymmetryConstant
protectedinherited

The global asymmetry constant for the initial region score list.

Definition at line 468 of file TrainedVertexSelectionAlgorithm.h.

◆ m_inputCaloHitListNames

pandora::StringVector lar_content::VertexSelectionBaseAlgorithm::m_inputCaloHitListNames
privateinherited

The list of calo hit list names.

Definition at line 394 of file VertexSelectionBaseAlgorithm.h.

◆ m_inputClusterListNames

pandora::StringVector lar_content::TrainedVertexSelectionAlgorithm::m_inputClusterListNames
protectedinherited

The list of cluster list names.

Definition at line 461 of file TrainedVertexSelectionAlgorithm.h.

◆ m_instanceName

std::string pandora::Process::m_instanceName
protectedinherited

The process instance name.

Definition at line 89 of file Process.h.

◆ m_isEmptyViewAcceptable

bool lar_content::VertexSelectionBaseAlgorithm::m_isEmptyViewAcceptable
privateinherited

Whether views entirely empty of hits are classed as 'acceptable' for candidate filtration.

Definition at line 413 of file VertexSelectionBaseAlgorithm.h.

◆ m_legacyEventShapes

bool lar_content::TrainedVertexSelectionAlgorithm::m_legacyEventShapes
protectedinherited

Whether to use the old event shapes calculation.

Definition at line 481 of file TrainedVertexSelectionAlgorithm.h.

◆ m_legacyVariables

bool lar_content::TrainedVertexSelectionAlgorithm::m_legacyVariables
protectedinherited

Whether to only use the old variables.

Definition at line 482 of file TrainedVertexSelectionAlgorithm.h.

◆ m_localAsymmetryConstant

float lar_content::TrainedVertexSelectionAlgorithm::m_localAsymmetryConstant
protectedinherited

The local asymmetry constant for the initial region score list.

Definition at line 467 of file TrainedVertexSelectionAlgorithm.h.

◆ m_maxOnHitDisplacement

float lar_content::VertexSelectionBaseAlgorithm::m_maxOnHitDisplacement
privateinherited

Max hit-vertex displacement for declaring vertex to lie on a hit in each view.

Definition at line 405 of file VertexSelectionBaseAlgorithm.h.

◆ m_maxTopScoreSelections

unsigned int lar_content::VertexSelectionBaseAlgorithm::m_maxTopScoreSelections
privateinherited

Max number of top-scoring vertex candidate to select for output.

Definition at line 403 of file VertexSelectionBaseAlgorithm.h.

◆ m_maxTrueVertexRadius

float lar_content::TrainedVertexSelectionAlgorithm::m_maxTrueVertexRadius
protectedinherited

The maximum distance at which a vertex candidate can be considered the 'true' vertex.

Definition at line 477 of file TrainedVertexSelectionAlgorithm.h.

◆ m_mcParticleListName

std::string lar_content::TrainedVertexSelectionAlgorithm::m_mcParticleListName
protectedinherited

The MC particle list for creating training examples.

Definition at line 458 of file TrainedVertexSelectionAlgorithm.h.

◆ m_mcVertexXCorrection

float lar_content::TrainedVertexSelectionAlgorithm::m_mcVertexXCorrection
protectedinherited

The correction to the x-coordinate of the MC vertex position.

Definition at line 455 of file TrainedVertexSelectionAlgorithm.h.

◆ m_minCandidateDisplacement

float lar_content::VertexSelectionBaseAlgorithm::m_minCandidateDisplacement
privateinherited

Ignore other top-scoring candidates located in close proximity to original.

Definition at line 407 of file VertexSelectionBaseAlgorithm.h.

◆ m_minCandidateScoreFraction

float lar_content::VertexSelectionBaseAlgorithm::m_minCandidateScoreFraction
privateinherited

Ignore other top-scoring candidates with score less than a fraction of original.

Definition at line 408 of file VertexSelectionBaseAlgorithm.h.

◆ m_minClusterCaloHits

unsigned int lar_content::TrainedVertexSelectionAlgorithm::m_minClusterCaloHits
protectedinherited

The min number of hits parameter in the energy score.

Definition at line 462 of file TrainedVertexSelectionAlgorithm.h.

◆ m_minShowerClusterHits

unsigned int lar_content::TrainedVertexSelectionAlgorithm::m_minShowerClusterHits
protectedinherited

The minimum number of shower cluster hits.

Definition at line 473 of file TrainedVertexSelectionAlgorithm.h.

◆ m_minShowerSpineLength

float lar_content::TrainedVertexSelectionAlgorithm::m_minShowerSpineLength
protectedinherited

The minimum length at which all are considered to be tracks.

Definition at line 464 of file TrainedVertexSelectionAlgorithm.h.

◆ m_minVertexAcceptableViews

unsigned int lar_content::VertexSelectionBaseAlgorithm::m_minVertexAcceptableViews
privateinherited

The minimum number of views in which a candidate must sit on/near a hit or in a gap (or view can be empty)

Definition at line 414 of file VertexSelectionBaseAlgorithm.h.

◆ m_nDecayLengthsInZSpan

float lar_content::VertexSelectionBaseAlgorithm::m_nDecayLengthsInZSpan
privateinherited

The number of score decay lengths to use over the course of the vertex z-span.

Definition at line 400 of file VertexSelectionBaseAlgorithm.h.

◆ m_outputVertexListName

std::string lar_content::VertexSelectionBaseAlgorithm::m_outputVertexListName
privateinherited

The name under which to save the output vertex list.

Definition at line 395 of file VertexSelectionBaseAlgorithm.h.

◆ m_pPandora

const Pandora* pandora::Process::m_pPandora
protectedinherited

The pandora object that will run the process.

Definition at line 87 of file Process.h.

◆ m_regionRadius

float lar_content::TrainedVertexSelectionAlgorithm::m_regionRadius
protectedinherited

The radius for a vertex region.

Definition at line 475 of file TrainedVertexSelectionAlgorithm.h.

◆ m_replaceCurrentVertexList

bool lar_content::VertexSelectionBaseAlgorithm::m_replaceCurrentVertexList
privateinherited

Whether to replace the current vertex list with the output list.

Definition at line 397 of file VertexSelectionBaseAlgorithm.h.

◆ m_rPhiFineTuningRadius

float lar_content::TrainedVertexSelectionAlgorithm::m_rPhiFineTuningRadius
protectedinherited

The maximum distance the r/phi tune can move a vertex.

Definition at line 476 of file TrainedVertexSelectionAlgorithm.h.

◆ m_selectSingleVertex

bool lar_content::VertexSelectionBaseAlgorithm::m_selectSingleVertex
privateinherited

Whether to make a final decision and select just one vertex candidate.

Definition at line 402 of file VertexSelectionBaseAlgorithm.h.

◆ m_showerAsymmetryConstant

float lar_content::TrainedVertexSelectionAlgorithm::m_showerAsymmetryConstant
protectedinherited

The shower asymmetry constant for the initial region score list.

Definition at line 469 of file TrainedVertexSelectionAlgorithm.h.

◆ m_showerClusteringDistance

float lar_content::TrainedVertexSelectionAlgorithm::m_showerClusteringDistance
protectedinherited

The shower clustering distance.

Definition at line 472 of file TrainedVertexSelectionAlgorithm.h.

◆ m_slidingFitWindow

unsigned int lar_content::TrainedVertexSelectionAlgorithm::m_slidingFitWindow
protectedinherited

The layer window for the sliding linear fits.

Definition at line 463 of file TrainedVertexSelectionAlgorithm.h.

◆ m_testBeamMode

bool lar_content::TrainedVertexSelectionAlgorithm::m_testBeamMode
protectedinherited

Test beam mode.

Definition at line 480 of file TrainedVertexSelectionAlgorithm.h.

◆ m_trainingOutputFileRegion

std::string lar_content::TrainedVertexSelectionAlgorithm::m_trainingOutputFileRegion
protectedinherited

The training output file for the region mva.

Definition at line 456 of file TrainedVertexSelectionAlgorithm.h.

◆ m_trainingOutputFileVertex

std::string lar_content::TrainedVertexSelectionAlgorithm::m_trainingOutputFileVertex
protectedinherited

The training output file for the vertex mva.

Definition at line 457 of file TrainedVertexSelectionAlgorithm.h.

◆ m_trainingSetMode

bool lar_content::TrainedVertexSelectionAlgorithm::m_trainingSetMode
protectedinherited

Whether to train.

Definition at line 453 of file TrainedVertexSelectionAlgorithm.h.

◆ m_type

std::string pandora::Process::m_type
protectedinherited

The process type.

Definition at line 88 of file Process.h.

◆ m_useDetectorGaps

bool lar_content::VertexSelectionBaseAlgorithm::m_useDetectorGaps
privateinherited

Whether to account for registered detector gaps in vertex selection.

Definition at line 410 of file VertexSelectionBaseAlgorithm.h.

◆ m_useRPhiFeatureForRegion

bool lar_content::TrainedVertexSelectionAlgorithm::m_useRPhiFeatureForRegion
protectedinherited

Whether to use the r/phi feature for the region vertex.

Definition at line 478 of file TrainedVertexSelectionAlgorithm.h.

◆ m_useShowerClusteringApproximation

bool lar_content::TrainedVertexSelectionAlgorithm::m_useShowerClusteringApproximation
protectedinherited

Whether to use the shower clustering distance approximation.

Definition at line 474 of file TrainedVertexSelectionAlgorithm.h.


The documentation for this class was generated from the following files: