ATLAS Offline Software
ExtrapolatorTest.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // ExtrapolatorTest.h, (c) ATLAS Detector software
8 
9 #ifndef TRKEXALGS_TRKEXTRAPOLATORTEST_H
10 #define TRKEXALGS_TRKEXTRAPOLATORTEST_H
11 
12 // Gaudi includes
14 #include "GaudiKernel/MsgStream.h"
15 #include "GaudiKernel/IRndmGenSvc.h"
16 #include "GaudiKernel/RndmGenerators.h"
17 #include "GaudiKernel/ToolHandle.h"
18 #include <string>
19 #include <vector>
21 
22 namespace Trk
23 {
24 
25  class IExtrapolator;
26  class IPropagator;
27  class Surface;
28  class MagneticFieldProperties;
45  {
46  public:
47 
49  ExtrapolatorTest(const std::string& name, ISvcLocator* pSvcLocator);
52 
59 
60  private:
61 
62  void runTest( const Trk::Perigee& perigee );
63 
65 
67  ToolHandle<IExtrapolator> m_extrapolator;
68  ToolHandle<IPropagator> m_propagator;
70 
72  Rndm::Numbers* m_gaussDist;
73  Rndm::Numbers* m_flatDist;
74 
75  double m_sigmaD0;
76  double m_sigmaZ0;
77  double m_minPhi;
78  double m_maxPhi;
79  double m_minEta;
80  double m_maxEta;
81  double m_minP;
82  double m_maxP;
83 
85 
87 
89  unsigned int m_referenceSurfaces;
90 
91  std::vector<double> m_referenceSurfaceRadius;
92  std::vector<double> m_referenceSurfaceHalflength;
93  std::vector< std::vector<const Surface*> > m_referenceSurfaceTriples;
94 
97 
99  std::vector<Trk::Perigee> m_perigees;
101  };
102 } // end of namespace
103 
104 #endif
Trk::ExtrapolatorTest::m_maxEta
double m_maxEta
Maximal eta value.
Definition: ExtrapolatorTest.h:80
Trk::ExtrapolatorTest::m_referenceSurfaceNegativeBoundary
std::vector< double > m_referenceSurfaceNegativeBoundary
Definition: ExtrapolatorTest.h:95
Trk::ExtrapolatorTest::m_minPhi
double m_minPhi
Minimal phi value.
Definition: ExtrapolatorTest.h:77
Trk::ExtrapolatorTest::m_maxPhi
double m_maxPhi
Maximal phi value.
Definition: ExtrapolatorTest.h:78
TrackParameters.h
Trk::MagneticFieldProperties
Definition: MagneticFieldProperties.h:31
Trk::ExtrapolatorTest::m_minEta
double m_minEta
Minimal eta value.
Definition: ExtrapolatorTest.h:79
Trk::ExtrapolatorTest::m_referenceSurfacePositiveBoundary
std::vector< double > m_referenceSurfacePositiveBoundary
Definition: ExtrapolatorTest.h:96
Trk::ExtrapolatorTest::m_gaussDist
Rndm::Numbers * m_gaussDist
Random Number setup.
Definition: ExtrapolatorTest.h:72
Trk::ParametersT
Dummy class used to allow special convertors to be called for surfaces owned by a detector element.
Definition: EMErrorDetail.h:25
Trk::ExtrapolatorTest::finalize
StatusCode finalize()
standard Athena-Algorithm method
Definition: ExtrapolatorTest.cxx:150
Trk::ExtrapolatorTest::runTest
void runTest(const Trk::Perigee &perigee)
Definition: ExtrapolatorTest.cxx:181
Trk::ExtrapolatorTest::m_referenceSurfaceRadius
std::vector< double > m_referenceSurfaceRadius
Definition: ExtrapolatorTest.h:91
Surface
Definition: Trigger/TrigAccel/TrigCudaFitter/src/Surface.h:7
Trk::ExtrapolatorTest::execute
StatusCode execute()
standard Athena-Algorithm method
Definition: ExtrapolatorTest.cxx:172
Trk::ExtrapolatorTest::m_particleType
int m_particleType
the particle typre for the extrap.
Definition: ExtrapolatorTest.h:86
Trk::ExtrapolatorTest::m_referenceSurfaces
unsigned int m_referenceSurfaces
member variables for algorithm properties:
Definition: ExtrapolatorTest.h:89
Trk::ExtrapolatorTest::generatePerigee
Trk::Perigee generatePerigee()
Definition: ExtrapolatorTest.cxx:156
Trk::ExtrapolatorTest::m_sigmaD0
double m_sigmaD0
Sigma of distribution for D0.
Definition: ExtrapolatorTest.h:75
Trk::ExtrapolatorTest::m_maxP
double m_maxP
Maximal p value.
Definition: ExtrapolatorTest.h:82
AthAlgorithm.h
Trk::ExtrapolatorTest::~ExtrapolatorTest
~ExtrapolatorTest()
Default Destructor.
Definition: ExtrapolatorTest.cxx:71
Trk::ExtrapolatorTest::m_sigmaZ0
double m_sigmaZ0
Sigma of distribution for Z0.
Definition: ExtrapolatorTest.h:76
Trk::ExtrapolatorTest::initialize
StatusCode initialize()
standard Athena-Algorithm method
Definition: ExtrapolatorTest.cxx:92
Trk::ExtrapolatorTest::m_direction
int m_direction
extrapolation direction
Definition: ExtrapolatorTest.h:84
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Trk::ExtrapolatorTest::m_referenceSurfaceHalflength
std::vector< double > m_referenceSurfaceHalflength
Definition: ExtrapolatorTest.h:92
Trk::ExtrapolatorTest::m_useExtrapolator
bool m_useExtrapolator
Definition: ExtrapolatorTest.h:100
AthAlgorithm
Definition: AthAlgorithm.h:47
Trk::ExtrapolatorTest::m_perigees
std::vector< Trk::Perigee > m_perigees
Definition: ExtrapolatorTest.h:99
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::ExtrapolatorTest::ExtrapolatorTest
ExtrapolatorTest(const std::string &name, ISvcLocator *pSvcLocator)
Standard Athena-Algorithm Constructor.
Definition: ExtrapolatorTest.cxx:24
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
Trk::ExtrapolatorTest::m_minP
double m_minP
Minimal p value.
Definition: ExtrapolatorTest.h:81
Trk::ExtrapolatorTest
Definition: ExtrapolatorTest.h:45
Trk::ExtrapolatorTest::m_flatDist
Rndm::Numbers * m_flatDist
Definition: ExtrapolatorTest.h:73
Trk::ExtrapolatorTest::m_propagator
ToolHandle< IPropagator > m_propagator
Definition: ExtrapolatorTest.h:68
Trk::ExtrapolatorTest::m_extrapolator
ToolHandle< IExtrapolator > m_extrapolator
The Extrapolator to be retrieved.
Definition: ExtrapolatorTest.h:67
Trk::ExtrapolatorTest::m_referenceSurfaceTriples
std::vector< std::vector< const Surface * > > m_referenceSurfaceTriples
Definition: ExtrapolatorTest.h:93
Trk::ExtrapolatorTest::m_magFieldProperties
MagneticFieldProperties * m_magFieldProperties
magnetic field properties
Definition: ExtrapolatorTest.h:69
Trk::ExtrapolatorTest::m_eventsPerExecute
int m_eventsPerExecute
Definition: ExtrapolatorTest.h:98