CMS 3D CMS Logo

MaterialEffects.h
Go to the documentation of this file.
1 
2 #ifndef MaterialEffects_h
3 #define MaterialEffects_h
4 
28 //Framework Headers
29 //#include "FWCore/ParameterSet/interface/ParameterSet.h"
30 
31 // Geometry Headers
33 
34 #include <vector>
35 class FSimEvent;
36 class TrackerLayer;
37 class ParticlePropagator;
41 //class NuclearInteractionSimulator;
46 
47 namespace edm {
48  class ParameterSet;
49 }
50 
52 public:
54  MaterialEffects(const edm::ParameterSet& matEff);
55 
58 
61  void interact(FSimEvent& simEvent,
62  const TrackerLayer& layer,
64  unsigned i,
66 
68  void save();
69 
71  inline double thickness() const { return theThickness; }
72 
74  inline double energyLoss() const { return theEnergyLoss; }
75 
78 
81 
84 
85 private:
87  double radLengths(const TrackerLayer& layer, ParticlePropagator& myTrack);
88 
91 
92 private:
100 
101  // Cuts for material effects
102  double pTmin;
104  double theThickness;
107 
108  // debugging
109  // double myEta;
110 
112 };
113 
114 #endif
Vector3DBase
Definition: Vector3DBase.h:8
MaterialEffects::thickness
double thickness() const
Return the thickness of the current layer.
Definition: MaterialEffects.h:71
MaterialEffects::radLengths
double radLengths(const TrackerLayer &layer, ParticlePropagator &myTrack)
The number of radiation lengths traversed.
Definition: MaterialEffects.cc:381
MaterialEffects::MultipleScattering
MultipleScatteringSimulator * MultipleScattering
Definition: MaterialEffects.h:97
mps_fire.i
i
Definition: mps_fire.py:428
FSimEvent
Definition: FSimEvent.h:29
MaterialEffects::PairProduction
PairProductionSimulator * PairProduction
Definition: MaterialEffects.h:93
edm
HLT enums.
Definition: AlignableModifier.h:19
MaterialEffects::muonBremsstrahlungSimulator
MuonBremsstrahlungSimulator * muonBremsstrahlungSimulator() const
Return the Muon Bremsstrahlung engine.
Definition: MaterialEffects.h:83
MultipleScatteringSimulator
Definition: MultipleScatteringSimulator.h:26
MaterialEffects::energyLoss
double energyLoss() const
Return the energy loss by ionization in the current layer.
Definition: MaterialEffects.h:74
MaterialEffects
Definition: MaterialEffects.h:51
MaterialEffects::interact
void interact(FSimEvent &simEvent, const TrackerLayer &layer, ParticlePropagator &PP, unsigned i, RandomEngineAndDistribution const *)
Definition: MaterialEffects.cc:213
MaterialEffects::pTmin
double pTmin
Definition: MaterialEffects.h:102
MaterialEffects::~MaterialEffects
~MaterialEffects()
Default destructor.
Definition: MaterialEffects.cc:197
MaterialEffects::energyLossSimulator
EnergyLossSimulator * energyLossSimulator() const
Return the Energy Loss engine.
Definition: MaterialEffects.h:80
MaterialEffects::theNormalVector
GlobalVector theNormalVector
Definition: MaterialEffects.h:103
MaterialEffectsSimulator
Definition: MaterialEffectsSimulator.h:25
phase1PixelTopology::layer
constexpr std::array< uint8_t, layerIndexSize > layer
Definition: phase1PixelTopology.h:99
edm::ParameterSet
Definition: ParameterSet.h:47
ParameterSet
Definition: Functions.h:16
BremsstrahlungSimulator
Definition: BremsstrahlungSimulator.h:25
TrackerLayer
Definition: TrackerLayer.h:13
ParticlePropagator
Definition: ParticlePropagator.h:28
MaterialEffects::MaterialEffects
MaterialEffects(const edm::ParameterSet &matEff)
Constructor.
Definition: MaterialEffects.cc:26
PairProductionSimulator
Definition: PairProductionSimulator.h:24
MaterialEffects::theTECFudgeFactor
double theTECFudgeFactor
Definition: MaterialEffects.h:106
MaterialEffects::MuonBremsstrahlung
MuonBremsstrahlungSimulator * MuonBremsstrahlung
Definition: MaterialEffects.h:96
MaterialEffects::normalVector
GlobalVector normalVector(const TrackerLayer &layer, ParticlePropagator &myTrack) const
The vector normal to the surface traversed.
Definition: MaterialEffects.cc:416
MuonBremsstrahlungSimulator
Definition: MuonBremsstrahlungSimulator.h:29
GlobalVector.h
MaterialEffects::theEnergyLoss
double theEnergyLoss
Definition: MaterialEffects.h:105
EnergyLossSimulator
Definition: EnergyLossSimulator.h:25
MaterialEffects::save
void save()
Save nuclear interaction information.
Definition: MaterialEffects.cc:421
MaterialEffects::Bremsstrahlung
BremsstrahlungSimulator * Bremsstrahlung
Definition: MaterialEffects.h:94
MaterialEffects::multipleScatteringSimulator
MultipleScatteringSimulator * multipleScatteringSimulator() const
Return the Multiple Scattering engine.
Definition: MaterialEffects.h:77
MaterialEffects::EnergyLoss
EnergyLossSimulator * EnergyLoss
Definition: MaterialEffects.h:98
MaterialEffects::NuclearInteraction
MaterialEffectsSimulator * NuclearInteraction
Definition: MaterialEffects.h:99
MaterialEffects::use_hardcoded
bool use_hardcoded
Definition: MaterialEffects.h:111
RandomEngineAndDistribution
Definition: RandomEngineAndDistribution.h:18
MaterialEffects::theThickness
double theThickness
Definition: MaterialEffects.h:104