CMS 3D CMS Logo

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

#include <FP420DigiMain.h>

Public Types

typedef float Amplitude
 
typedef DConverterFP420::DigitalMapType DigitalMapType
 
typedef std::map< int, float, std::less< int > > hit_map_type
 
typedef PileUpFP420::HitToDigisMapType HitToDigisMapType
 

Public Member Functions

 FP420DigiMain (const edm::ParameterSet &conf)
 
std::vector< HDigiFP420run (const std::vector< PSimHit > &input, const G4ThreeVector &, unsigned int)
 
 ~FP420DigiMain ()
 

Private Member Functions

void fluctuateEloss (int particleId, float momentum, float eloss, float length, int NumberOfSegments, float elossVector[])
 
void push_digis (const DigitalMapType &, const HitToDigisMapType &, const PileUpFP420::signal_map_type &)
 

Private Attributes

std::vector< short int > adcVec
 
bool addNoisyPixels
 
double appliedVoltage
 
double chargeDistributionRMS
 
double chargeMobility
 
float ClusterWidth
 
edm::ParameterSet conf_
 
double depletionVoltage
 
std::vector< HDigiFP420digis
 
bool doMissCalibrate
 
float elossCut
 
float ENC
 
LandauFP420 fluctuate
 
double ldrift
 
double ldriftX
 
double ldriftY
 
float moduleThickness
 
int ndigis
 
bool noDiffusion
 
bool noNoise
 
int NumberOfSegments
 
int numStrips
 
int numStripsW
 
int numStripsX
 
int numStripsXW
 
int numStripsY
 
int numStripsYW
 
double pitch
 
double pitchW
 
double pitchX
 
double pitchXW
 
double pitchY
 
double pitchYW
 
float Sigma0
 
std::vector< const PSimHit * > ss
 
double temperature
 
int theAdcFullScale
 
bool theApplyTofCut
 
CDividerFP420theCDividerFP420
 
ChargeDrifterFP420theCDrifterFP420
 
DigiConverterFP420theDConverterFP420
 
float theElectronPerADC
 
float theGainSmearing
 
GaussNoiseFP420theGNoiseFP420
 
HitDigitizerFP420theHitDigitizerFP420
 
float theNoiseInElectrons
 
GaussNoiseProducerFP420theNoiser
 
float theOffsetSmearing
 
PileUpFP420thePileUpFP420
 
int theStripsInChip
 
float theStripThreshold
 
float theStripThresholdInE
 
float theThreshold
 
double thez420
 
double thezD2
 
double thezD3
 
ZeroSuppressFP420theZSuppressFP420
 
float Thick300
 
double tMax
 
double tofCut
 
int verbosity
 
int xytype
 

Detailed Description

Definition at line 30 of file FP420DigiMain.h.

Member Typedef Documentation

typedef float FP420DigiMain::Amplitude

Definition at line 34 of file FP420DigiMain.h.

Definition at line 36 of file FP420DigiMain.h.

typedef std::map<int, float, std::less<int> > FP420DigiMain::hit_map_type

Definition at line 33 of file FP420DigiMain.h.

Definition at line 37 of file FP420DigiMain.h.

Constructor & Destructor Documentation

FP420DigiMain::FP420DigiMain ( const edm::ParameterSet conf)

Definition at line 29 of file FP420DigiMain.cc.

References addNoisyPixels, conf_, elossCut, ENC, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), ldrift, ldriftX, ldriftY, moduleThickness, ndigis, noNoise, numStrips, numStripsW, numStripsX, numStripsXW, numStripsY, numStripsYW, pitch, pitchW, pitchX, pitchXW, pitchY, pitchYW, theApplyTofCut, theDConverterFP420, theElectronPerADC, theGNoiseFP420, theHitDigitizerFP420, thePileUpFP420, theThreshold, thez420, thezD2, thezD3, theZSuppressFP420, Thick300, tofCut, verbosity, and xytype.

29  : conf_(conf) {
30  edm::LogInfo("SimRomanPotSimFP420") << "Creating a FP420DigiMain";
31  ndigis = 0;
32  verbosity = conf_.getUntrackedParameter<int>("VerbosityLevel");
33  theElectronPerADC = conf_.getParameter<double>("ElectronFP420PerAdc");
34  theThreshold = conf_.getParameter<double>("AdcFP420Threshold");
35  noNoise = conf_.getParameter<bool>("NoFP420Noise");
36  addNoisyPixels = conf_.getParameter<bool>("AddNoisyPixels");
37  thez420 = conf_.getParameter<double>("z420");
38  thezD2 = conf_.getParameter<double>("zD2");
39  thezD3 = conf_.getParameter<double>("zD3");
40  theApplyTofCut = conf_.getParameter<bool>("ApplyTofCut");
41  tofCut = conf_.getParameter<double>("LowtofCutAndTo200ns");
42  // sn0 = 3;// number of stations
43  // pn0 = 6;// number of superplanes
44  // rn0 = 3; // number of sensors in superlayer
45  xytype = 2;
46 
47  edm::LogInfo("SimRomanPotSimFP420") << "theApplyTofCut=" << theApplyTofCut << " tofCut=" << tofCut << "\n"
48  << "FP420DigiMain theElectronPerADC=" << theElectronPerADC
49  << " theThreshold=" << theThreshold << " noNoise=" << noNoise;
50 
51  // X (or Y)define type of sensor (xytype=1 or 2 used to derive it: 1-Y, 2-X)
52  // for every type there is normal pixel size=0.05 and Wide 0.400 mm
53  Thick300 = 0.300; // = 0.300 mm normalized to 300micron Silicon
54  // ENC= 2160.; // EquivalentNoiseCharge300um = 2160. +
55  // other sources of noise
56  ENC = 960.; // EquivalentNoiseCharge300um = 2160. + other sources of
57  // noise
58 
59  ldriftX = 0.050; // in mm(xytype=1)
60  ldriftY = 0.050; // in mm(xytype=2)
61  moduleThickness = 0.250; // mm(xytype=1)(xytype=2)
62 
63  pitchY = 0.050; // in mm(xytype=1)
64  pitchX = 0.050; // in mm(xytype=2)
65  // numStripsY = 200; // Y plate number of strips:200*0.050=10mm
66  // (xytype=1) numStripsX = 400; // X plate number of
67  // strips:400*0.050=20mm (xytype=2)
68  numStripsY = 144; // Y plate number of strips:144*0.050=7.2mm (xytype=1)
69  numStripsX = 160; // X plate number of strips:160*0.050=8.0mm (xytype=2)
70 
71  pitchYW = 0.400; // in mm(xytype=1)
72  pitchXW = 0.400; // in mm(xytype=2)
73  // numStripsYW = 50; // Y plate number of W strips:50 *0.400=20mm
74  // (xytype=1) - W have ortogonal projection numStripsXW = 25; // X
75  // plate number of W strips:25 *0.400=10mm (xytype=2) - W have ortogonal
76  // projection
77  numStripsYW = 20; // Y plate number of W strips:20 *0.400=8.0mm (xytype=1) - W
78  // have ortogonal projection
79  numStripsXW = 18; // X plate number of W strips:18 *0.400=7.2mm (xytype=2) - W
80  // have ortogonal projection
81 
82  // tofCut = 1350.; // Cut on the particle TOF range = 1380 - 1500
83  elossCut = 0.00003; // Cut on the particle TOF = 100 or 50
84 
85  edm::LogInfo("SimRomanPotSimFP420") << "FP420DigiMain moduleThickness=" << moduleThickness;
86 
87  float noiseRMS = ENC * moduleThickness / Thick300;
88 
90  // Y:
91  if (xytype == 1) {
92  numStrips = numStripsY; // Y plate number of strips:200*0.050=10mm -->
93  // 100*0.100=10mm
94  pitch = pitchY;
95  ldrift = ldriftX; // because drift is in local coordinates which 90 degree
96  // rotated ( for correct timeNormalization & noiseRMS
97  // calculations)
98  numStripsW = numStripsYW; // Y plate number of strips:200*0.050=10mm -->
99  // 100*0.100=10mm
100  pitchW = pitchYW;
101  }
102  // X:
103  if (xytype == 2) {
104  numStrips = numStripsX; // X plate number of strips:400*0.050=20mm -->
105  // 200*0.100=20mm
106  pitch = pitchX;
107  ldrift = ldriftY; // because drift is in local coordinates which 90 degree
108  // rotated ( for correct timeNormalization & noiseRMS
109  // calculations)
110  numStripsW = numStripsXW; // X plate number of strips:400*0.050=20mm -->
111  // 200*0.100=20mm
112  pitchW = pitchXW;
113  }
114 
116  new HitDigitizerFP420(moduleThickness, ldrift, ldriftY, ldriftX, thez420, thezD2, thezD3, verbosity);
117  int numPixels = numStrips * numStripsW;
118  theGNoiseFP420 = new GaussNoiseFP420(numPixels, noiseRMS, theThreshold, addNoisyPixels, verbosity);
119  theZSuppressFP420 = new ZeroSuppressFP420(conf_, noiseRMS / theElectronPerADC);
120  thePileUpFP420 = new PileUpFP420();
121  theDConverterFP420 = new DigiConverterFP420(theElectronPerADC, verbosity);
122 
123  edm::LogInfo("SimRomanPotSimFP420") << "FP420DigiMain end of constructor";
124 }
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
GaussNoiseFP420 * theGNoiseFP420
edm::ParameterSet conf_
Definition: FP420DigiMain.h:54
float theThreshold
Definition: FP420DigiMain.h:86
DigiConverterFP420 * theDConverterFP420
float theElectronPerADC
Definition: FP420DigiMain.h:70
ZeroSuppressFP420 * theZSuppressFP420
PileUpFP420 * thePileUpFP420
HitDigitizerFP420 * theHitDigitizerFP420
float moduleThickness
FP420DigiMain::~FP420DigiMain ( )

Definition at line 126 of file FP420DigiMain.cc.

References theDConverterFP420, theGNoiseFP420, theHitDigitizerFP420, thePileUpFP420, and theZSuppressFP420.

126  {
127  delete theGNoiseFP420;
128  delete theZSuppressFP420;
129  delete theHitDigitizerFP420;
130  delete thePileUpFP420;
131  delete theDConverterFP420;
132 }
GaussNoiseFP420 * theGNoiseFP420
DigiConverterFP420 * theDConverterFP420
ZeroSuppressFP420 * theZSuppressFP420
PileUpFP420 * thePileUpFP420
HitDigitizerFP420 * theHitDigitizerFP420

Member Function Documentation

void FP420DigiMain::fluctuateEloss ( int  particleId,
float  momentum,
float  eloss,
float  length,
int  NumberOfSegments,
float  elossVector[] 
)
private
void FP420DigiMain::push_digis ( const DigitalMapType dm,
const HitToDigisMapType htd,
const PileUpFP420::signal_map_type afterNoise 
)
private

Definition at line 212 of file FP420DigiMain.cc.

References gather_cfg::cout, digis, mps_fire::i, ndigis, and verbosity.

Referenced by run().

214  {
215  //
216  if (verbosity > 0) {
217  std::cout << " ****FP420DigiMain: push_digis start: do for loop dm.size()=" << dm.size() << std::endl;
218  }
219 
220  digis.reserve(50);
221  digis.clear();
222  // link_coll.clear();
223  for (DigitalMapType::const_iterator i = dm.begin(); i != dm.end(); i++) {
224  // Load digis
225  // push to digis the content of first and second words of HDigiFP420 vector
226  // for every strip pointer (*i)
227  digis.push_back(HDigiFP420((*i).first, (*i).second));
228  ndigis++;
229  // very useful check:
230  if (verbosity > 0) {
231  std::cout << " ****FP420DigiMain:push_digis: ndigis = " << ndigis << std::endl;
232  std::cout << "push_digis: strip = " << (*i).first << " adc = " << (*i).second << std::endl;
233  }
234  }
235 
237 
238  // reworked to access the fraction of amplitude per simhit
239 
240  for (HitToDigisMapType::const_iterator mi = htd.begin(); mi != htd.end(); mi++) {
241  //
242  if (dm.find((*mi).first) != dm.end()) {
243  // --- For each channel, sum up the signals from a simtrack
244  //
245  map<const PSimHit *, Amplitude> totalAmplitudePerSimHit;
246  for (std::vector<std::pair<const PSimHit *, Amplitude>>::const_iterator simul = (*mi).second.begin();
247  simul != (*mi).second.end();
248  simul++) {
249  totalAmplitudePerSimHit[(*simul).first] += (*simul).second;
250  }
251  /*
252  //--- include the noise as well
253 
254  PileUpFP420::signal_map_type& temp1 =
255  const_cast<PileUpFP420::signal_map_type&>(afterNoise); float
256  totalAmplitude1 = temp1[(*mi).first];
257 
258  //--- digisimlink
259  for (std::map<const PSimHit *, Amplitude>::const_iterator iter =
260  totalAmplitudePerSimHit.begin(); iter != totalAmplitudePerSimHit.end();
261  iter++){
262 
263  float threshold = 0.;
264  if (totalAmplitudePerSimHit[(*iter).first]/totalAmplitude1 >= threshold) {
265  float fraction = totalAmplitudePerSimHit[(*iter).first]/totalAmplitude1;
266 
267  //Noise fluctuation could make fraction>1. Unphysical, set it by hand.
268  if(fraction >1.) fraction = 1.;
269 
270  link_coll.push_back(StripDigiSimLink( (*mi).first, //channel
271  ((*iter).first)->trackId(), //simhit
272  fraction)); //fraction
273  }//if
274  }//for
275  */
276  //
277  } // if
278  } // for
279 }
std::vector< HDigiFP420 > digis
vector< HDigiFP420 > FP420DigiMain::run ( const std::vector< PSimHit > &  input,
const G4ThreeVector &  bfield,
unsigned int  iu 
)

Definition at line 137 of file FP420DigiMain.cc.

References funct::abs(), PileUpFP420::add(), GaussNoiseFP420::addNoise(), DigiConverterFP420::convert(), gather_cfg::cout, PSimHit::detUnitId(), digis, PileUpFP420::dumpLink(), PileUpFP420::dumpSignal(), elossCut, PSimHit::energyLoss(), PSimHit::entryPoint(), PSimHit::exitPoint(), plotBeamSpotDB::first, moduleThickness, noNoise, numStrips, numStripsW, PSimHit::pabs(), PSimHit::particleType(), pitch, pitchW, HitDigitizerFP420::processHit(), push_digis(), PileUpFP420::reset(), theApplyTofCut, theDConverterFP420, theGNoiseFP420, theHitDigitizerFP420, thePileUpFP420, theZSuppressFP420, PSimHit::tof(), tofCut, PSimHit::trackId(), verbosity, PV3DBase< T, PVType, FrameType >::x(), xytype, PV3DBase< T, PVType, FrameType >::y(), PV3DBase< T, PVType, FrameType >::z(), and ZeroSuppressFP420::zeroSuppress().

Referenced by cms::DigitizerFP420::produce().

137  {
139  bool first = true;
140 
141  // main loop
142  //
143  // First: loop on the SimHits
144  //
145  std::vector<PSimHit>::const_iterator simHitIter = input.begin();
146  std::vector<PSimHit>::const_iterator simHitIterEnd = input.end();
147  for (; simHitIter != simHitIterEnd; ++simHitIter) {
148  const PSimHit ihit = *simHitIter;
149 
150  if (first) {
151  // detID = ihit.detUnitId();
152  first = false;
153  }
154 
155  // main part here:
156  double losenergy = ihit.energyLoss();
157  float tof = ihit.tof();
158 
159  if (verbosity > 1) {
160  unsigned int unitID = ihit.detUnitId();
161  std::cout << " *******FP420DigiMain: intindex= " << iu << std::endl;
162  std::cout << " tof= " << tof << " EnergyLoss= " << losenergy << " pabs= " << ihit.pabs() << std::endl;
163  std::cout << " EntryLocalP x= " << ihit.entryPoint().x() << " EntryLocalP y= " << ihit.entryPoint().y()
164  << std::endl;
165  std::cout << " ExitLocalP x= " << ihit.exitPoint().x() << " ExitLocalP y= " << ihit.exitPoint().y() << std::endl;
166  std::cout << " EntryLocalP z= " << ihit.entryPoint().z() << " ExitLocalP z= " << ihit.exitPoint().z()
167  << std::endl;
168  std::cout << " unitID= " << unitID << " xytype= " << xytype << " particleType= " << ihit.particleType()
169  << " trackId= " << ihit.trackId() << std::endl;
170  // std::cout << " det= " << det << " sector= " << sector << " zmodule=
171  // " << zmodule << std::endl;
172  std::cout << " bfield= " << bfield << std::endl;
173  }
174  if (verbosity > 0) {
175  std::cout << " *******FP420DigiMain: theApplyTofCut= " << theApplyTofCut << std::endl;
176  std::cout << " tof= " << tof << " EnergyLoss= " << losenergy << " pabs= " << ihit.pabs() << std::endl;
177  std::cout << " particleType= " << ihit.particleType() << std::endl;
178  }
179 
180  if ((!(theApplyTofCut) || (theApplyTofCut && abs(tof) > tofCut && abs(tof) < (tofCut + 200.))) &&
181  losenergy > elossCut) {
182  if (verbosity > 0)
183  std::cout << " inside tof: OK " << std::endl;
184 
187 
188  thePileUpFP420->add(_temp, ihit, verbosity);
189  }
190  // main part end (AZ)
191  } // for
192  // main loop end (AZ)
193 
196 
197  PileUpFP420::signal_map_type afterNoise;
198 
199  if (noNoise) {
200  afterNoise = theSignal;
201  } else {
202  afterNoise = theGNoiseFP420->addNoise(theSignal);
203  // add_noise();
204  }
205  digis.clear();
206 
207  push_digis(theZSuppressFP420->zeroSuppress(theDConverterFP420->convert(afterNoise), verbosity), theLink, afterNoise);
208 
209  return digis; // to HDigiFP420
210 }
float tof() const
deprecated name for timeOfFlight()
Definition: PSimHit.h:76
GaussNoiseFP420 * theGNoiseFP420
void reset()
Definition: PileUpFP420.h:20
std::map< int, float, std::less< int > > hit_map_type
ZSuppressFP420::DigitalMapType zeroSuppress(const DigitalMapType &, int) override
T y() const
Definition: PV3DBase.h:63
std::vector< HDigiFP420 > digis
static std::string const input
Definition: EdmProvDump.cc:48
Local3DPoint exitPoint() const
Exit point in the local Det frame.
Definition: PSimHit.h:46
virtual void add(const HitDigitizerFP420::hit_map_type &, const PSimHit &hit, int)
Definition: PileUpFP420.cc:13
DigiConverterFP420 * theDConverterFP420
T z() const
Definition: PV3DBase.h:64
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
float pabs() const
fast and more accurate access to momentumAtEntry().mag()
Definition: PSimHit.h:67
std::map< int, Amplitude, std::less< int > > signal_map_type
Definition: PileUpFP420.h:13
ZeroSuppressFP420 * theZSuppressFP420
std::map< int, std::vector< std::pair< const PSimHit *, Amplitude > >, std::less< int > > HitToDigisMapType
Definition: PileUpFP420.h:14
signal_map_type dumpSignal()
Definition: PileUpFP420.h:24
float energyLoss() const
The energy deposit in the PSimHit, in ???.
Definition: PSimHit.h:79
int particleType() const
Definition: PSimHit.h:89
void push_digis(const DigitalMapType &, const HitToDigisMapType &, const PileUpFP420::signal_map_type &)
PileUpFP420 * thePileUpFP420
unsigned int trackId() const
Definition: PSimHit.h:106
DigitalMapType convert(const signal_map_type &) override
T x() const
Definition: PV3DBase.h:62
PileUpFP420::signal_map_type addNoise(const PileUpFP420::signal_map_type &) override
Local3DPoint entryPoint() const
Entry point in the local Det frame.
Definition: PSimHit.h:43
HitToDigisMapType dumpLink()
Definition: PileUpFP420.h:25
HitDigitizerFP420 * theHitDigitizerFP420
unsigned int detUnitId() const
Definition: PSimHit.h:97
hit_map_type processHit(const PSimHit &, const G4ThreeVector &, int, int, double, int, double, double, int)
float moduleThickness

Member Data Documentation

std::vector<short int> FP420DigiMain::adcVec
private

Definition at line 52 of file FP420DigiMain.h.

bool FP420DigiMain::addNoisyPixels
private

Definition at line 81 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

double FP420DigiMain::appliedVoltage
private

Definition at line 100 of file FP420DigiMain.h.

double FP420DigiMain::chargeDistributionRMS
private

Definition at line 105 of file FP420DigiMain.h.

double FP420DigiMain::chargeMobility
private

Definition at line 101 of file FP420DigiMain.h.

float FP420DigiMain::ClusterWidth
private

Definition at line 66 of file FP420DigiMain.h.

edm::ParameterSet FP420DigiMain::conf_
private

Definition at line 54 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

double FP420DigiMain::depletionVoltage
private

Definition at line 99 of file FP420DigiMain.h.

std::vector<HDigiFP420> FP420DigiMain::digis
private

Definition at line 194 of file FP420DigiMain.h.

Referenced by push_digis(), and run().

bool FP420DigiMain::doMissCalibrate
private

Definition at line 173 of file FP420DigiMain.h.

float FP420DigiMain::elossCut
private

Definition at line 84 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), and run().

float FP420DigiMain::ENC
private

Definition at line 74 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

LandauFP420 FP420DigiMain::fluctuate
private

Definition at line 184 of file FP420DigiMain.h.

double FP420DigiMain::ldrift
private

Definition at line 97 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

double FP420DigiMain::ldriftX
private

Definition at line 95 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

double FP420DigiMain::ldriftY
private

Definition at line 96 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

float FP420DigiMain::moduleThickness
private

Definition at line 168 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), and run().

int FP420DigiMain::ndigis
private

Definition at line 51 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), and push_digis().

bool FP420DigiMain::noDiffusion
private

Definition at line 104 of file FP420DigiMain.h.

bool FP420DigiMain::noNoise
private

Definition at line 80 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), and run().

int FP420DigiMain::NumberOfSegments
private

Definition at line 57 of file FP420DigiMain.h.

int FP420DigiMain::numStrips
private

Definition at line 162 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), and run().

int FP420DigiMain::numStripsW
private

Definition at line 165 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), and run().

int FP420DigiMain::numStripsX
private

Definition at line 160 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

int FP420DigiMain::numStripsXW
private

Definition at line 163 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

int FP420DigiMain::numStripsY
private

Definition at line 161 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

int FP420DigiMain::numStripsYW
private

Definition at line 164 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

double FP420DigiMain::pitch
private

Definition at line 90 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), and run().

double FP420DigiMain::pitchW
private

Definition at line 93 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), and run().

double FP420DigiMain::pitchX
private

Definition at line 88 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

double FP420DigiMain::pitchXW
private

Definition at line 91 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

double FP420DigiMain::pitchY
private

Definition at line 89 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

double FP420DigiMain::pitchYW
private

Definition at line 92 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

float FP420DigiMain::Sigma0
private

Definition at line 61 of file FP420DigiMain.h.

std::vector<const PSimHit *> FP420DigiMain::ss
private

Definition at line 186 of file FP420DigiMain.h.

double FP420DigiMain::temperature
private

Definition at line 103 of file FP420DigiMain.h.

int FP420DigiMain::theAdcFullScale
private

Definition at line 75 of file FP420DigiMain.h.

bool FP420DigiMain::theApplyTofCut
private

Definition at line 82 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), and run().

CDividerFP420* FP420DigiMain::theCDividerFP420
private

Definition at line 128 of file FP420DigiMain.h.

ChargeDrifterFP420* FP420DigiMain::theCDrifterFP420
private

Definition at line 118 of file FP420DigiMain.h.

DigiConverterFP420* FP420DigiMain::theDConverterFP420
private

Definition at line 156 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), run(), and ~FP420DigiMain().

float FP420DigiMain::theElectronPerADC
private

Definition at line 70 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

float FP420DigiMain::theGainSmearing
private

Definition at line 174 of file FP420DigiMain.h.

GaussNoiseFP420* FP420DigiMain::theGNoiseFP420
private

Definition at line 152 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), run(), and ~FP420DigiMain().

HitDigitizerFP420* FP420DigiMain::theHitDigitizerFP420
private

Definition at line 154 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), run(), and ~FP420DigiMain().

float FP420DigiMain::theNoiseInElectrons
private

Definition at line 76 of file FP420DigiMain.h.

GaussNoiseProducerFP420* FP420DigiMain::theNoiser
private

Definition at line 185 of file FP420DigiMain.h.

float FP420DigiMain::theOffsetSmearing
private

Definition at line 175 of file FP420DigiMain.h.

PileUpFP420* FP420DigiMain::thePileUpFP420
private

Definition at line 153 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), run(), and ~FP420DigiMain().

int FP420DigiMain::theStripsInChip
private

Definition at line 158 of file FP420DigiMain.h.

float FP420DigiMain::theStripThreshold
private

Definition at line 77 of file FP420DigiMain.h.

float FP420DigiMain::theStripThresholdInE
private

Definition at line 78 of file FP420DigiMain.h.

float FP420DigiMain::theThreshold
private

Definition at line 86 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

double FP420DigiMain::thez420
private

Definition at line 71 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

double FP420DigiMain::thezD2
private

Definition at line 72 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

double FP420DigiMain::thezD3
private

Definition at line 73 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

ZeroSuppressFP420* FP420DigiMain::theZSuppressFP420
private

Definition at line 155 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), run(), and ~FP420DigiMain().

float FP420DigiMain::Thick300
private

Definition at line 62 of file FP420DigiMain.h.

Referenced by FP420DigiMain().

double FP420DigiMain::tMax
private

Definition at line 181 of file FP420DigiMain.h.

double FP420DigiMain::tofCut
private

Definition at line 85 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), and run().

int FP420DigiMain::verbosity
private

Definition at line 57 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), push_digis(), and run().

int FP420DigiMain::xytype
private

Definition at line 57 of file FP420DigiMain.h.

Referenced by FP420DigiMain(), and run().