LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
AmbiguousRegionFeatureTool to calculate variables related to the shower region. More...
#include "ConnectionPathwayFeatureTool.h"
Public Types | |
typedef std::vector< MvaFeatureTool< Ts... > * > | FeatureToolVector |
typedef std::map< std::string, MvaFeatureTool< Ts... > * > | FeatureToolMap |
Public Member Functions | |
AmbiguousRegionFeatureTool () | |
Default constructor. More... | |
void | Run (LArMvaHelper::MvaFeatureVector &featureVector, const pandora::Algorithm *const pAlgorithm, const pandora::ParticleFlowObject *const pShowerPfo, const pandora::CartesianVector &nuVertex3D, const ProtoShowerMatch &protoShowerMatch, const pandora::CartesianPointVector &showerStarts3D) |
void | Run (LArMvaHelper::MvaFeatureMap &featureMap, pandora::StringVector &featureOrder, const std::string &featureToolName, const pandora::Algorithm *const pAlgorithm, const pandora::ParticleFlowObject *const pShowerPfo, const pandora::CartesianVector &nuVertex3D, const ProtoShowerMatch &protoShowerMatch, const pandora::CartesianPointVector &showerStarts3D) |
virtual void | Run (MvaTypes::MvaFeatureVector &featureVector, Ts...args)=0 |
Run the algorithm tool. More... | |
virtual void | Run (MvaTypes::MvaFeatureMap &featureMap, pandora::StringVector &featureOrder, const std::string &featureToolName, Ts...) |
Private Member Functions | |
pandora::StatusCode | ReadSettings (const pandora::TiXmlHandle xmlHandle) |
void | CalculateNAmbiguousViews (const ProtoShowerMatch &protoShowerMatch, float &nAmbiguousViews) |
Count the number of views with ambiguous hits. More... | |
bool | GetViewAmbiguousHitVariables (const pandora::Algorithm *const pAlgorithm, const ProtoShowerMatch &protoShowerMatch, const pandora::HitType hitType, const pandora::CartesianVector &nuVertex3D, float &unaccountedHitEnergy) |
Calculate the ambiguous region variables for the input view. More... | |
void | BuildAmbiguousSpines (const pandora::Algorithm *const pAlgorithm, const pandora::HitType hitType, const ProtoShower &protoShower, const pandora::CartesianVector &nuVertex2D, std::map< int, pandora::CaloHitList > &ambiguousHitSpines, pandora::CaloHitList &hitsToExcludeInEnergyCalcs) |
Determine the spine hits of the particles with which the ambiguous hits are shared. More... | |
pandora::StatusCode | GetHitListOfType (const pandora::Algorithm *const pAlgorithm, const pandora::HitType hitType, const pandora::CaloHitList *&pCaloHitList) const |
Obtain the event hit list of a given view. More... | |
pandora::CaloHitList | FindAmbiguousContinuousSpine (const pandora::CaloHitList &caloHitList, const pandora::CaloHitList &ambiguousHitList, const pandora::CartesianVector &nuVertex2D) |
Determine a continuous pathway of an ambigous particle's spine hits. More... | |
Private Attributes | |
float | m_defaultFloat |
Default float value. More... | |
std::string | m_caloHitListNameU |
The event U view hit list. More... | |
std::string | m_caloHitListNameV |
The event V view hit list. More... | |
std::string | m_caloHitListNameW |
The event W view hit list. More... | |
float | m_maxTransverseDistance |
The max. proximity of a hits, included in a trajectory energy calcs. More... | |
unsigned int | m_maxSampleHits |
The max. number of hits considered in the spine energy calcs. More... | |
float | m_maxHitSeparation |
The max. separation of connected hits. More... | |
float | m_maxTrackFraction |
The fraction of found hits which are considered in the energy calcs. More... | |
AmbiguousRegionFeatureTool to calculate variables related to the shower region.
Definition at line 268 of file ConnectionPathwayFeatureTool.h.
|
inherited |
Definition at line 37 of file LArMvaHelper.h.
|
inherited |
Definition at line 36 of file LArMvaHelper.h.
lar_content::AmbiguousRegionFeatureTool::AmbiguousRegionFeatureTool | ( | ) |
Default constructor.
Definition at line 870 of file ConnectionPathwayFeatureTool.cc.
References CalculateNAmbiguousViews(), f, GetViewAmbiguousHitVariables(), m_defaultFloat, and Run().
|
private |
Determine the spine hits of the particles with which the ambiguous hits are shared.
pAlgorithm | the algorithm |
hitType | the 2D view |
protoShower | the ProtoShower |
nuVertex2D | the 2D neutrino vertex |
ambiguousHitSpines | the output [particle index -> shower spine hits] map |
hitsToExcludeInEnergyCalcs | the list of hits to exclude in energy calculations |
Definition at line 1040 of file ConnectionPathwayFeatureTool.cc.
References f, FindAmbiguousContinuousSpine(), lar_content::ProtoShower::GetAmbiguousDirectionVector(), lar_content::ProtoShower::GetAmbiguousHitList(), GetHitListOfType(), and m_maxTransverseDistance.
Referenced by GetViewAmbiguousHitVariables().
|
private |
Count the number of views with ambiguous hits.
protoShowerMatch | the ProtoShower match |
nAmbiguousViews | the output number of ambiguous views |
Definition at line 937 of file ConnectionPathwayFeatureTool.cc.
References f, lar_content::ProtoShower::GetAmbiguousHitList(), lar_content::ProtoShowerMatch::GetProtoShowerU(), lar_content::ProtoShowerMatch::GetProtoShowerV(), and lar_content::ProtoShowerMatch::GetProtoShowerW().
Referenced by AmbiguousRegionFeatureTool().
|
private |
Determine a continuous pathway of an ambigous particle's spine hits.
caloHitList | the input ambiguous particle spine hit list |
ambiguousHitList | the ambiguous hit list |
nuVertex2D | the 2D neutrino vertex |
Definition at line 1109 of file ConnectionPathwayFeatureTool.cc.
References lar_content::LArClusterHelper::GetClosestDistance(), m_maxHitSeparation, and m_maxTrackFraction.
Referenced by BuildAmbiguousSpines().
|
private |
Obtain the event hit list of a given view.
pAlgorithm | the algorithm |
hitType | the 2D view |
pCaloHitList | the output 2D hit list |
Definition at line 1092 of file ConnectionPathwayFeatureTool.cc.
References m_caloHitListNameU, m_caloHitListNameV, and m_caloHitListNameW.
Referenced by BuildAmbiguousSpines().
|
private |
Calculate the ambiguous region variables for the input view.
pAlgorithm | the algorithm |
protoShowerMatch | the ProtoShower match |
hitType | the 2D view |
nuVertex3D | the 3D neutrino vertex |
unaccountedHitEnergy | the output unaccounted hit energy |
Definition at line 953 of file ConnectionPathwayFeatureTool.cc.
References BuildAmbiguousSpines(), f, lar_content::ProtoShower::GetAmbiguousHitList(), lar_content::ProtoShower::GetConnectionPathway(), lar_content::ProtoShowerMatch::GetProtoShowerU(), lar_content::ProtoShowerMatch::GetProtoShowerV(), lar_content::ProtoShowerMatch::GetProtoShowerW(), lar_content::ProtoShower::GetSpineHitList(), lar_content::ConnectionPathway::GetStartDirection(), m_maxSampleHits, m_maxTransverseDistance, and lar_content::LArGeometryHelper::ProjectPosition().
Referenced by AmbiguousRegionFeatureTool().
|
private |
Definition at line 1164 of file ConnectionPathwayFeatureTool.cc.
References m_caloHitListNameU, m_caloHitListNameV, m_caloHitListNameW, m_defaultFloat, m_maxHitSeparation, m_maxSampleHits, m_maxTrackFraction, and m_maxTransverseDistance.
|
pure virtualinherited |
Run the algorithm tool.
featureVector | the vector of features to append |
args | arguments to pass to the tool |
|
inlinevirtualinherited |
Definition at line 51 of file LArMvaHelper.h.
void lar_content::AmbiguousRegionFeatureTool::Run | ( | LArMvaHelper::MvaFeatureVector & | featureVector, |
const pandora::Algorithm *const | pAlgorithm, | ||
const pandora::ParticleFlowObject *const | pShowerPfo, | ||
const pandora::CartesianVector & | nuVertex3D, | ||
const ProtoShowerMatch & | protoShowerMatch, | ||
const pandora::CartesianPointVector & | showerStarts3D | ||
) |
Referenced by AmbiguousRegionFeatureTool().
void lar_content::AmbiguousRegionFeatureTool::Run | ( | LArMvaHelper::MvaFeatureMap & | featureMap, |
pandora::StringVector & | featureOrder, | ||
const std::string & | featureToolName, | ||
const pandora::Algorithm *const | pAlgorithm, | ||
const pandora::ParticleFlowObject *const | pShowerPfo, | ||
const pandora::CartesianVector & | nuVertex3D, | ||
const ProtoShowerMatch & | protoShowerMatch, | ||
const pandora::CartesianPointVector & | showerStarts3D | ||
) |
|
private |
The event U view hit list.
Definition at line 348 of file ConnectionPathwayFeatureTool.h.
Referenced by GetHitListOfType(), and ReadSettings().
|
private |
The event V view hit list.
Definition at line 349 of file ConnectionPathwayFeatureTool.h.
Referenced by GetHitListOfType(), and ReadSettings().
|
private |
The event W view hit list.
Definition at line 350 of file ConnectionPathwayFeatureTool.h.
Referenced by GetHitListOfType(), and ReadSettings().
|
private |
Default float value.
Definition at line 347 of file ConnectionPathwayFeatureTool.h.
Referenced by AmbiguousRegionFeatureTool(), and ReadSettings().
|
private |
The max. separation of connected hits.
Definition at line 353 of file ConnectionPathwayFeatureTool.h.
Referenced by FindAmbiguousContinuousSpine(), and ReadSettings().
|
private |
The max. number of hits considered in the spine energy calcs.
Definition at line 352 of file ConnectionPathwayFeatureTool.h.
Referenced by GetViewAmbiguousHitVariables(), and ReadSettings().
|
private |
The fraction of found hits which are considered in the energy calcs.
Definition at line 354 of file ConnectionPathwayFeatureTool.h.
Referenced by FindAmbiguousContinuousSpine(), and ReadSettings().
|
private |
The max. proximity of a hits, included in a trajectory energy calcs.
Definition at line 351 of file ConnectionPathwayFeatureTool.h.
Referenced by BuildAmbiguousSpines(), GetViewAmbiguousHitVariables(), and ReadSettings().