Main Page
Namespaces
Classes
Package Documentation
CVS Directory
WorkBook
Offline Guide
Release schedule
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
CondFormats
HcalObjects
src
HcalPolynomialFunctor.cc
Go to the documentation of this file.
1
#include <algorithm>
2
#include "
FWCore/Utilities/interface/Exception.h
"
3
4
#include "
CondFormats/HcalObjects/interface/HcalPolynomialFunctor.h
"
5
6
HcalPolynomialFunctor::HcalPolynomialFunctor
() : shift_(0.0), xmin_(-DBL_MAX), xmax_(DBL_MAX), outOfRangeValue_(0.0) {}
7
8
HcalPolynomialFunctor::HcalPolynomialFunctor
(
const
std::vector<double>& coeffs,
9
const
double
shift
,
10
const
double
xmin
,
11
const
double
xmax
,
12
const
double
outOfRangeValue)
13
: coeffs_(coeffs), shift_(shift), xmin_(xmin), xmax_(xmax), outOfRangeValue_(outOfRangeValue) {}
14
15
double
HcalPolynomialFunctor::operator()
(
const
double
x
)
const
{
16
double
result
=
outOfRangeValue_
;
17
if
(x >=
xmin_
&& x <=
xmax_
) {
18
result = 0.0;
19
if
(!
coeffs_
.empty()) {
20
const
double
*
a
= &
coeffs_
[0];
21
const
double
y
= x +
shift_
;
22
for
(
int
deg =
coeffs_
.size() - 1; deg >= 0; --deg) {
23
result *=
y
;
24
result += a[deg];
25
}
26
}
27
}
28
return
result
;
29
}
30
31
BOOST_CLASS_EXPORT_IMPLEMENT(
HcalPolynomialFunctor
)
mps_fire.result
tuple result
Definition:
mps_fire.py:311
HcalPolynomialFunctor
Definition:
HcalPolynomialFunctor.h:16
HcalPolynomialFunctor::shift_
double shift_
Definition:
HcalPolynomialFunctor.h:47
HcalPolynomialFunctor::xmin_
double xmin_
Definition:
HcalPolynomialFunctor.h:48
HcalPolynomialFunctor::HcalPolynomialFunctor
HcalPolynomialFunctor()
Definition:
HcalPolynomialFunctor.cc:6
HcalPolynomialFunctor::operator()
double operator()(double x) const override
Definition:
HcalPolynomialFunctor.cc:15
gpuClustering::x
uint16_t const *__restrict__ x
Definition:
gpuClustering.h:39
HcalPolynomialFunctor::xmax_
double xmax_
Definition:
HcalPolynomialFunctor.h:49
HcalPolynomialFunctor::outOfRangeValue_
double outOfRangeValue_
Definition:
HcalPolynomialFunctor.h:50
Exception.h
hlt_dqm_clientPB-live_cfg.xmax
tuple xmax
Definition:
hlt_dqm_clientPB-live_cfg.py:52
HcalPolynomialFunctor::coeffs_
std::vector< double > coeffs_
Definition:
HcalPolynomialFunctor.h:46
DDAxes::y
a
double a
Definition:
hdecay.h:119
edm::shift
static unsigned int const shift
Definition:
LuminosityBlockID.cc:7
hlt_dqm_clientPB-live_cfg.xmin
tuple xmin
Definition:
hlt_dqm_clientPB-live_cfg.py:51
HcalPolynomialFunctor.h
Generated for CMSSW Reference Manual by
1.8.5