ATLAS Offline Software
ActsMuonTrackingGeometryTest.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ACTSMUONTRACKINGGEOMETRYTEST_ACTSMUONTRACKINGGEOMETRYTEST_H
6 #define ACTSMUONTRACKINGGEOMETRYTEST_ACTSMUONTRACKINGGEOMETRYTEST_H
7 
10 
19 
24 
25 
29 
30 class IAthRNGSvc;
31 
32 
33 namespace ActsTrk {
34 
38 
39  public:
41 
43 
44  StatusCode initialize() override;
45  StatusCode execute() override;
46  StatusCode finalize() override;
47 
48  private:
49 
51 
52  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "IdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
53 
54  ServiceHandle<IAthRNGSvc> m_rndmGenSvc{this, "AthRNGSvc", "AthRNGSvc"};
55 
56  PublicToolHandle<ActsTrk::ITrackingGeometryTool> m_trackingGeometryTool{this, "TrackingGeometryTool", "ActsTrackingGeometryTool"};
57 
59  "MuonDetectorManager", "MuonManager ReadKey for IOV Range intersection"};
60 
62  "fieldCondObj", "Name of the Magnetic Field conditions object key"};
63 
64  SG::ReadHandleKey<ActsTrk::GeometryContext> m_geoCtxKey{this, "AlignmentKey", "ActsAlignment", "cond handle key"};
65 
67 
68  SG::ReadDecorHandleKey<xAOD::TruthParticleContainer> m_truthSegLinkKey{this, "TruthKeyToSeg", m_truthParticleKey, "truthSegmentLinks", "TruthParticle to TruthSegment link"};
69 
70  UnsignedIntegerProperty m_nEvents{this, "nEvents", 100};
71 
72  DoubleProperty m_pathLimit{this, "PathLimit", 30.*Gaudi::Units::m};
73 
74  DoubleProperty m_maxStepSize{this, "MaxStepSize", 1*Gaudi::Units::m};
75 
76  UnsignedIntegerProperty m_maxSteps{this, "MaxSteps", 100000};
77 
78  UnsignedIntegerProperty m_maxTargetSkipping{this, "MaxTargetSkipping", 10000};
79 
80  DoubleProperty m_stepTolerance{this, "StepTolerance", 1e-10};
81 
82  Gaudi::Property<bool> m_startFromFirstHit{this, "StartFromFirstHit", false, "Start from first hit"};
83 
84  Amg::Transform3D toLocalTrf(const ActsTrk::GeometryContext& gctx, const Identifier& hitId) const;
85 
86  Amg::Transform3D toGlobalTrf(const ActsTrk::GeometryContext& gctx, const Identifier& hitId) const;
87 
88  IdentifierHash layerHash(const Identifier& id) const;
89 
90  Gaudi::Property<std::vector<double>> m_etaRange{this, "EtaRange", {-3, 3}, "The eta range for particles"};
91 
92  MuonVal::MuonTesterTree m_tree{"MuonNavigationTestGen3R4", "MuonNavigationTestGen3R4"};
112 
113 
114  };
115 }
116 
117 #endif
ReadHandleKeyArray.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
ActsTrk::ActsMuonTrackingGeometryTest::m_maxTargetSkipping
UnsignedIntegerProperty m_maxTargetSkipping
Definition: ActsMuonTrackingGeometryTest.h:78
AllowedVariables::e
e
Definition: AsgElectronSelectorTool.cxx:37
ActsTrk::ActsMuonTrackingGeometryTest::m_actsPropLoc
MuonVal::ThreeVectorBranch m_actsPropLoc
Definition: ActsMuonTrackingGeometryTest.h:103
AthHistogramAlgorithm::AthHistogramAlgorithm
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Definition: AthHistogramAlgorithm.cxx:31
ActsTrk::ActsMuonTrackingGeometryTest::execute
StatusCode execute() override
Definition: ActsMuonTrackingGeometryTest.cxx:107
ActsTrk::ActsMuonTrackingGeometryTest::m_startGlob
MuonVal::ThreeVectorBranch m_startGlob
Definition: ActsMuonTrackingGeometryTest.h:101
MuonGMR4::MuonDetectorManager
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h:62
ActsTrk::ActsMuonTrackingGeometryTest::m_truthLoc
MuonVal::ThreeVectorBranch m_truthLoc
Definition: ActsMuonTrackingGeometryTest.h:96
ActsTrk::ActsMuonTrackingGeometryTest::toGlobalTrf
Amg::Transform3D toGlobalTrf(const ActsTrk::GeometryContext &gctx, const Identifier &hitId) const
Definition: ActsMuonTrackingGeometryTest.cxx:72
ActsTrk::ActsMuonTrackingGeometryTest::m_etaRange
Gaudi::Property< std::vector< double > > m_etaRange
Definition: ActsMuonTrackingGeometryTest.h:90
ActsTrk::ActsMuonTrackingGeometryTest::m_truthParticleKey
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthParticleKey
Definition: ActsMuonTrackingGeometryTest.h:66
ActsTrk::ActsMuonTrackingGeometryTest::m_detMgrKey
SG::ReadCondHandleKey< MuonGM::MuonDetectorManager > m_detMgrKey
Definition: ActsMuonTrackingGeometryTest.h:58
ActsTrk::ActsMuonTrackingGeometryTest::m_maxStepSize
DoubleProperty m_maxStepSize
Definition: ActsMuonTrackingGeometryTest.h:74
TruthParticleContainer.h
ActsTrk::ActsMuonTrackingGeometryTest::m_maxSteps
UnsignedIntegerProperty m_maxSteps
Definition: ActsMuonTrackingGeometryTest.h:76
ActsTrk::ActsMuonTrackingGeometryTest::m_detId
MuonVal::MuonIdentifierBranch m_detId
Definition: ActsMuonTrackingGeometryTest.h:93
ActsTrk::ActsMuonTrackingGeometryTest::m_truthPt
MuonVal::ScalarBranch< float > & m_truthPt
Definition: ActsMuonTrackingGeometryTest.h:99
ActsTrk::ActsMuonTrackingGeometryTest::m_rndmGenSvc
ServiceHandle< IAthRNGSvc > m_rndmGenSvc
Definition: ActsMuonTrackingGeometryTest.h:54
ActsTrk::ActsMuonTrackingGeometryTest::finalize
StatusCode finalize() override
Definition: ActsMuonTrackingGeometryTest.cxx:102
ATLASMagneticFieldWrapper.h
ActsTrk::ActsMuonTrackingGeometryTest::m_propLength
MuonVal::ScalarBranch< float > & m_propLength
Definition: ActsMuonTrackingGeometryTest.h:108
ActsTrk::ActsMuonTrackingGeometryTest::m_startFromFirstHit
Gaudi::Property< bool > m_startFromFirstHit
Definition: ActsMuonTrackingGeometryTest.h:82
IExtrapolationTool.h
ActsTrk::ActsMuonTrackingGeometryTest::m_actsPropabsMomentum
MuonVal::VectorBranch< float > & m_actsPropabsMomentum
Definition: ActsMuonTrackingGeometryTest.h:102
MuonVal::VectorBranch< unsigned short >
MuonTesterTree.h
ThreeVectorBranch.h
SG::ReadHandleKey< ActsTrk::GeometryContext >
ActsTrk::ActsMuonTrackingGeometryTest::m_nEvents
UnsignedIntegerProperty m_nEvents
Definition: ActsMuonTrackingGeometryTest.h:70
ActsTrk::ActsMuonTrackingGeometryTest::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: ActsMuonTrackingGeometryTest.h:52
ActsTrk::ActsMuonTrackingGeometryTest::m_trackingGeometryTool
PublicToolHandle< ActsTrk::ITrackingGeometryTool > m_trackingGeometryTool
Definition: ActsMuonTrackingGeometryTest.h:56
MuonVal::ThreeVectorBranch
Definition: ThreeVectorBranch.h:19
AthHistogramAlgorithm.h
ActsTrk::ActsMuonTrackingGeometryTest::m_propSteps
MuonVal::ScalarBranch< unsigned int > & m_propSteps
Definition: ActsMuonTrackingGeometryTest.h:110
ActsTrk::ActsMuonTrackingGeometryTest::m_gasGapId
MuonVal::VectorBranch< unsigned short > & m_gasGapId
Definition: ActsMuonTrackingGeometryTest.h:95
ActsTrk::ActsMuonTrackingGeometryTest::layerHash
IdentifierHash layerHash(const Identifier &id) const
Definition: ActsMuonTrackingGeometryTest.cxx:80
ActsTrk::ActsMuonTrackingGeometryTest::toLocalTrf
Amg::Transform3D toLocalTrf(const ActsTrk::GeometryContext &gctx, const Identifier &hitId) const
Definition: ActsMuonTrackingGeometryTest.cxx:65
ActsTrk::ActsMuonTrackingGeometryTest::m_fieldCacheCondObjInputKey
SG::ReadCondHandleKey< AtlasFieldCacheCondObj > m_fieldCacheCondObjInputKey
Definition: ActsMuonTrackingGeometryTest.h:61
MuonVal::MuonTesterTree
Definition: MuonTesterTree.h:30
IdentifierBranch.h
ActsTrk::ActsMuonTrackingGeometryTest::m_truthP
MuonVal::ScalarBranch< float > & m_truthP
Definition: ActsMuonTrackingGeometryTest.h:100
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
ActsTrk::ActsMuonTrackingGeometryTest::m_geoCtxKey
SG::ReadHandleKey< ActsTrk::GeometryContext > m_geoCtxKey
Definition: ActsMuonTrackingGeometryTest.h:64
MuonDetectorManager.h
ActsTrk::ActsMuonTrackingGeometryTest::m_stepTolerance
DoubleProperty m_stepTolerance
Definition: ActsMuonTrackingGeometryTest.h:80
MuonSimHitContainer.h
ActsTrk::ActsMuonTrackingGeometryTest
Extrapolation test for the ActsMuonTrackingGeometry for gen3.
Definition: ActsMuonTrackingGeometryTest.h:37
ActsTrk::GeometryContext
Definition: GeometryContext.h:28
MuonVal::MuonTesterTree::newVector
VectorBranch< T > & newVector(const std::string &name)
Creates new branches and returns their reference.
AthHistogramAlgorithm
Definition: AthHistogramAlgorithm.h:32
ActsTrk::ActsMuonTrackingGeometryTest::m_truthSegLinkKey
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer > m_truthSegLinkKey
Definition: ActsMuonTrackingGeometryTest.h:68
ActsTrk::ActsMuonTrackingGeometryTest::~ActsMuonTrackingGeometryTest
~ActsMuonTrackingGeometryTest()=default
ReadCondHandleKey.h
ActsTrk::ActsMuonTrackingGeometryTest::m_techIdx
MuonVal::VectorBranch< unsigned short > & m_techIdx
Definition: ActsMuonTrackingGeometryTest.h:94
MuonVal::ScalarBranch< float >
MuonVal::MuonTesterTree::newScalar
ScalarBranch< T > & newScalar(const std::string &name)
MuonVal::MuonIdentifierBranch
Class to dump the basic properties of an Identifier into an n-tuple StationName -> BIS,...
Definition: IdentifierBranch.h:21
ActsTrk::ActsMuonTrackingGeometryTest::m_truthGlob
MuonVal::ThreeVectorBranch m_truthGlob
Definition: ActsMuonTrackingGeometryTest.h:97
MuonDetectorManager.h
ActsTrk::ActsMuonTrackingGeometryTest::m_actsHitWireDist
MuonVal::VectorBranch< float > & m_actsHitWireDist
Definition: ActsMuonTrackingGeometryTest.h:106
SG::ReadCondHandleKey< MuonGM::MuonDetectorManager >
ActsTrk::ActsMuonTrackingGeometryTest::m_pathLimit
DoubleProperty m_pathLimit
Definition: ActsMuonTrackingGeometryTest.h:72
ActsTrk::ActsMuonTrackingGeometryTest::m_r4DetMgr
const MuonGMR4::MuonDetectorManager * m_r4DetMgr
Definition: ActsMuonTrackingGeometryTest.h:50
ActsTrk::ActsMuonTrackingGeometryTest::m_isPropagated
MuonVal::VectorBranch< unsigned short > & m_isPropagated
Definition: ActsMuonTrackingGeometryTest.h:109
ITrackingGeometryTool.h
ActsTrk::ActsMuonTrackingGeometryTest::initialize
StatusCode initialize() override
Definition: ActsMuonTrackingGeometryTest.cxx:85
IAthRNGSvc
manage multiple RandomEngines in thread-safe way.
Definition: IAthRNGSvc.h:28
ActsTrk::ActsMuonTrackingGeometryTest::m_actsPropGlob
MuonVal::ThreeVectorBranch m_actsPropGlob
Definition: ActsMuonTrackingGeometryTest.h:104
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MdtCalibInput.h:31
ActsTrk::ActsMuonTrackingGeometryTest::m_tree
MuonVal::MuonTesterTree m_tree
Definition: ActsMuonTrackingGeometryTest.h:92
ActsTrk::ActsMuonTrackingGeometryTest::m_event
MuonVal::ScalarBranch< unsigned int > & m_event
Definition: ActsMuonTrackingGeometryTest.h:111
SG::ReadDecorHandleKey< xAOD::TruthParticleContainer >
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
ActsTrk::ActsMuonTrackingGeometryTest::m_actsStepSize
MuonVal::VectorBranch< float > & m_actsStepSize
Definition: ActsMuonTrackingGeometryTest.h:107
ActsTrackingGeometrySvc.h
IMuonIdHelperSvc.h
ActsTrk::ActsMuonTrackingGeometryTest::m_truthDir
MuonVal::ThreeVectorBranch m_truthDir
Definition: ActsMuonTrackingGeometryTest.h:98
ActsTrk::ActsMuonTrackingGeometryTest::m_actsPropDir
MuonVal::ThreeVectorBranch m_actsPropDir
Definition: ActsMuonTrackingGeometryTest.h:105
python.SystemOfUnits.m
float m
Definition: SystemOfUnits.py:106
IAthRNGSvc.h
ServiceHandle< Muon::IMuonIdHelperSvc >
Identifier
Definition: IdentifierFieldParser.cxx:14