37 return (this->*f)(raw_time, trigger_bin) ;
43 return (this->*fErr)(raw_time, raw_timeErr, trigger_bin) ;
83 void set_bias(
double tb0,
double tb1,
double tb2,
double tb3)
91 void set_scale(
double tb0,
double tb1,
double tb2,
double tb3)
168 return m_par[0] +
m_par[1] * raw_time +
m_par[2] * pow(raw_time, 2) +
m_par[3] * pow(raw_time, 3);
173 return raw_timeErr * (
m_par[1] + 2 *
m_par[2] * raw_time + 3 *
m_par[3] * pow(raw_time, 2));
181 return m_par[0] +
m_par[1] * raw_time +
m_par[2] * pow(raw_time, 2) +
m_par[3] * pow(raw_time, 3) +
m_par[4] * pow(raw_time,
182 4) +
m_par[5] * pow(raw_time, 5);
187 return raw_timeErr * (
m_par[1] + 2 *
m_par[2] * raw_time + 3 *
m_par[3] * pow(raw_time, 2) + 4 *
m_par[4] * pow(raw_time,
188 3) + 5 *
m_par[5] * pow(raw_time, 4));
199 return std::numeric_limits<float>::quiet_NaN();
208 return std::numeric_limits<float>::quiet_NaN();
210 return raw_timeErr * (
m_par[1] -
m_par[2] / pow(raw_time -
m_par[3], 2));
class to contain the CoG Time calibrations
static const int nTriggerBins
total number of trigger bins
static std::vector< cogFunction > m_implementations
vector of fuctions for time calibration, we use the m_current
double pol3TBindep(double raw_time, int) const
ID = 1, pol3TBindep VERSION: (TB independent) correctedValue = par[0] + t * par[1] + t^2 * par[2] + t...
double pol1TBdep(double raw_time, int tb) const
pol1 TB dep version implementation
void set_elsparameters(double a, double b, double c, double d)
set the parameters for the ELS TB independent function
double m_bias[nTriggerBins]
function parameters & implementations
double pol5TBindep(double raw_time, int) const
ID = 2, pol5TBindep VERSION: (TB independent) correctedValue = par[0] + t * par[1] + t^2 * par[2] + t...
double m_scale[nTriggerBins]
trigger-bin dependent scale
double pol3TBindepErr(double raw_time, double raw_timeErr, int) const
implementation of pol3 TB indep error
static const int m_nPar
number of parameters of highest-order implemented pol (5)
SVDCoGCalibrationFunction & operator=(const Belle2::SVDCoGCalibrationFunction &a)
operator =
int m_current
current function ID
SVDCoGCalibrationFunction()
constructor
double pol1TBdepErr(double, double raw_timeErr, int tb) const
implementation of pol1 TB dep error
static std::vector< cogFunctionErr > m_implementationsErr
Do not stream this, please throw it in the WC.
double(SVDCoGCalibrationFunction::* cogFunctionErr)(double, double, int) const
typedef of the return value of the calibration function ERROR
double calibratedValue(double raw_time, int trigger_bin) const
returns the calibrated value of raw_time, depending on the trigger bin
double calibratedValueError(double raw_time, double raw_timeErr, int trigger_bin) const
returns the error of the calibrated value of raw_time, depending on the trigger bin
double pol5TBindepErr(double raw_time, double raw_timeErr, int) const
implementation of pol5 TB indep error
double elsTBindep(double raw_time, int) const
ID = 3, elsTBindep VERSION: (TB independent) correctedValue = par[0] + t * par[1] + par[2]/(t - par[3...
double elsTBindepErr(double raw_time, double raw_timeErr, int) const
implementation of els TB indep error
void set_scale(double tb0, double tb1, double tb2, double tb3)
set the trigger bin dependent scale
double m_par[m_nPar]
vector of parameters
void set_pol5parameters(double a, double b, double c, double d, double e, double f)
set the pol5 TB independent parameters
void set_current(int current)
allows to choose the function version
void set_pol3parameters(double a, double b, double c, double d)
set the pol3 TB independent parameters
double(SVDCoGCalibrationFunction::* cogFunction)(double, int) const
typedef of the return value of the calibration function
void set_bias(double tb0, double tb1, double tb2, double tb3)
set the trigger bin dependent shift
double sqrt(double a)
sqrt for double
Abstract base class for different kinds of events.