LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
|
LArGeometryHelper class. More...
#include "LArGeometryHelper.h"
Static Public Member Functions | |
static float | MergeTwoPositions (const pandora::Pandora &pandora, const pandora::HitType view1, const pandora::HitType view2, const float position1, const float position2) |
Merge two views (U,V) to give a third view (Z). More... | |
static pandora::CartesianVector | MergeTwoDirections (const pandora::Pandora &pandora, const pandora::HitType view1, const pandora::HitType view2, const pandora::CartesianVector &direction1, const pandora::CartesianVector &direction2) |
Merge two views (U,V) to give a third view (Z). More... | |
static void | MergeTwoPositions (const pandora::Pandora &pandora, const pandora::HitType view1, const pandora::HitType view2, const pandora::CartesianVector &position1, const pandora::CartesianVector &position2, pandora::CartesianVector &position3, float &chiSquared) |
Merge 2D positions from two views to give 2D position in third view. More... | |
static void | MergeTwoPositions (const pandora::Pandora &pandora, const pandora::HitType view1, const pandora::HitType view2, const pandora::CartesianVector &position1, const pandora::CartesianVector &position2, pandora::CartesianVector &outputU, pandora::CartesianVector &outputV, pandora::CartesianVector &outputW, float &chiSquared) |
Merge 2D positions from two views to give 2D position in third view. More... | |
static void | MergeThreePositions (const pandora::Pandora &pandora, const pandora::HitType view1, const pandora::HitType view2, const pandora::HitType view3, const pandora::CartesianVector &position1, const pandora::CartesianVector &position2, const pandora::CartesianVector &position3, pandora::CartesianVector &outputU, pandora::CartesianVector &outputV, pandora::CartesianVector &outputW, float &chiSquared) |
Merge 2D positions from three views to give unified 2D positions for each view. More... | |
static void | MergeThreePositions (const pandora::Pandora &pandora, const pandora::CartesianVector &positionU, const pandora::CartesianVector &positionV, const pandora::CartesianVector &positionW, pandora::CartesianVector &outputU, pandora::CartesianVector &outputV, pandora::CartesianVector &outputW, float &chiSquared) |
Merge 2D positions from three views to give unified 2D positions for each view. More... | |
static void | MergeTwoPositions3D (const pandora::Pandora &pandora, const pandora::HitType view1, const pandora::HitType view2, const pandora::CartesianVector &position1, const pandora::CartesianVector &position2, pandora::CartesianVector &position3D, float &chiSquared) |
Merge 2D positions from two views to give unified 3D position. More... | |
static void | MergeThreePositions3D (const pandora::Pandora &pandora, const pandora::HitType view1, const pandora::HitType view2, const pandora::HitType view3, const pandora::CartesianVector &position1, const pandora::CartesianVector &position2, const pandora::CartesianVector &position3, pandora::CartesianVector &position3D, float &chiSquared) |
Merge 2D positions from three views to give unified 3D position. More... | |
static pandora::CartesianVector | ProjectPosition (const pandora::Pandora &pandora, const pandora::CartesianVector &position3D, const pandora::HitType view) |
Project 3D position into a given 2D view. More... | |
static pandora::CartesianVector | ProjectDirection (const pandora::Pandora &pandora, const pandora::CartesianVector &direction3D, const pandora::HitType view) |
Project 3D direction into a given 2D view. More... | |
static float | GetWireZPitch (const pandora::Pandora &pandora, const float maxWirePitchDiscrepancy=0.01) |
Return the wire pitch. More... | |
static float | GetWirePitch (const pandora::Pandora &pandora, const pandora::HitType view, const float maxWirePitchDiscrepancy=0.01) |
Return the wire pitch. More... | |
static pandora::CartesianVector | GetWireAxis (const pandora::Pandora &pandora, const pandora::HitType view) |
Return the wire axis (vector perpendicular to the wire direction and drift direction) More... | |
static bool | IsInGap (const pandora::Pandora &pandora, const pandora::CartesianVector &testPoint2D, const pandora::HitType hitType, const float gapTolerance=0.f) |
Whether a 2D test point lies in a registered gap with the associated hit type. More... | |
static bool | IsInGap3D (const pandora::Pandora &pandora, const pandora::CartesianVector &testPoint3D, const pandora::HitType hitType, const float gapTolerance=0.f) |
Whether a 3D test point lies in a registered gap with the associated hit type. More... | |
static bool | IsXSamplingPointInGap (const pandora::Pandora &pandora, const float xSample, const TwoDSlidingFitResult &slidingFitResult, const float gapTolerance=0.f) |
Whether there is a gap in a cluster (described via its sliding fit result) at a specified x sampling position. More... | |
static float | CalculateGapDeltaZ (const pandora::Pandora &pandora, const float minZ, const float maxZ, const pandora::HitType hitType) |
Calculate the total distance within a given 2D region that is composed of detector gaps. More... | |
static float | GetSigmaUVW (const pandora::Pandora &pandora, const float maxSigmaDiscrepancy=0.01) |
Find the sigmaUVW value for the detector geometry. More... | |
LArGeometryHelper class.
Definition at line 28 of file LArGeometryHelper.h.
|
static |
Calculate the total distance within a given 2D region that is composed of detector gaps.
pandora | the associated pandora instance |
minZ | the start position in Z |
maxZ | the end position in Z |
hitType | the hit type |
Definition at line 462 of file LArGeometryHelper.cc.
Referenced by lar_content::TwoDLinearFitFeatureTool::CalculateVariablesSlidingLinearFit(), lar_content::ThreeDLinearFitFeatureTool::CalculateVariablesSlidingLinearFit(), and lar_content::CrossGapsExtensionAlgorithm::IsAcrossGap().
|
static |
Find the sigmaUVW value for the detector geometry.
pandora | the associated pandora instance |
maxSigmaDiscrepancy | maximum allowed discrepancy between lar tpc sigmaUVW values |
Definition at line 500 of file LArGeometryHelper.cc.
Referenced by lar_content::ThreeDHitCreationAlgorithm::GetChi2WrtFit(), lar_content::ThreeDHitCreationAlgorithm::GetHitMovementChi2(), lar_content::ThreeDHitCreationAlgorithm::RefineHitPositions(), and lar_content::HitCreationBaseTool::~HitCreationBaseTool().
|
static |
Return the wire axis (vector perpendicular to the wire direction and drift direction)
pandora | the associated pandora instance |
view | the 2D projection |
Definition at line 375 of file LArGeometryHelper.cc.
References f.
|
static |
Return the wire pitch.
pandora | the associated pandora instance |
view | the 2D projection |
maxWirePitchDiscrepancy | maximum allowed discrepancy between lar tpc wire pitch values |
Definition at line 342 of file LArGeometryHelper.cc.
|
inlinestatic |
Return the wire pitch.
pandora | the associated pandora instance |
maxWirePitchDiscrepancy | maximum allowed discrepancy between lar tpc wire pitch value in the w view |
Definition at line 260 of file LArGeometryHelper.h.
Referenced by lar_content::ThreeDShowersAlgorithm::AddToSlidingFitCache(), lar_content::ThreeDTracksBaseAlgorithm< T >::AddToSlidingFitCache(), lar_content::CandidateVertexCreationAlgorithm::AddToSlidingFitCache(), lar_content::DeltaRayMatchingAlgorithm::AreClustersMatched(), lar_content::CosmicRayVertexBuildingAlgorithm::BuildPointingClusterMap(), lar_content::NeutrinoDaughterVerticesAlgorithm::BuildPointingClusterMap(), lar_content::TrackHitsBaseTool::BuildSlidingFitMap(), lar_content::CosmicRaySplittingAlgorithm::BuildSlidingFitResultMap(), lar_content::TwoDSlidingFitMultiSplitAlgorithm::BuildSlidingFitResultMap(), lar_content::CosmicRayTrackRecoveryAlgorithm::BuildSlidingFitResultMap(), lar_content::VertexBasedPfoRecoveryAlgorithm::BuildSlidingFitResultMap(), lar_content::TwoDSlidingFitSplittingAndSwitchingAlgorithm::BuildSlidingFitResultMap(), lar_content::TwoDSlidingFitSplittingAndSplicingAlgorithm::BuildSlidingFitResultMap(), lar_content::TwoDSlidingFitConsolidationAlgorithm::BuildSlidingLinearFits(), lar_content::VertexSelectionBaseAlgorithm::CalculateClusterSlidingFits(), lar_content::ParticleRecoveryAlgorithm::CalculateEffectiveSpan(), lar_content::SvmVertexSelectionAlgorithm::CalculateShowerClusterList(), lar_content::TwoDLinearFitFeatureTool::CalculateVariablesSlidingLinearFit(), lar_content::ThreeDLinearFitFeatureTool::CalculateVariablesSlidingLinearFit(), lar_content::ConeClusterMopUpAlgorithm::ClusterMopUp(), lar_content::BoundedClusterMopUpAlgorithm::ClusterMopUp(), lar_content::CutPfoCharacterisationAlgorithm::CutPfoCharacterisationAlgorithm(), lar_content::SlidingConePfoMopUpAlgorithm::GetClusterMergeMap(), lar_content::SlidingConeClusterMopUpAlgorithm::GetClusterMergeMap(), lar_content::EventSlicingTool::GetClusterSliceList(), lar_content::NeutrinoHierarchyAlgorithm::GetInitialPfoInfoMap(), lar_content::ThreeDTrackFragmentsAlgorithm::GetProjectedPositions(), lar_content::CutClusterCharacterisationAlgorithm::GetShowerFitWidth(), lar_content::MissingTrackSegmentTool::GetSlidingFitResultMap(), lar_content::CutClusterCharacterisationAlgorithm::IsClearTrack(), lar_content::ThreeDHitCreationAlgorithm::IterativeTreatment(), lar_content::LArParticleIdPlugins::LArMuonId::LArMuonId(), lar_content::CrossGapsAssociationAlgorithm::PopulateClusterAssociationMap(), lar_content::TwoDShowerFitFeatureTool::Run(), lar_content::TwoDVertexDistanceFeatureTool::Run(), and lar_content::TwoDSlidingFitSplittingAlgorithm::TwoDSlidingFitSplittingAlgorithm().
|
static |
Whether a 2D test point lies in a registered gap with the associated hit type.
pandora | the associated pandora instance |
testPoint | the test point |
hitType | the hit type |
gapTolerance | the gap tolerance |
Definition at line 403 of file LArGeometryHelper.cc.
Referenced by lar_content::CrossGapsExtensionAlgorithm::BuildPointingClusterList(), lar_content::TracksCrossingGapsTool::CheckXPositionInGap(), and lar_content::CrossGapsAssociationAlgorithm::IsAssociated().
|
static |
Whether a 3D test point lies in a registered gap with the associated hit type.
pandora | the associated pandora instance |
testPoint | the test point |
hitType | the hit type |
gapTolerance | the gap tolerance |
Definition at line 417 of file LArGeometryHelper.cc.
Referenced by lar_content::VertexSelectionBaseAlgorithm::IsVertexInGap().
|
static |
Whether there is a gap in a cluster (described via its sliding fit result) at a specified x sampling position.
pandora | the associated pandora instance |
xSample | the x sampling position |
slidingFitResult | the sliding fit result for a cluster |
gapTolerance | the gap tolerance |
Definition at line 425 of file LArGeometryHelper.cc.
References f, lar_content::TwoDSlidingFitResult::GetCluster(), lar_content::TwoDSlidingFitResult::GetGlobalFitPositionAtX(), lar_content::TwoDSlidingFitResult::GetGlobalMaxLayerDirection(), lar_content::TwoDSlidingFitResult::GetGlobalMaxLayerPosition(), lar_content::TwoDSlidingFitResult::GetGlobalMinLayerDirection(), and lar_content::TwoDSlidingFitResult::GetGlobalMinLayerPosition().
Referenced by lar_content::ParticleRecoveryAlgorithm::CalculateEffectiveSpan(), and lar_content::TracksCrossingGapsTool::CheckXPositionInGap().
|
static |
Merge 2D positions from three views to give unified 2D positions for each view.
pandora | the associated pandora instance |
view1 | the first view |
view2 | the second view |
view3 | the third view |
position1 | the position in the first view |
position2 | the position in the second view |
position3 | the position in the third view |
positionU | output position in the U view |
positionV | output position in the V view |
positionW | output position in the W view |
chi-squared |
Referenced by lar_content::ThreeDLongitudinalTracksAlgorithm::ThreeDLongitudinalTracksAlgorithm().
|
static |
Merge 2D positions from three views to give unified 2D positions for each view.
pandora | the associated pandora instance |
positionU | input position in the U view |
positionV | input position in the V view |
positionW | input position in the W view |
positionU | output position in the U view |
positionV | output position in the V view |
positionW | output position in the W view |
chi-squared |
|
static |
Merge 2D positions from three views to give unified 3D position.
pandora | the associated pandora instance |
view1 | the first view |
view2 | the second view |
view3 | the third view |
position1 | the position in the first view |
position2 | the position in the second view |
position3 | the position in the third view |
position3D | output position in 3D |
chi-squared |
Definition at line 286 of file LArGeometryHelper.cc.
References f.
Referenced by lar_content::UndershootTracksTool::IsThreeDKink(), lar_content::OvershootTracksTool::IsThreeDKink(), and lar_content::VertexBasedPfoRecoveryAlgorithm::MatchTwoViews().
|
static |
Merge two views (U,V) to give a third view (Z).
pandora | the associated pandora instance |
view1 | the first view |
view2 | the second view |
direction1 | the direction in the first view |
direction2 | the direction in the second view |
Definition at line 71 of file LArGeometryHelper.cc.
|
static |
Merge two views (U,V) to give a third view (Z).
pandora | the associated pandora instance |
view1 | the first view |
view2 | the second view |
position1 | the position in the first view |
position2 | the position in the second view |
Referenced by lar_content::DeltaRayMatchingAlgorithm::AreClustersMatched(), lar_content::ThreeDRemnantsAlgorithm::CalculateOverlapResult(), lar_content::ParticleRecoveryAlgorithm::CheckConsistency(), lar_content::CosmicRayTrackMatchingAlgorithm::CheckMatchedClusters3D(), lar_content::CosmicRayShowerMatchingAlgorithm::CheckMatchedClusters3D(), lar_content::TracksCrossingGapsTool::CheckXPositionInGap(), lar_content::ThreeDTrackFragmentsAlgorithm::GetProjectedPositions(), lar_content::ThreeDTransverseTracksAlgorithm::GetSegmentOverlap(), lar_content::MissingTrackSegmentTool::GetSegmentOverlapMap(), lar_content::ThreeViewShowerHitsTool::GetShowerHit3D(), lar_content::ThreeDShowersAlgorithm::GetShowerPositionMaps(), lar_content::TrackSplittingTool::PassesChecks(), and lar_content::OvershootTracksTool::SetSplitPosition().
|
static |
Merge 2D positions from two views to give 2D position in third view.
pandora | the associated pandora instance |
view1 | the first view |
view2 | the second view |
position1 | the position in the first view |
position2 | the position in the second view |
position3 | output position in the third view |
chi-squared |
|
static |
Merge 2D positions from two views to give 2D position in third view.
view1 | the first view |
view2 | the second view |
position1 | the position in the first view |
position2 | the position in the second view |
positionU | output position in the U view |
positionV | output position in the V view |
positionW | output position in the W view |
chi-squared |
|
static |
Merge 2D positions from two views to give unified 3D position.
pandora | the associated pandora instance |
view1 | the first view |
view2 | the second view |
position1 | the position in the first view |
position2 | the position in the second view |
position3D | output position in 3D |
chi-squared |
Definition at line 274 of file LArGeometryHelper.cc.
References f.
Referenced by lar_content::CandidateVertexCreationAlgorithm::CreateCrossingVertices(), lar_content::CandidateVertexCreationAlgorithm::CreateEndpointVertex(), lar_content::ThreeDTrackFragmentsAlgorithm::GetProjectedPositions(), lar_content::VertexBasedPfoRecoveryAlgorithm::MatchTwoViews(), lar_content::ThreeDLongitudinalTracksAlgorithm::ThreeDLongitudinalTracksAlgorithm(), lar_content::LongitudinalTrackHitsBaseTool::UpdateBestPosition(), and lar_content::HitCreationBaseTool::~HitCreationBaseTool().
|
static |
Project 3D direction into a given 2D view.
pandora | the associated pandora instance |
direction3D | the direction in 3D |
view | the 2D projection |
Definition at line 320 of file LArGeometryHelper.cc.
|
static |
Project 3D position into a given 2D view.
pandora | the associated pandora instance |
position3D | the position in 3D |
view | the 2D projection |
Definition at line 298 of file LArGeometryHelper.cc.
Referenced by lar_content::SplitShowersTool::CheckClusterVertexRelations(), lar_content::ConeClusterMopUpAlgorithm::ClusterMopUp(), lar_content::NearbyClusterMopUpAlgorithm::ClusterMopUp(), lar_content::RPhiFeatureTool::FillKernelEstimate(), lar_content::VertexSplittingAlgorithm::FindBestSplitPosition(), lar_content::ShowerGrowingAlgorithm::GetAllVertexSeedCandidates(), lar_content::VertexBasedPfoMopUpAlgorithm::GetClusterAssociation(), lar_content::SlidingConeClusterMopUpAlgorithm::GetClusterMergeMap(), lar_content::ShowerGrowingAlgorithm::GetFigureOfMerit(), lar_content::ThreeDHitCreationAlgorithm::GetHitMovementChi2(), lar_content::VertexBasedPfoMopUpAlgorithm::GetInputPfos(), lar_content::EventSlicingTool::GetKDTreeEntries3D(), lar_content::ThreeDTrackFragmentsAlgorithm::GetProjectedPositions(), lar_content::LongitudinalTrackHitsBaseTool::GetVertexAndEndPositions(), lar_content::CutClusterCharacterisationAlgorithm::GetVertexDistance(), lar_content::VertexSelectionBaseAlgorithm::IsVertexOnHit(), lar_content::VertexBasedPfoRecoveryAlgorithm::MatchTwoViews(), lar_content::ThreeDChargeFeatureTool::OrderCaloHitsByDistanceToVertex(), lar_content::EnergyKickFeatureTool::Run(), lar_content::GlobalAsymmetryFeatureTool::Run(), lar_content::LocalAsymmetryFeatureTool::Run(), lar_content::ShowerAsymmetryFeatureTool::Run(), lar_content::VertexBasedPfoRecoveryAlgorithm::SelectVertexClusters(), and lar_content::ThreeDLongitudinalTracksAlgorithm::ThreeDLongitudinalTracksAlgorithm().