SimCalorimetry
CastorSim
src
CastorShape.cc
Go to the documentation of this file.
1
#include "
SimCalorimetry/CastorSim/src/CastorShape.h
"
2
#include <cmath>
3
4
CastorShape::CastorShape
() : nbin_(256), nt_(nbin_, 0.) {
computeShapeCastor
(); }
5
6
CastorShape::CastorShape
(
const
CastorShape
&
d
) :
CaloVShape
(
d
), nbin_(
d
.nbin_), nt_(
d
.nt_) {}
7
8
void
CastorShape::computeShapeCastor
() {
9
// cout << endl << " ===== computeShapeCastor !!! " << endl << endl;
10
11
const
float
ts = 3.0;
// time constant in t * exp(-(t/ts)**2)
12
13
int
j
;
14
float
norm;
15
16
// HF SHAPE
17
norm = 0.0;
18
for
(
j
= 0;
j
< 3 * ts &&
j
<
nbin_
;
j
++) {
19
// nt_[j] = ((float)j)*exp(-((float)(j*j))/(ts*ts));
20
nt_
[
j
] =
j
*
exp
(-(
j
*
j
) / (ts * ts));
21
norm +=
nt_
[
j
];
22
}
23
// normalize pulse area to 1.0
24
for
(
j
= 0;
j
< 3 * ts &&
j
<
nbin_
;
j
++) {
25
nt_
[
j
] /= norm;
26
}
27
}
28
29
double
CastorShape::operator()
(
double
time
)
const
{
30
// return pulse amplitude for request time in ns
31
int
jtime;
32
jtime = static_cast<int>(
time
+ 0.5);
33
34
if
(jtime >= 0 && jtime <
nbin_
)
35
return
nt_
[jtime];
36
else
37
return
0.0;
38
}
39
40
double
CastorShape::timeToRise
()
const
{
return
0.0; }
CastorShape::computeShapeCastor
void computeShapeCastor()
Definition:
CastorShape.cc:8
protons_cff.time
time
Definition:
protons_cff.py:35
CastorShape
shaper for Castor
Definition:
CastorShape.h:15
CastorShape::nt_
std::vector< float > nt_
Definition:
CastorShape.h:29
CastorShape::operator()
double operator()(double time) const override
Definition:
CastorShape.cc:29
CastorShape::CastorShape
CastorShape()
Definition:
CastorShape.cc:4
CaloVShape
Electronic response of the preamp.
Definition:
CaloVShape.h:11
CastorShape::nbin_
int nbin_
Definition:
CastorShape.h:28
CastorShape::timeToRise
double timeToRise() const override
Definition:
CastorShape.cc:40
CastorShape.h
ztail.d
d
Definition:
ztail.py:151
dqmiolumiharvest.j
j
Definition:
dqmiolumiharvest.py:66
JetChargeProducer_cfi.exp
exp
Definition:
JetChargeProducer_cfi.py:6
Generated for CMSSW Reference Manual by
1.8.16