 |
Belle II Software
release-05-02-19
|
19 static const double realNaN = std::numeric_limits<double>::quiet_NaN();
27 typedef std::pair<double, double> dd_t;
58 sv123shift_t
operator +(
const sv123shift_t&)
const;
59 bool validshift(
const sv123shift_t& x)
const {
return t + x.t > 0;}
70 shaperdspshift_t&
operator +=(
const shaperdspshift_t&);
71 shaperdspshift_t
operator +(
const shaperdspshift_t&)
const;
135 void Sv123_init(
double t01,
double tb1,
double t02,
double tb2,
double td1,
double ts1);
137 void init(
const double*,
double) __attribute__((noinline));
139 void init(
const double*) __attribute__((noinline));
167 void init(
const std::vector<double>& s,
double u = 27.7221);
185 void fillvector(
double, std::vector<double>&)
const;
187 void fillvector(
double, std::vector<dd_t>&)
const;
193 void fillarray(
double,
int,
double*)
const;
195 void fillarray(
double,
int, dd_t*)
const;
200 #endif//SHAPERDSP_T_H
shaperdspshift_t _tzero
initial time
double _ced
linear coefficient before second part of tail section
ShaperDSP_t()
class constructor
void settimeseed(double)
set initial time
double c1
cos of the second Bessel stage
shaperdspshift_t & operator+=(const shaperdspshift_t &)
increment operator
static const double _defs[]
parameters of the response function that use as default
double _cc1
linear coefficient before cos of the second Bessel stage
Class include function that calculate electronic response from energy deposit
double s0
sin of the first Bessel stage
double _dw1
circular frequency of the second Bessel stage
double operator()(double) const
wrapper of the function
double _ccc
exponent factor for tail part of the signal
shaperdspshift_t _toffset
time offset
void fillvector(std::vector< double > &) const
fill vector with response function values and its derivative
void Sv123_init(double t01, double tb1, double t02, double tb2, double td1, double ts1)
calculate some values for Sv123 function
ShaperDSP_t(const std::vector< double > &s, double u)
class constructor
double c0
cos of the first Bessel stage
double _cs1
linear coefficient before sin of the second Bessel stage
void setseedoffset(double)
set timeoffset
double _dks0
decrement of the first Bessel stage
void settimestride(double)
set grid step for function calculation
double _dd
inverse time of the differential stage
void fillarray(int, double *) const
fill array for amplitude and time calculation
dd_t ddSv123(const sv123shift_t &) const
calculate derivative of the Sv123 function
double Sv123_filtered(const sv123shift_t &) const __attribute__((noinline))
Numerical calculation of the time convolution.
struct for a shift of the shaper dsp
double es
first exponent factor for tail part of the signal.
sv123shift_t _tp
_filterdt
double e1
exponent factor for second Bessel stage
struct to encapsulate the electronic response from energy deposit
sv123shift_t & operator+=(const sv123shift_t &)
increment operator
double _dks1
decrement of the second Bessel stage
double _dt0
coefficient for first exponent factor
void init(const double *, double) __attribute__((noinline))
calculate some values for Sv123 function
void nextseed()
substruct toffset to tzero
Abstract base class for different kinds of events.
double _dt1
coefficient for second exponent factor
sv123shift_t operator+(const sv123shift_t &) const
addition operator
double s1
sin of the second Bessel stage
double _w0
weight coefficient at sv123(t) = (1-a)
double ed
second exponent factor for tail part of the signal.
ShaperDSP_t(const std::vector< double > &s)
calculate derivative of the response function
dd_t ddShaperDSP(const shaperdspshift_t &) const
calculate derivative of the response function
shaperdspshift_t _tstride
time step of the grid for response function calculation
dd_t ddSv123_filtered(const sv123shift_t &) const __attribute__((noinline))
This is derivative of the confolution
double _cc0
linear coefficient before cos of the first Bessel stage
double ShaperDSP(const shaperdspshift_t &) const
calculate response function
static const double realNaN
shortcut for NaN of double type
double _w1
weight coefficient at sv123(t+_filterdt) +sv123(t-_filterdt) = a/2
double _ds
inverse scintillation decay time
void init(double, const ShaperDSP_t &) __attribute__((noinline))
initialise
shaperdspshift_t operator+(const shaperdspshift_t &) const
addition operator
double e0
exponent factor for first Bessel stage
static constexpr double _filterdt
time shift that include in response function for numerical calculation time convolutions.
double Sv123(const sv123shift_t &) const
calculate Sv123 function
double _cs0
linear coefficient before sin of the first Bessel stage
double _dw0
circular frequency of the first Bessel stage
void init(double, const ShaperDSP_t &) __attribute__((noinline))
initialise
double _ces
linear coefficient before first part of tail section