CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
QieShape.cc
Go to the documentation of this file.
1 
7 #include <iostream>
8 
10 
11 namespace reco {
12 namespace castor {
13 
14 QieShape::QieShape (const double fAdcShape [32], const double fAdcBin [32]) {
15  for (int i = 0; i < 32; i++) { // initial settings
16  mLinearization [i] = fAdcShape [i];
17  mBinSize [i] = fAdcBin [i];
18  // std::cout << "QieShape::QieShape-> #/adc/bin: " << i << '/' << fAdcShape [i] << '/' << fAdcBin [i] << std::endl;
19  }
20  double factor = 1;
21  for (int range = 1; range < 4; range++) {
22  factor = factor * 5;
23  int offset = 32 * range;
24  mLinearization [offset] = mLinearization[offset-2]; // initial overlap
25  for (int bin = 1; bin < 32; bin++) {
26  mLinearization [offset+bin] = mLinearization [offset+bin-1] +
27  factor * (mLinearization [bin] - mLinearization [bin-1]); // scale initial curve
28  mBinSize [offset+bin] = factor * mBinSize [bin];
29  }
30  }
31 }
32 
33 }
34 }
int i
Definition: DBlmapReader.cc:9
double mLinearization[128]
Definition: QieShape.h:21
double mBinSize[128]
Definition: QieShape.h:22
QieShape(const double fAdcShape[32], const double fAdcBin[32])
Definition: QieShape.cc:14