CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
ME0SimpleModel Class Reference

#include <ME0SimpleModel.h>

Inheritance diagram for ME0SimpleModel:
ME0DigiModel

Public Member Functions

int getSimHitBx (const PSimHit *, CLHEP::HepRandomEngine *)
 
 ME0SimpleModel (const edm::ParameterSet &)
 
void setup () override
 
std::vector< std::pair< int, int > > simulateClustering (const ME0EtaPartition *, const PSimHit *, const int, CLHEP::HepRandomEngine *) override
 
void simulateNoise (const ME0EtaPartition *, CLHEP::HepRandomEngine *) override
 
void simulateSignal (const ME0EtaPartition *, const edm::PSimHitContainer &, CLHEP::HepRandomEngine *) override
 
 ~ME0SimpleModel () override
 
- Public Member Functions inherited from ME0DigiModel
void fillDigis (int rollDetId, ME0DigiCollection &)
 
const ME0GeometrygetGeometry ()
 
const ME0DigiSimLinksme0DigiSimLinks () const
 
void setGeometry (const ME0Geometry *geom)
 
const StripDigiSimLinksstripDigiSimLinks () const
 
virtual ~ME0DigiModel ()
 

Private Attributes

double averageEfficiency_
 
double averageNoiseRate_
 
double averageShapingTime_
 
int bxwidth_
 
bool digitizeOnlyMuons_
 
bool doBkgNoise_
 
bool doNoiseCLS_
 
bool fixedRollRadius_
 
double instLumi_
 
int maxBunch_
 
double ME0ElecBkgParam0_
 
double ME0ElecBkgParam1_
 
double ME0ElecBkgParam2_
 
double ME0ElecBkgParam3_
 
double ME0NeuBkgParam0_
 
double ME0NeuBkgParam1_
 
double ME0NeuBkgParam2_
 
double ME0NeuBkgParam3_
 
int minBunch_
 
double rateFact_
 
double referenceInstLumi_
 
double signalPropagationSpeed_
 
bool simulateElectronBkg_
 
bool simulateIntrinsicNoise_
 
double timeJitter_
 
double timeResolution_
 

Additional Inherited Members

- Public Types inherited from ME0DigiModel
typedef edm::DetSet< ME0DigiSimLinkME0DigiSimLinks
 
typedef edm::DetSet< StripDigiSimLinkStripDigiSimLinks
 
- Protected Types inherited from ME0DigiModel
typedef std::multimap< std::pair< unsigned int, int >, const PSimHit *, std::less< std::pair< unsigned int, int > > > DetectorHitMap
 
- Protected Member Functions inherited from ME0DigiModel
void addLinks (unsigned int strip, int bx)
 creates links from Digi to SimTrack More...
 
void addLinksWithPartId (unsigned int strip, int bx)
 
 ME0DigiModel (const edm::ParameterSet &)
 
- Protected Attributes inherited from ME0DigiModel
DetectorHitMap detectorHitMap_
 
const ME0Geometrygeometry_
 
StripDigiSimLinks stripDigiSimLinks_
 
std::set< std::pair< int, int > > strips_
 
ME0DigiSimLinks theME0DigiSimLinks_
 

Detailed Description

Class for the ME0 strip response simulation based on a very simple model

Author
Sven Dildick by Roumyana Hadjiiska

Definition at line 24 of file ME0SimpleModel.h.

Constructor & Destructor Documentation

ME0SimpleModel::ME0SimpleModel ( const edm::ParameterSet config)

Definition at line 17 of file ME0SimpleModel.cc.

17  :
18 ME0DigiModel(config)
19 , averageEfficiency_(config.getParameter<double> ("averageEfficiency"))
20 , averageShapingTime_(config.getParameter<double> ("averageShapingTime"))
21 , timeResolution_(config.getParameter<double> ("timeResolution"))
22 , timeJitter_(config.getParameter<double> ("timeJitter"))
23 , averageNoiseRate_(config.getParameter<double> ("averageNoiseRate"))
24 , signalPropagationSpeed_(config.getParameter<double> ("signalPropagationSpeed"))
25 , bxwidth_(config.getParameter<int> ("bxwidth"))
26 , minBunch_(config.getParameter<int> ("minBunch"))
27 , maxBunch_(config.getParameter<int> ("maxBunch"))
28 , digitizeOnlyMuons_(config.getParameter<bool> ("digitizeOnlyMuons"))
29 , doBkgNoise_(config.getParameter<bool> ("doBkgNoise"))
30 , doNoiseCLS_(config.getParameter<bool> ("doNoiseCLS"))
31 , fixedRollRadius_(config.getParameter<bool> ("fixedRollRadius"))
32 , simulateElectronBkg_(config.getParameter<bool> ("simulateElectronBkg"))
33 , instLumi_(config.getParameter<double> ("instLumi"))
34 , rateFact_(config.getParameter<double> ("rateFact"))
35 , referenceInstLumi_(config.getParameter<double> ("referenceInstLumi"))
36 , ME0ElecBkgParam0_(config.getParameter<double> ("ME0ElecBkgParam0"))
37 , ME0ElecBkgParam1_(config.getParameter<double> ("ME0ElecBkgParam1"))
38 , ME0ElecBkgParam2_(config.getParameter<double> ("ME0ElecBkgParam2"))
39 , ME0ElecBkgParam3_(config.getParameter<double> ("ME0ElecBkgParam3"))
40 , ME0NeuBkgParam0_(config.getParameter<double> ("ME0NeuBkgParam0"))
41 , ME0NeuBkgParam1_(config.getParameter<double> ("ME0NeuBkgParam1"))
42 , ME0NeuBkgParam2_(config.getParameter<double> ("ME0NeuBkgParam2"))
43 , ME0NeuBkgParam3_(config.getParameter<double> ("ME0NeuBkgParam3"))
44 {
45 }
T getParameter(std::string const &) const
double averageShapingTime_
double ME0NeuBkgParam2_
double averageEfficiency_
bool simulateElectronBkg_
double averageNoiseRate_
double ME0ElecBkgParam0_
double referenceInstLumi_
double ME0NeuBkgParam0_
double ME0ElecBkgParam2_
double ME0NeuBkgParam3_
double signalPropagationSpeed_
double ME0ElecBkgParam3_
ME0DigiModel(const edm::ParameterSet &)
Definition: ME0DigiModel.h:61
double ME0ElecBkgParam1_
double ME0NeuBkgParam1_
double timeResolution_
ME0SimpleModel::~ME0SimpleModel ( )
override

Definition at line 47 of file ME0SimpleModel.cc.

48 {
49 }

Member Function Documentation

int ME0SimpleModel::getSimHitBx ( const PSimHit simhit,
CLHEP::HepRandomEngine *  engine 
)

Definition at line 100 of file ME0SimpleModel.cc.

References averageShapingTime_, bxwidth_, debug, PSimHit::detUnitId(), ME0Geometry::etaPartition(), Exception, ME0DigiModel::geometry_, triggerObjects_cff::id, PSimHit::localPosition(), LogDebug, signalPropagationSpeed_, mathSSE::sqrt(), timeJitter_, PSimHit::timeOfFlight(), timeResolution_, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().

Referenced by simulateSignal().

101 {
102  int bx = -999;
103  const LocalPoint& simHitPos(simhit->localPosition());
104  const float tof(simhit->timeOfFlight());
105  // random Gaussian time correction due to electronics jitter
106  float randomJitterTime = CLHEP::RandGaussQ::shoot(engine, 0., timeJitter_);
107  const ME0DetId& id(simhit->detUnitId());
108  const ME0EtaPartition* roll(geometry_->etaPartition(id));
109  if (!roll)
110  {
111  throw cms::Exception("Geometry")<< "ME0SimpleModel::getSimHitBx() - ME0 simhit id does not match any ME0 roll id: " << id << "\n";
112  return 999;
113  }
114  if (roll->id().region() == 0)
115  {
116  throw cms::Exception("Geometry") << "ME0SimpleModel::getSimHitBx() - this ME0 id is from barrel, which cannot happen: " << roll->id() << "\n";
117  }
118  const int nstrips = roll->nstrips();
119  float middleStrip = nstrips/2.;
120  const LocalPoint& middleOfRoll = roll->centreOfStrip(middleStrip);
121  const GlobalPoint& globMiddleRol = roll->toGlobal(middleOfRoll);
122  double muRadius = sqrt(globMiddleRol.x()*globMiddleRol.x() + globMiddleRol.y()*globMiddleRol.y() +globMiddleRol.z()*globMiddleRol.z());
123  double timeCalibrationOffset_ = (muRadius*CLHEP::ns*CLHEP::cm)/(CLHEP::c_light); //[cm/ns]
124  const TrapezoidalStripTopology* top(dynamic_cast<const TrapezoidalStripTopology*> (&(roll->topology())));
125  const float halfStripLength(0.5 * top->stripLength());
126  const float distanceFromEdge(halfStripLength - simHitPos.y());
127 
128  // signal propagation speed in material in [cm/ns]
129  double signalPropagationSpeedTrue = signalPropagationSpeed_ * CLHEP::c_light/(CLHEP::ns*CLHEP::cm);
130  // average time for the signal to propagate from the SimHit to the top of a strip
131  const float averagePropagationTime(distanceFromEdge / signalPropagationSpeedTrue);
132  // random Gaussian time correction due to the finite timing resolution of the detector
133  float randomResolutionTime = CLHEP::RandGaussQ::shoot(engine, 0., timeResolution_);
134  const float simhitTime(tof + averageShapingTime_ + randomResolutionTime + averagePropagationTime + randomJitterTime);
135  float referenceTime = 0.;
136  referenceTime = timeCalibrationOffset_ + halfStripLength / signalPropagationSpeedTrue + averageShapingTime_;
137  const float timeDifference(simhitTime - referenceTime);
138  // assign the bunch crossing
139  bx = static_cast<int> (std::round((timeDifference) / bxwidth_));
140 
141  // check time
142  const bool debug(false);
143  if (debug)
144  {
145  LogDebug("ME0SimpleModel")<< "checktime " << "bx = " << bx << "\tdeltaT = " << timeDifference << "\tsimT = " << simhitTime
146  << "\trefT = " << referenceTime << "\ttof = " << tof << "\tavePropT = " << averagePropagationTime
147  << "\taveRefPropT = " << halfStripLength / signalPropagationSpeedTrue << std::endl;
148  }
149  return bx;
150 }
#define LogDebug(id)
double averageShapingTime_
T y() const
Definition: PV3DBase.h:63
const ME0EtaPartition * etaPartition(ME0DetId id) const
Return a etaPartition given its id.
Definition: ME0Geometry.cc:64
const ME0Geometry * geometry_
Definition: ME0DigiModel.h:63
float timeOfFlight() const
Definition: PSimHit.h:69
Local3DPoint localPosition() const
Definition: PSimHit.h:44
T sqrt(T t)
Definition: SSEVec.h:18
T z() const
Definition: PV3DBase.h:64
#define debug
Definition: HDRShower.cc:19
double signalPropagationSpeed_
T x() const
Definition: PV3DBase.h:62
unsigned int detUnitId() const
Definition: PSimHit.h:93
double timeResolution_
void ME0SimpleModel::setup ( )
overridevirtual

Implements ME0DigiModel.

Definition at line 51 of file ME0SimpleModel.cc.

52 {
53  return;
54 }
std::vector< std::pair< int, int > > ME0SimpleModel::simulateClustering ( const ME0EtaPartition roll,
const PSimHit simHit,
const int  bx,
CLHEP::HepRandomEngine *  engine 
)
overridevirtual

Implements ME0DigiModel.

Definition at line 249 of file ME0SimpleModel.cc.

References averageEfficiency_, ME0EtaPartition::centreOfStrip(), Topology::channel(), PSimHit::localPosition(), ME0EtaPartition::nstrips(), ME0EtaPartition::specificTopology(), GeomDet::toGlobal(), ecaldqm::topology(), and PV3DBase< T, PVType, FrameType >::x().

Referenced by simulateSignal().

251 {
252  const StripTopology& topology = roll->specificTopology();
253  const LocalPoint& hit_position(simHit->localPosition());
254  const int nstrips(roll->nstrips());
255  int centralStrip = 0;
256  if (!(topology.channel(hit_position) + 1 > nstrips))
257  centralStrip = topology.channel(hit_position) + 1;
258  else
259  centralStrip = topology.channel(hit_position);
260  const GlobalPoint& pointSimHit = roll->toGlobal(hit_position);
261  const GlobalPoint& pointDigiHit = roll->toGlobal(roll->centreOfStrip(centralStrip));
262  double deltaX = pointSimHit.x() - pointDigiHit.x();
263 
264  // Add central digi to cluster vector
265  std::vector < std::pair<int, int> > cluster;
266  cluster.clear();
267  cluster.emplace_back(centralStrip, bx);
268 
269  //simulate cross talk
270  int clusterSize((CLHEP::RandFlat::shoot(engine)) <= 0.53 ? 1 : 2);
271  if (clusterSize == 2)
272  {
273  if (deltaX <= 0)
274  {
275  if (CLHEP::RandFlat::shoot(engine) < averageEfficiency_ && (centralStrip - 1 > 0))
276  cluster.emplace_back(centralStrip - 1, bx);
277  }
278  else
279  {
280  if (CLHEP::RandFlat::shoot(engine) < averageEfficiency_ && (centralStrip + 1 <= nstrips))
281  cluster.emplace_back(centralStrip + 1, bx);
282  }
283  }
284  return cluster;
285 }
const StripTopology & specificTopology() const
CaloTopology const * topology(0)
GlobalPoint toGlobal(const Local2DPoint &lp) const
Conversion to the global R.F. from the R.F. of the GeomDet.
Definition: GeomDet.h:54
double averageEfficiency_
LocalPoint centreOfStrip(int strip) const
Local3DPoint localPosition() const
Definition: PSimHit.h:44
virtual int channel(const LocalPoint &p) const =0
int nstrips() const
Return the chamber this roll belongs to.
T x() const
Definition: PV3DBase.h:62
void ME0SimpleModel::simulateNoise ( const ME0EtaPartition roll,
CLHEP::HepRandomEngine *  engine 
)
overridevirtual

Implements ME0DigiModel.

Definition at line 152 of file ME0SimpleModel.cc.

References averageEfficiency_, averageNoiseRate_, bxwidth_, doBkgNoise_, doNoiseCLS_, MillePedeFileConverter_cfg::e, Exception, JetChargeProducer_cfi::exp, fixedRollRadius_, mps_fire::i, ME0EtaPartition::id(), instLumi_, gen::k, maxBunch_, ME0ElecBkgParam0_, ME0ElecBkgParam1_, ME0ElecBkgParam2_, ME0ElecBkgParam3_, ME0NeuBkgParam0_, ME0NeuBkgParam1_, ME0NeuBkgParam2_, ME0NeuBkgParam3_, minBunch_, ME0EtaPartition::nstrips(), ME0EtaPartition::pitch(), rateFact_, referenceInstLumi_, simulateElectronBkg_, simulateIntrinsicNoise_, mathSSE::sqrt(), ME0DigiModel::strips_, and ME0EtaPartition::topology().

153 {
154  if (!doBkgNoise_)
155  return;
156  const ME0DetId me0Id(roll->id());
157  const int nstrips(roll->nstrips());
158  double trArea(0.0);
159  double trStripArea(0.0);
160 
161  if (me0Id.region() == 0)
162  {
163  throw cms::Exception("Geometry")
164  << "ME0Synchronizer::simulateNoise() - this ME0 id is from barrel, which cannot happen.";
165  }
166  const TrapezoidalStripTopology* top_(dynamic_cast<const TrapezoidalStripTopology*>(&(roll->topology())));
167  const float striplength(top_->stripLength());
168  trStripArea = (roll->pitch()) * striplength;
169  trArea = trStripArea * nstrips;
170  const int nBxing(maxBunch_ - minBunch_ + 1);
171  const float rollRadius(fixedRollRadius_ ? top_->radius() :
172  top_->radius() + CLHEP::RandFlat::shoot(engine, -1.*top_->stripLength()/2., top_->stripLength()/2.));
173 
174  const float rSqrtR = rollRadius * sqrt(rollRadius);
175 
176  //calculate noise from model
177  double averageNeutralNoiseRatePerRoll = 0.;
178  double averageNoiseElectronRatePerRoll = 0.;
179  double averageNoiseRatePerRoll = 0.;
180  if (me0Id.station() != 1)
181  {
182  throw cms::Exception("Geometry") << "ME0SimpleModel::simulateNoise() - this ME0 id is from station 1, which cannot happen: " <<roll->id() << "\n";
183  }
184  else
185  {
186  averageNeutralNoiseRatePerRoll = ME0NeuBkgParam0_ * rollRadius* std::exp(ME0NeuBkgParam1_/rSqrtR) + ME0NeuBkgParam2_/rSqrtR + ME0NeuBkgParam3_/(sqrt(rollRadius));
187  //simulate electron background for ME0
189  averageNoiseElectronRatePerRoll = ME0ElecBkgParam0_ * rSqrtR* std::exp(ME0ElecBkgParam1_/rSqrtR) + ME0ElecBkgParam2_/rSqrtR + ME0ElecBkgParam3_/(sqrt(rollRadius));
190  averageNoiseRatePerRoll = averageNeutralNoiseRatePerRoll + averageNoiseElectronRatePerRoll;
191  averageNoiseRatePerRoll *= instLumi_*rateFact_*1.0/referenceInstLumi_;
192  }
193 
194  //simulate intrinsic noise
196  {
197  const double aveIntrinsicNoisePerStrip(averageNoiseRate_ * nBxing * bxwidth_ * trStripArea * 1.0e-9);
198  for(int j = 0; j < nstrips; ++j)
199  {
200  int randPoissonQ = CLHEP::RandPoissonQ::shoot(engine, aveIntrinsicNoisePerStrip);
201 
202  for (int k = 0; k < randPoissonQ; k++ )
203  {
204  const int time_hit(static_cast<int>(CLHEP::RandFlat::shoot(engine, nBxing)) + minBunch_);
205  strips_.emplace(k+1,time_hit);
206  }
207  }
208  }//end simulate intrinsic noise
209 
210  //simulate bkg contribution
211  const double averageNoise(averageNoiseRatePerRoll * nBxing * bxwidth_ * trArea * 1.0e-9);
212  int randPoissonQ = CLHEP::RandPoissonQ::shoot(engine, averageNoise);
213 
214  for (int i = 0; i < randPoissonQ; ++i)
215  {
216  const int centralStrip(static_cast<int> (CLHEP::RandFlat::shoot(engine, 1, nstrips)));
217  const int time_hit(static_cast<int>(CLHEP::RandFlat::shoot(engine, nBxing)) + minBunch_);
218  if (doNoiseCLS_)
219  {
220  std::vector < std::pair<int, int> > cluster;
221  cluster.emplace_back(centralStrip, time_hit);
222  int clusterSize((CLHEP::RandFlat::shoot(engine)) <= 0.53 ? 1 : 2);
223  if (clusterSize == 2)
224  {
225  if(CLHEP::RandFlat::shoot(engine) < 0.5)
226  {
227  if (CLHEP::RandFlat::shoot(engine) < averageEfficiency_ && (centralStrip - 1 > 0))
228  cluster.emplace_back(centralStrip - 1, time_hit);
229  }
230  else
231  {
232  if (CLHEP::RandFlat::shoot(engine) < averageEfficiency_ && (centralStrip + 1 <= nstrips))
233  cluster.emplace_back(centralStrip + 1, time_hit);
234  }
235  }
236  for (const auto& digi : cluster)
237  {
238  strips_.emplace(digi);
239  }
240  } //end doNoiseCLS_
241  else
242  {
243  strips_.emplace(centralStrip, time_hit);
244  }
245  }
246  return;
247 }
double ME0NeuBkgParam2_
double averageEfficiency_
bool simulateElectronBkg_
std::set< std::pair< int, int > > strips_
Definition: ME0DigiModel.h:65
double averageNoiseRate_
T sqrt(T t)
Definition: SSEVec.h:18
ME0DetId id() const
float pitch() const
double ME0ElecBkgParam0_
double referenceInstLumi_
double ME0NeuBkgParam0_
int nstrips() const
Return the chamber this roll belongs to.
int k[5][pyjets_maxn]
double ME0ElecBkgParam2_
double ME0NeuBkgParam3_
double ME0ElecBkgParam3_
bool simulateIntrinsicNoise_
double ME0ElecBkgParam1_
const Topology & topology() const override
double ME0NeuBkgParam1_
void ME0SimpleModel::simulateSignal ( const ME0EtaPartition roll,
const edm::PSimHitContainer simHits,
CLHEP::HepRandomEngine *  engine 
)
overridevirtual

Implements ME0DigiModel.

Definition at line 56 of file ME0SimpleModel.cc.

References funct::abs(), averageEfficiency_, edm::DetSet< T >::clear(), ME0DigiModel::detectorHitMap_, digitizeOnlyMuons_, MillePedeFileConverter_cfg::e, JetChargeProducer_cfi::exp, getSimHitBx(), ME0EtaPartition::id(), cmsBatch::log, DetId::rawId(), simulateClustering(), ME0DigiModel::stripDigiSimLinks_, ME0DigiModel::strips_, and ME0DigiModel::theME0DigiSimLinks_.

57 {
59  detectorHitMap_.clear();
61 
64  bool digiMuon = false;
65  bool digiElec = false;
66  for (const auto& hit : simHits)
67  {
68  if (std::abs(hit.particleType()) != 13 && digitizeOnlyMuons_)
69  continue;
70  double elecEff = 0.;
71  double partMom = hit.pabs();
72  double checkMuonEff = CLHEP::RandFlat::shoot(engine, 0., 1.);
73  double checkElecEff = CLHEP::RandFlat::shoot(engine, 0., 1.);
74  if (std::abs(hit.particleType()) == 13 && checkMuonEff < averageEfficiency_)
75  digiMuon = true;
76  if (std::abs(hit.particleType()) != 13) //consider all non muon particles with me0 efficiency to electrons
77  {
78  if (partMom <= 1.95e-03)
79  elecEff = 1.7e-05 * std::exp(2.1 * partMom * 1000.);
80  if (partMom > 1.95e-03 && partMom < 10.e-03)
81  elecEff = 1.34 * log(7.96e-01 * partMom * 1000. - 5.75e-01)
82  / (1.34 + log(7.96e-01 * partMom * 1000. - 5.75e-01));
83  if (partMom > 10.e-03)
84  elecEff = 1.;
85  if (checkElecEff < elecEff)
86  digiElec = true;
87  }
88  if (!(digiMuon || digiElec))
89  continue;
90  const int bx(getSimHitBx(&hit, engine));
91  const std::vector<std::pair<int, int> >& cluster(simulateClustering(roll, &hit, bx, engine));
92  for (const auto & digi : cluster)
93  {
94  detectorHitMap_.emplace(digi,&hit);
95  strips_.emplace(digi);
96  }
97  }
98 }
edm::DetSet< ME0DigiSimLink > ME0DigiSimLinks
Definition: ME0DigiModel.h:37
double averageEfficiency_
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:50
StripDigiSimLinks stripDigiSimLinks_
Definition: ME0DigiModel.h:79
std::set< std::pair< int, int > > strips_
Definition: ME0DigiModel.h:65
int getSimHitBx(const PSimHit *, CLHEP::HepRandomEngine *)
ME0DetId id() const
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
ME0DigiSimLinks theME0DigiSimLinks_
Definition: ME0DigiModel.h:80
std::vector< std::pair< int, int > > simulateClustering(const ME0EtaPartition *, const PSimHit *, const int, CLHEP::HepRandomEngine *) override
DetectorHitMap detectorHitMap_
Definition: ME0DigiModel.h:78
void clear()
Definition: DetSet.h:69
edm::DetSet< StripDigiSimLink > StripDigiSimLinks
Definition: ME0DigiModel.h:36

Member Data Documentation

double ME0SimpleModel::averageEfficiency_
private

Definition at line 46 of file ME0SimpleModel.h.

Referenced by simulateClustering(), simulateNoise(), and simulateSignal().

double ME0SimpleModel::averageNoiseRate_
private

Definition at line 50 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::averageShapingTime_
private

Definition at line 47 of file ME0SimpleModel.h.

Referenced by getSimHitBx().

int ME0SimpleModel::bxwidth_
private

Definition at line 52 of file ME0SimpleModel.h.

Referenced by getSimHitBx(), and simulateNoise().

bool ME0SimpleModel::digitizeOnlyMuons_
private

Definition at line 55 of file ME0SimpleModel.h.

Referenced by simulateSignal().

bool ME0SimpleModel::doBkgNoise_
private

Definition at line 56 of file ME0SimpleModel.h.

Referenced by simulateNoise().

bool ME0SimpleModel::doNoiseCLS_
private

Definition at line 57 of file ME0SimpleModel.h.

Referenced by simulateNoise().

bool ME0SimpleModel::fixedRollRadius_
private

Definition at line 58 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::instLumi_
private

Definition at line 61 of file ME0SimpleModel.h.

Referenced by simulateNoise().

int ME0SimpleModel::maxBunch_
private

Definition at line 54 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::ME0ElecBkgParam0_
private

Definition at line 65 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::ME0ElecBkgParam1_
private

Definition at line 66 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::ME0ElecBkgParam2_
private

Definition at line 67 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::ME0ElecBkgParam3_
private

Definition at line 68 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::ME0NeuBkgParam0_
private

Definition at line 70 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::ME0NeuBkgParam1_
private

Definition at line 71 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::ME0NeuBkgParam2_
private

Definition at line 72 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::ME0NeuBkgParam3_
private

Definition at line 73 of file ME0SimpleModel.h.

Referenced by simulateNoise().

int ME0SimpleModel::minBunch_
private

Definition at line 53 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::rateFact_
private

Definition at line 62 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::referenceInstLumi_
private

Definition at line 63 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::signalPropagationSpeed_
private

Definition at line 51 of file ME0SimpleModel.h.

Referenced by getSimHitBx().

bool ME0SimpleModel::simulateElectronBkg_
private

Definition at line 60 of file ME0SimpleModel.h.

Referenced by simulateNoise().

bool ME0SimpleModel::simulateIntrinsicNoise_
private

Definition at line 59 of file ME0SimpleModel.h.

Referenced by simulateNoise().

double ME0SimpleModel::timeJitter_
private

Definition at line 49 of file ME0SimpleModel.h.

Referenced by getSimHitBx().

double ME0SimpleModel::timeResolution_
private

Definition at line 48 of file ME0SimpleModel.h.

Referenced by getSimHitBx().