CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
RPCSimAverageNoise.h
Go to the documentation of this file.
1 #ifndef RPCDigitizer_RPCSimAverageNoise_h
2 #define RPCDigitizer_RPCSimAverageNoise_h
3 
12 
13 #include<cstring>
14 #include<iostream>
15 #include<fstream>
16 #include<string>
17 #include<vector>
18 #include<stdlib.h>
20 
21 
22 class RPCGeometry;
23 
24 namespace CLHEP {
25  class HepRandomEngine;
26  class RandFlat;
27  class RandPoissonQ;
28 }
29 
30 class RPCSimAverageNoise : public RPCSim
31 {
32  public:
33 
36 
37  void simulate(const RPCRoll* roll,
38  const edm::PSimHitContainer& rpcHits);
39 
40  void simulateNoise(const RPCRoll*);
41 
42  void setRandomEngine(CLHEP::HepRandomEngine& eng);
43 
44  int getClSize(float posX);
45 
46  private:
47  void init(){};
48  private:
49  double aveEff;
50  double aveCls;
51  double resRPC;
52  double timOff;
53  double dtimCs;
54  double resEle;
55  double sspeed;
56  double lbGate;
58 
59  int N_hits;
60  int nbxing;
61  double rate;
62  double gate;
63  double frate;
64 
65  std::map< int, std::vector<double> > clsMap;
66  std::vector<double> sum_clsize;
67  std::ifstream *infile;
68 
70 
71  //Defining the engines in the constructor and the method
72  //CLHEP::HepRandomEngine* rndEngine;
73  CLHEP::RandFlat* flatDistribution;
74  //Adding a second flatDistribution, since it was redefined
75  //in a method with different interval
76  CLHEP::RandFlat* flatDistribution2;
77  CLHEP::RandPoissonQ *poissonDistribution_;
78 };
79 #endif
CLHEP::RandFlat * flatDistribution2
void simulateNoise(const RPCRoll *)
void setRandomEngine(CLHEP::HepRandomEngine &eng)
int getClSize(float posX)
std::map< int, std::vector< double > > clsMap
Definition: RPCSim.h:27
RPCSimAverageNoise(const edm::ParameterSet &config)
CLHEP::RandFlat * flatDistribution
RPCSynchronizer * _rpcSync
std::ifstream * infile
CLHEP::RandPoissonQ * poissonDistribution_
std::vector< PSimHit > PSimHitContainer
void simulate(const RPCRoll *roll, const edm::PSimHitContainer &rpcHits)
std::vector< double > sum_clsize