SimCalorimetry
EcalSimAlgos
src
APDShape.cc
Go to the documentation of this file.
1
#include <cmath>
2
3
#include "
SimCalorimetry/EcalSimAlgos/interface/APDShape.h
"
4
5
#include <cassert>
6
7
void
APDShape::fillShape
(
float
& time_interval,
8
double
& m_thresh,
9
EcalShapeBase::DVec
& aVec,
10
const
edm::EventSetup
* es)
const
{
11
if
(
m_useDBShape
) {
12
if
(es ==
nullptr
) {
13
throw
cms::Exception
(
"EcalShapeBase:: DB conditions are not available, const edm::EventSetup* es == nullptr "
);
14
}
15
edm::ESHandle<EcalSimPulseShape>
esps;
16
es->
get
<
EcalSimPulseShapeRcd
>().
get
(esps);
17
18
aVec = esps->
apd_shape
;
19
time_interval = esps->
time_interval
;
20
m_thresh
= esps->
apd_thresh
;
21
}
else
{
22
m_thresh
= 0.0;
23
time_interval = 1.0;
24
aVec.reserve(500);
25
const
double
m_tStart = 74.5;
26
const
double
m_tau = 40.5;
27
28
for
(
unsigned
int
i
(0);
i
!= 500; ++
i
) {
29
const
double
ctime((1. *
i
+ 0.5 - m_tStart) / m_tau);
30
double
val
= 0 > ctime ? 0 : ctime *
exp
(1. - ctime);
31
aVec.push_back(
val
);
32
}
33
}
34
}
EcalShapeBase::m_thresh
double m_thresh
Definition:
EcalShapeBase.h:61
mps_fire.i
i
Definition:
mps_fire.py:428
EcalShapeBase::DVec
std::vector< double > DVec
Definition:
EcalShapeBase.h:26
APDShape.h
edm::EventSetup::get
T get() const
Definition:
EventSetup.h:80
edm::ESHandle
Definition:
DTSurvey.h:22
EcalSimPulseShape::time_interval
float time_interval
Definition:
EcalSimPulseShape.h:21
EcalSimPulseShape::apd_shape
std::vector< double > apd_shape
Definition:
EcalSimPulseShape.h:16
EcalShapeBase::m_useDBShape
bool m_useDBShape
Definition:
EcalShapeBase.h:54
edm::EventSetup
Definition:
EventSetup.h:57
get
#define get
heppy_batch.val
val
Definition:
heppy_batch.py:351
APDShape::fillShape
void fillShape(float &time_interval, double &m_thresh, EcalShapeBase::DVec &aVec, const edm::EventSetup *es) const override
Definition:
APDShape.cc:7
Exception
Definition:
hltDiff.cc:246
EcalSimPulseShape::apd_thresh
double apd_thresh
Definition:
EcalSimPulseShape.h:20
JetChargeProducer_cfi.exp
exp
Definition:
JetChargeProducer_cfi.py:6
EcalSimPulseShapeRcd
Definition:
EcalSimPulseShapeRcd.h:5
Generated for CMSSW Reference Manual by
1.8.16