LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
TransverseTrackHitsBaseTool class. More...
#include "TransverseTrackHitsBaseTool.h"
Public Types | |
typedef ThreeDHitCreationAlgorithm::ProtoHit | ProtoHit |
typedef ThreeDHitCreationAlgorithm::ProtoHitVector | ProtoHitVector |
typedef ThreeDHitCreationAlgorithm::TrajectorySample | TrajectorySample |
Public Member Functions | |
virtual void | Run (ThreeDHitCreationAlgorithm *const pAlgorithm, const pandora::ParticleFlowObject *const pPfo, const pandora::CaloHitVector &inputTwoDHits, ProtoHitVector &protoHitVector) |
Run the algorithm tool. More... | |
Protected Types | |
typedef std::map< pandora::HitType, TwoDSlidingFitResult > | MatchedSlidingFitMap |
Protected Member Functions | |
virtual void | GetTransverseTrackHit3D (const MatchedSlidingFitMap &matchedSlidingFitMap, ProtoHit &protoHit) const =0 |
Get the three dimensional position using a provided two dimensional calo hit and sliding linear fits in the other two views. More... | |
virtual void | GetTrackHits3D (const pandora::CaloHitVector &inputTwoDHits, const MatchedSlidingFitMap &matchedSlidingFitMap, ProtoHitVector &protoHitVector) const |
Calculate 3D hits from an input list of 2D hits. More... | |
virtual void | AddTransverseChi2 (const MatchedSlidingFitMap &matchedSlidingFitMap, ProtoHit &protoHit) const |
Calculate an additional contribution to the chi-squared based on the steepness of the track. More... | |
virtual void | BuildSlidingFitMap (const pandora::ParticleFlowObject *const pPfo, MatchedSlidingFitMap &matchedSlidingFitMap) const |
Calculate sliding fit results for clusters from each view. More... | |
virtual pandora::StatusCode | ReadSettings (const pandora::TiXmlHandle xmlHandle) |
virtual void | GetBestPosition3D (const pandora::HitType hitType1, const pandora::HitType hitType2, const pandora::CartesianPointVector &fitPositionList1, const pandora::CartesianPointVector &fitPositionList2, ProtoHit &protoHit) const |
Get the three dimensional position using a provided two dimensional calo hit and candidate fit positions from the other two views. More... | |
virtual void | GetBestPosition3D (const pandora::HitType hitType1, const pandora::HitType hitType2, const pandora::CartesianVector &fitPosition1, const pandora::CartesianVector &fitPosition2, ProtoHit &protoHit) const |
Get the three dimensional position using a provided two dimensional calo hit and candidate fit positions from the other two views. More... | |
virtual void | GetBestPosition3D (const pandora::HitType hitType, const pandora::CartesianVector &fitPosition, ProtoHit &protoHit) const |
Get the three dimensional position using a provided two dimensional calo hit and a candidate fit position from another view. More... | |
Protected Attributes | |
unsigned int | m_minViews |
The minimum number of views required for building hits. More... | |
unsigned int | m_slidingFitWindow |
The layer window for the sliding linear fits. More... | |
double | m_sigmaX2 |
The sigmaX squared value, for calculation of chi2 deltaX term. More... | |
double | m_chiSquaredCut |
The chi squared cut (accept only values below the cut value) More... | |
Private Member Functions | |
double | GetTransverseChi2 (const pandora::CartesianVector &position2D, const TwoDSlidingFitResult &fitResult) const |
Calculate an additional contribution to the chi-squared based on the steepness of the track. More... | |
TransverseTrackHitsBaseTool class.
Definition at line 19 of file TransverseTrackHitsBaseTool.h.
|
protectedinherited |
Definition at line 35 of file TrackHitsBaseTool.h.
Definition at line 24 of file HitCreationBaseTool.h.
|
inherited |
Definition at line 25 of file HitCreationBaseTool.h.
|
inherited |
Definition at line 26 of file HitCreationBaseTool.h.
|
protectedvirtual |
Calculate an additional contribution to the chi-squared based on the steepness of the track.
matchedSlidingFitMap | map of sliding fit results from each view |
protoHit | to receive the modified proto hit |
Definition at line 43 of file TransverseTrackHitsBaseTool.cc.
References lar_content::ThreeDHitCreationAlgorithm::ProtoHit::GetChi2(), lar_content::ThreeDHitCreationAlgorithm::ProtoHit::GetParentCaloHit2D(), lar_content::ThreeDHitCreationAlgorithm::ProtoHit::GetPosition3D(), and lar_content::ThreeDHitCreationAlgorithm::ProtoHit::SetPosition3D().
|
protectedvirtualinherited |
Calculate sliding fit results for clusters from each view.
pPfo | the input particle flow object |
matchedSlidingFitMap | the group of sliding fit results |
Definition at line 57 of file TrackHitsBaseTool.cc.
References lar_content::LArClusterHelper::GetClusterHitType(), lar_content::LArGeometryHelper::GetWirePitch(), lar_content::TrackHitsBaseTool::m_slidingFitWindow, and lar_content::LArClusterHelper::SortByNHits().
Referenced by lar_content::TrackHitsBaseTool::Run().
|
protectedvirtualinherited |
Get the three dimensional position using a provided two dimensional calo hit and candidate fit positions from the other two views.
hitType1 | the hit type identifying the first view |
hitType2 | the hit type identifying the second view |
fitPositionList1 | the candidate sliding fit position in the first view |
fitPositionList2 | the candidate sliding fit position in the second view |
protoHit | to receive the populated proto hit |
Referenced by lar_content::ThreeViewShowerHitsTool::GetShowerHit3D(), and lar_content::HitCreationBaseTool::~HitCreationBaseTool().
|
protectedvirtualinherited |
Get the three dimensional position using a provided two dimensional calo hit and candidate fit positions from the other two views.
hitType1 | the hit type identifying the first view |
hitType2 | the hit type identifying the second view |
fitPosition1 | the candidate sliding fit position in the first view |
fitPosition2 | the candidate sliding fit position in the second view |
protoHit | to receive the populated proto hit |
|
protectedvirtualinherited |
Get the three dimensional position using a provided two dimensional calo hit and a candidate fit position from another view.
hitType | the hit type identifying the other view |
fitPosition | the candidate sliding fit position in the other view |
protoHit | to receive the populated proto hit |
|
protectedvirtual |
Calculate 3D hits from an input list of 2D hits.
pAlgorithm | the hit creation algorithm |
inputTwoDHits | the input vector of 2D hits |
matchedSlidingFitMap | the group of sliding fit results |
protoHitVector | to receive the new three dimensional proto hits |
Implements lar_content::TrackHitsBaseTool.
Definition at line 21 of file TransverseTrackHitsBaseTool.cc.
References lar_content::ThreeDHitCreationAlgorithm::ProtoHit::GetChi2(), and lar_content::ThreeDHitCreationAlgorithm::ProtoHit::IsPositionSet().
|
private |
Calculate an additional contribution to the chi-squared based on the steepness of the track.
position2D | the calculated two dimensional position |
fitResult | the sliding fit to the track |
Definition at line 64 of file TransverseTrackHitsBaseTool.cc.
References lar_content::TwoDSlidingFitResult::GetGlobalMaxLayerDirection(), lar_content::TwoDSlidingFitResult::GetGlobalMaxLayerPosition(), lar_content::TwoDSlidingFitResult::GetGlobalMinLayerDirection(), and lar_content::TwoDSlidingFitResult::GetGlobalMinLayerPosition().
|
protectedpure virtual |
Get the three dimensional position using a provided two dimensional calo hit and sliding linear fits in the other two views.
matchedSlidingFitMap | map of sliding fit results from each view |
protoHit | to receive the populated proto hit |
Implemented in lar_content::ClearTransverseTrackHitsTool, and lar_content::MultiValuedTransverseTrackHitsTool.
|
protectedvirtualinherited |
Reimplemented from lar_content::HitCreationBaseTool.
Reimplemented in lar_content::LongitudinalTrackHitsBaseTool.
Definition at line 93 of file TrackHitsBaseTool.cc.
References lar_content::TrackHitsBaseTool::m_minViews, lar_content::TrackHitsBaseTool::m_slidingFitWindow, and lar_content::HitCreationBaseTool::ReadSettings().
Referenced by lar_content::LongitudinalTrackHitsBaseTool::ReadSettings().
|
virtualinherited |
Run the algorithm tool.
pAlgorithm | address of the calling algorithm |
pPfo | the address of the pfo |
inputTwoDHits | the vector of input two dimensional hits |
protoHitVector | to receive the new three dimensional proto hits |
Implements lar_content::HitCreationBaseTool.
Definition at line 31 of file TrackHitsBaseTool.cc.
References lar_content::TrackHitsBaseTool::BuildSlidingFitMap(), lar_content::TrackHitsBaseTool::GetTrackHits3D(), and lar_content::LArPfoHelper::IsTrack().
|
protectedinherited |
The chi squared cut (accept only values below the cut value)
Definition at line 86 of file HitCreationBaseTool.h.
Referenced by lar_content::ShowerHitsBaseTool::GetShowerHits3D(), lar_content::LongitudinalTrackHitsBaseTool::GetTrackHits3D(), and lar_content::HitCreationBaseTool::ReadSettings().
|
protectedinherited |
The minimum number of views required for building hits.
Definition at line 58 of file TrackHitsBaseTool.h.
Referenced by lar_content::TrackHitsBaseTool::ReadSettings().
|
protectedinherited |
The sigmaX squared value, for calculation of chi2 deltaX term.
Definition at line 85 of file HitCreationBaseTool.h.
Referenced by lar_content::HitCreationBaseTool::ReadSettings(), and lar_content::HitCreationBaseTool::~HitCreationBaseTool().
|
protectedinherited |
The layer window for the sliding linear fits.
Definition at line 59 of file TrackHitsBaseTool.h.
Referenced by lar_content::TrackHitsBaseTool::BuildSlidingFitMap(), and lar_content::TrackHitsBaseTool::ReadSettings().