CMS 3D CMS Logo

ParticlePropagator.h
Go to the documentation of this file.
1 /*Emacs: -*- C++ -*- */
2 #ifndef PARTICLEPROPAGATOR_H
3 #define PARTICLEPROPAGATOR_H
4 
19 // FAMOS Headers
22 
23 class TrackerLayer;
24 class FSimTrack;
26 class MagneticFieldMap;
27 
29 public:
32 
36  ParticlePropagator(const RawParticle& myPart,
37  double R,
38  double Z,
39  const MagneticFieldMap* aFieldMap,
40  const RandomEngineAndDistribution* engine,
42 
45  ParticlePropagator(const RawParticle& myPart,
46  const MagneticFieldMap* aFieldMap,
47  const RandomEngineAndDistribution* engine,
49 
53  const XYZTLorentzVector& v,
54  float q,
55  const MagneticFieldMap* aFieldMap,
57 
61  const XYZVector& v,
62  float q,
63  const MagneticFieldMap* aFieldMap,
65 
68  const MagneticFieldMap* aFieldMap,
69  const RandomEngineAndDistribution* engine,
71 
73  ParticlePropagator(const ParticlePropagator& myPropPart);
74  // ParticlePropagator(BaseParticlePropagator myPropPart);
76  const MagneticFieldMap* aFieldMap,
78 
80  void initProperDecayTime();
81 
85 
90  bool propagateToClosestApproach(double x0 = 0., double y0 = 0., bool first = true);
91  bool propagateToNominalVertex(const XYZTLorentzVector& hit2 = XYZTLorentzVector(0., 0., 0., 0.));
92 
94  double fieldMap(double x, double y, double z);
95  double fieldMap(const TrackerLayer& layer, double coord, int success);
96 
98  void setPropagationConditions(const TrackerLayer&, bool firstLoop = true);
99 
101 
102 private:
106 };
107 
108 #endif
DDAxes::y
cscDigiValidation_cfi.simTrack
simTrack
Definition: cscDigiValidation_cfi.py:29
RawParticle
Definition: RawParticle.h:37
ParticlePropagator::propagateToBoundSurface
bool propagateToBoundSurface(const TrackerLayer &)
Definition: ParticlePropagator.cc:139
ParticlePropagator::fieldMap
double fieldMap(double x, double y, double z)
Definition: ParticlePropagator.cc:125
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
MagneticFieldMap
Definition: MagneticFieldMap.h:18
BaseParticlePropagator.h
XYZVector
math::XYZVector XYZVector
Definition: RawParticle.h:26
ParticlePropagator::initProperDecayTime
void initProperDecayTime()
Definition: ParticlePropagator.cc:101
DDAxes::x
XYZTLorentzVector
math::XYZTLorentzVector XYZTLorentzVector
Definition: RawParticle.h:25
findQualityFiles.v
v
Definition: findQualityFiles.py:179
ParticlePropagator::particleDataTable
const HepPDT::ParticleDataTable * particleDataTable() const
Definition: ParticlePropagator.h:100
ParticlePropagator::propagated
ParticlePropagator propagated() const
Definition: ParticlePropagator.cc:121
ParticlePropagator::setPropagationConditions
void setPropagationConditions(const TrackerLayer &, bool firstLoop=true)
Definition: ParticlePropagator.cc:169
ParticlePropagator::theTable
const HepPDT::ParticleDataTable * theTable
Definition: ParticlePropagator.h:105
BaseParticlePropagator
Definition: BaseParticlePropagator.h:82
DDAxes::z
first
auto first
Definition: CAHitNtupletGeneratorKernelsImpl.h:112
ParticlePropagator::theFieldMap
const MagneticFieldMap * theFieldMap
Definition: ParticlePropagator.h:103
phase1PixelTopology::layer
constexpr std::array< uint8_t, layerIndexSize > layer
Definition: phase1PixelTopology.h:99
ParticleDataTable.h
TrackerLayer
Definition: TrackerLayer.h:13
ParticlePropagator
Definition: ParticlePropagator.h:28
ParticlePropagator::propagateToNominalVertex
bool propagateToNominalVertex(const XYZTLorentzVector &hit2=XYZTLorentzVector(0., 0., 0., 0.))
Definition: ParticlePropagator.cc:116
BaseParticlePropagator::success
int success
0:propagation still be done, 1:reached 'barrel', 2:reached 'endcaps'
Definition: BaseParticlePropagator.h:145
ParticlePropagator::propagateToClosestApproach
bool propagateToClosestApproach(double x0=0., double y0=0., bool first=true)
Definition: ParticlePropagator.cc:111
submitPVResolutionJobs.q
q
Definition: submitPVResolutionJobs.py:84
ParticlePropagator::random
const RandomEngineAndDistribution * random
Definition: ParticlePropagator.h:104
BaseParticlePropagator::firstLoop
bool firstLoop
Do only the first half-loop.
Definition: BaseParticlePropagator.h:154
FSimTrack
Definition: FSimTrack.h:30
BeamSpotPI::Z
Definition: BeamSpotPayloadInspectorHelper.h:33
TableParser.table
table
Definition: TableParser.py:111
dttmaxenums::R
Definition: DTTMax.h:29
ParticleDataTable
HepPDT::ParticleDataTable ParticleDataTable
Definition: ParticleDataTable.h:8
ParticlePropagator::ParticlePropagator
ParticlePropagator()
Default c'tor.
Definition: ParticlePropagator.cc:15
RandomEngineAndDistribution
Definition: RandomEngineAndDistribution.h:18