Belle II Software development
|
Modules | |
reconstruction data objects | |
reconstruction modules | |
Classes | |
class | BeamSpotAlgorithm |
Class implementing BeamSpot calibration algorithm. More... | |
class | BoostVectorAlgorithm |
Class implementing BoostVector calibration algorithm. More... | |
struct | CalibPars |
The parameters related to single calibration interval. More... | |
struct | CalibrationData |
Parameters and data relevant for single calibration interval. More... | |
class | ChebFitter |
Unbinned Maximum Likelihood fitter with a possibility to use Chebyshev interpolation. More... | |
class | InvariantMassAlgorithm |
Class implementing InvariantMass calibration algorithm. More... | |
struct | Atom |
Very small (few mins) calibration interval which cannot be further divided : Atom. More... | |
struct | ExpRun |
Struct containing exp number and run number. More... | |
struct | ExpRunEvt |
struct with expNum, runNum, evtNum More... | |
class | Splitter |
Class that allows to split runs into the intervals of intended properties given by the lossFunction. More... | |
struct | Spline |
Spline structure for zero-order & linear splines. More... | |
class | CDCDedx1DCellAlgorithm |
A calibration algorithm for CDC dE/dx electron: 1D enta cleanup correction. More... | |
class | CDCDedx2DCellAlgorithm |
A calibration algorithm for CDC dE/dx electron 2D enta vs doca correction. More... | |
class | CDCDedxBadWireAlgorithm |
A calibration algorithm for CDC dE/dx to find the bad wires. More... | |
class | CDCDedxCosEdgeAlgorithm |
A calibration algorithm for CDC dE/dx electron cos(theta) dependence. More... | |
class | CDCDedxCosineAlgorithm |
A calibration algorithm for CDC dE/dx electron cos(theta) dependence. More... | |
class | CDCDedxInjectTimeAlgorithm |
A calibration algorithm for CDC dE/dx injection time (HER/LER) More... | |
class | CDCDedxMomentumAlgorithm |
A calibration algorithm for CDC dE/dx electron cos(theta) dependence. More... | |
class | CDCDedxRunGainAlgorithm |
A calibration algorithm for CDC dE/dx run gains. More... | |
class | CDCDedxWireGainAlgorithm |
A calibration algorithm for CDC dE/dx wire gains. More... | |
class | CDCDedx1DCell |
dE/dx wire gain calibration constants More... | |
class | CDCDedx2DCell |
dE/dx wire gain calibration constants More... | |
class | CDCDedxADCNonLinearity |
dE/dx electronic ADC non-linearity correction for highly ionising particles (used in offline hadron saturation calibration) parameters are for X vs Y relation and sep for inner and outer layer vector array 0,1 for inner and 2,3 for outer layers More... | |
class | CDCDedxBadWires |
dE/dx wire gain calibration constants More... | |
class | CDCDedxCosineCor |
dE/dx wire gain calibration constants More... | |
class | CDCDedxCosineEdge |
dE/dx special large cosine calibration to fix bending shoulder at large costh More... | |
class | CDCDedxDatabaseImporter |
dE/dx database importer. More... | |
class | CDCDedxHadronCor |
dE/dx hadron saturation parameterization constants More... | |
class | CDCDedxInjectionTime |
dE/dx injection time calibration constants More... | |
class | CDCDedxMeanPars |
dE/dx mean (curve versus beta-gamma) parameterization constants More... | |
class | CDCDedxMomentumCor |
dE/dx wire gain calibration constants More... | |
class | CDCDedxRunGain |
dE/dx run gain calibration constants More... | |
class | CDCDedxScaleFactor |
dE/dx run gain calibration constants More... | |
class | CDCDedxSigmaPars |
dE/dx sigma (versus beta-gamma) parameterization constants More... | |
class | CDCDedxWireGain |
dE/dx wire gain calibration constants More... | |
class | DedxPDFs |
dE/dx wire gain calibration constants More... | |
class | EventsOfDoomParameters |
DBObject containing parameters used in EventsOfDoomBuster module. More... | |
class | CDCDedxMeanPred |
Class to hold the prediction of mean as a function of beta-gamma (bg) More... | |
class | CDCDedxSigmaPred |
Class to hold the prediction of resolution depending dE/dx, nhit, and cos(theta) More... | |
Typedefs | |
typedef std::map< std::string, double > | Pars |
values of parameters in ML fit | |
typedef std::map< std::string, std::pair< double, double > > | Limits |
limits of parameters in ML fit | |
Functions | |
TMatrixDSym | toTMatrixDSym (Eigen::MatrixXd mIn) |
Function that converts Eigen symmetric matrix to ROOT matrix. | |
B2Vector3D | toB2Vector3 (Eigen::VectorXd vIn) |
Function that converts Eigen vector to ROOT vector. | |
int | getID (const std::vector< double > &breaks, double t) |
get id of the time point t | |
void | extrapolateCalibration (std::vector< CalibrationData > &calVec) |
Extrapolate calibration to intervals where it failed. | |
void | addShortRun (std::vector< CalibrationData > &calVec, std::pair< ExpRun, std::pair< double, double > > shortRun) |
Extrapolate calibration to the very short runs which were filtered before. | |
double | encodeNumber (double val, unsigned num) |
Encode integer num into double val such that val is nearly not changed (maximally by a relative shift 1e-6). | |
unsigned | decodeNumber (double val) |
Decode the integer number encoded in val. | |
template<typename Evt > | |
void | storePayloads (const std::vector< Evt > &evts, const std::vector< CalibrationData > &calVecConst, std::string objName, std::function< TObject *(Eigen::VectorXd, Eigen::MatrixXd, Eigen::MatrixXd) > getCalibObj) |
Store payloads to files. | |
void | storePayloadsNoIntraRun (const std::vector< CalibrationData > &calVecConst, std::string objName, std::function< TObject *(Eigen::VectorXd, Eigen::MatrixXd, Eigen::MatrixXd) > getCalibObj) |
Store payloads to files, where calib data have no intra-run dependence. | |
template<typename Evt , typename Fun > | |
CalibrationData | runAlgorithm (const std::vector< Evt > &evts, std::vector< std::map< ExpRun, std::pair< double, double > > > range, Fun runCalibAnalysis) |
run calibration algorithm for single calibration interval | |
template<typename Fun1 , typename Fun2 > | |
CalibrationAlgorithm::EResult | runCalibration (TTree *tracks, const std::string &calibName, Fun1 GetEvents, Fun2 calibAnalysis, std::function< TObject *(Eigen::VectorXd, Eigen::MatrixXd, Eigen::MatrixXd)> calibObjCreator, TString m_lossFunctionOuter, TString m_lossFunctionInner) |
Run the the calibration over the whole event sample. | |
std::pair< double, double > | getMinima (std::vector< std::vector< double > > vals, int i0, int j0) |
Get minimum inside and outside of the smaller window defined by i0, j0. | |
std::vector< double > | getMinimum (std::function< double(double, double)> fun, double xMin, double xMax, double yMin, double yMax) |
Get minimum of 2D function in the rectangular domain defined by xMin,xMax & yMin,yMax. | |
Eigen::VectorXd | getWeights (int Size) |
Get the vector of weights to calculate the integral over the Chebyshev nodes The nodes are by definition between 0 and 1, there are Size nodes To get their positions, use getNodes. | |
Eigen::VectorXd | getNodes (int Size) |
Get the vector of positions of the Chebyshev nodes The nodes are by definition between 0 and 1, there are Size nodes For the corresponding weights use getWeights. | |
Eigen::VectorXd | getPols (int Size, double x) |
Evaluate Chebyshev polynomials up to Size at point x It returns a vector of the P_i(x) for i=0..Size-1 The polynomial is defined for x between 0 and 1. | |
Eigen::VectorXd | getPolsSum (int Size, Eigen::VectorXd x) |
Calculate the Chebyshev polynomials of order i=0..Size-1 at points given in vector x_j and sum it over point index j It returns sum_j P_i(x_j) for i=0..Size-1 The Chebyshev polynomials are defined for x between 0 and 1. | |
Eigen::MatrixXd | getCoefs (int Size, bool isInverse=false) |
Transformation matrix between Cheb nodes and coefficients of the Cheb polynomials Notice, that there are two alternative ways defining polynomial interpolation: | |
double | evalPol (const Eigen::VectorXd &polCoef, double x) |
Evaluate Cheb. | |
Eigen::MatrixXd | getCoefsCheb (int oldSize) |
Transformation matrix between Cheb nodes and Cheb coefficients with better normalization of the borders. | |
Eigen::VectorXd | interpol (const Eigen::VectorXd &xi, double x) |
Get Interpolation vector k_i for point x from the function values at points xi (polynomial interpolation) In the second step, the function value at x can be evaluated as sum_i vals_i k_i. | |
double | interpol (Eigen::VectorXd xi, Eigen::VectorXd vals, double x) |
Get interpolated function value at point x when function values vals at points xi are provided. | |
bool | operator!= (ExpRun a, ExpRun b) |
Not equal for ExpRun. | |
bool | operator< (ExpRun a, ExpRun b) |
less than for ExpRun | |
std::map< ExpRun, std::pair< double, double > > | filter (const std::map< ExpRun, std::pair< double, double > > &runs, double cut, std::map< ExpRun, std::pair< double, double > > &runsRemoved) |
filter events to remove runs shorter than cut, it stores removed runs in runsRemoved | |
std::pair< int, int > | getStartEndIndexes (int nIntervals, std::vector< int > breaks, int indx) |
get the range of interval with nIntervals and breaks stored in a vector | |
std::vector< Atom > | slice (std::vector< Atom > vec, int s, int e) |
Slice the vector to contain only elements with indexes s .. e (included) | |
std::vector< std::map< ExpRun, std::pair< double, double > > > | breaks2intervalsSep (const std::map< ExpRun, std::pair< double, double > > &runsMap, const std::vector< Atom > &currVec, const std::vector< int > &breaks) |
Get calibration intervals according to the indexes of the breaks. | |
template<typename Evt > | |
std::map< ExpRun, std::pair< double, double > > | getRunInfo (const std::vector< Evt > &evts) |
Get the map of runs, where each run contains pair with start/end time [hours]. | |
template<typename Evt > | |
ExpRunEvt | getPosition (const std::vector< Evt > &events, double tEdge) |
Get the exp-run-evt number from the event time [hours]. | |
template<typename Evt > | |
std::vector< ExpRunEvt > | convertSplitPoints (const std::vector< Evt > &events, std::vector< double > splitPoints) |
Convert splitPoints [hours] to breakPoints in ExpRunEvt. | |
TString | rn () |
Get random string. | |
std::vector< std::vector< double > > | merge (std::vector< std::vector< std::vector< double > > > toMerge) |
merge { vector<double> a, vector<double> b} into {a, b} | |
Eigen::VectorXd | vec2vec (std::vector< double > vec) |
std vector -> ROOT vector | |
std::vector< double > | vec2vec (Eigen::VectorXd v) |
ROOT vector -> std vector. | |
Eigen::MatrixXd | vecs2mat (std::vector< std::vector< double > > vecs) |
merge columns (from std::vectors) into ROOT matrix | |
std::vector< double > | getRangeLin (int nVals, double xMin, double xMax) |
Equidistant range between xMin and xMax for spline of the first order. | |
std::vector< double > | getRangeZero (int nVals, double xMin, double xMax) |
Equidistant range between xMin and xMax for spline of the zero order. | |
std::vector< double > | slice (std::vector< double > v, unsigned ind, unsigned n) |
put slice of original vector v[ind:ind+n] into new one, n is number of elements | |
double | eval (const std::vector< double > &spl, const std::vector< double > &vals, double x) |
Evaluate spline (zero order or first order) in point x. | |
VectorXd | getPolsSum (int Size, VectorXd x) |
Calculate the Chebyshev polynomials of order i=0..Size-1 at points given in vector x_j and sum it over point index j It returns sum_j P_i(x_j) for i=0..Size-1 The Chebyshev polynomials are defined for x between 0 and 1. | |
double | evalPol (const VectorXd &polCoef, double x) |
Evaluate Cheb. | |
VectorXd | interpol (const VectorXd &xi, double x) |
Get Interpolation vector k_i for point x from the function values at points xi (polynomial interpolation) In the second step, the function value at x can be evaluated as sum_i vals_i k_i. | |
double | interpol (VectorXd xi, VectorXd vals, double x) |
Get interpolated function value at point x when function values vals at points xi are provided. | |
void | plotRuns (std::vector< std::pair< double, double > > runs) |
plot runs on time axis | |
void | plotSRuns (std::vector< std::pair< double, double > > runs, std::vector< int > breaks, int offset=2) |
plot clusters or runs on time axis | |
void | printBySize (std::vector< std::pair< double, double > > runs) |
print sorted lengths of the runs | |
static ExpRun | getRun (std::map< ExpRun, std::pair< double, double > > runs, double t) |
Get exp number + run number from time. | |
CDCDedxTrack const * | getDedxFromParticle (Particle const *particle) |
CDC dEdx value from particle. | |
VXDDedxTrack const * | getSVDDedxFromParticle (Particle const *particle) |
SVD dEdx value from particle. | |
Eigen::VectorXd | getLogFunction (Pars pars) const |
Get the -2*log(p(x)) on the Cheb nodes. | |
void | init (int Size, double xMin, double xMax) |
Initialize the fitter (the Chebyshev coefficients) | |
double | getLogLikelihoodSlow (const Pars &pars) const |
Calculate log likelihood using exact formula. | |
double | getLogLikelihoodFast (const Pars &pars) const |
Calculate log likelihood using approximation based on Chebyshev polynomials (typically faster) | |
double | operator() (const double *par) const |
Evaluate the log likelihood. | |
Eigen::VectorXd | getDataGrid () const |
Calculate Chebyshev coefficients for the data set. | |
std::pair< Eigen::VectorXd, Eigen::MatrixXd > | getDataGridWithCov () const |
Calculate Chebyshev coefficients with the covariance (useful for toy studies) | |
std::pair< Pars, Eigen::MatrixXd > | fitData (Pars pars, Limits limits, bool UseCheb=true) |
Fit the data with specified initial values of parameters and limits on them. | |
double | getFunctionFast (const Pars &pars, double x) |
Evaluate the fitted function approximated with the Chebyshev polynomial, typically runs faster. | |
double | lossFunction (const std::vector< Atom > &vec, int s, int e) const |
lossFunction of the calibration interval consisting of several "atoms" stored in vector vec The atoms included in calibration interval have indices between s and e | |
static std::vector< std::pair< double, double > > | splitToSmall (std::map< ExpRun, std::pair< double, double > > runs, double intSize=1./60) |
Split the runs into small calibration intervals (atoms) of a specified size. | |
double | getMinLoss (const std::vector< Atom > &vec, int e, std::vector< int > &breaks) |
Recursive function to evaluate minimal sum of the lossFuctions for the optimal clustering. | |
std::vector< int > | dynamicBreaks (const std::vector< Atom > &runs) |
Get optimal break points using algorithm based on dynamic programming. | |
static std::map< ExpRun, std::pair< double, double > > | mergeIntervals (std::map< ExpRun, std::pair< double, double > > I1, std::map< ExpRun, std::pair< double, double > > I2) |
Merge two subintervals into one subinterval. | |
typedef std::map<std::string, std::pair<double, double> > Limits |
limits of parameters in ML fit
Definition at line 28 of file ChebFitter.h.
typedef std::map<std::string, double> Pars |
values of parameters in ML fit
Definition at line 25 of file ChebFitter.h.
|
inline |
Extrapolate calibration to the very short runs which were filtered before.
Definition at line 151 of file calibTools.h.
std::vector< std::map< ExpRun, std::pair< double, double > > > breaks2intervalsSep | ( | const std::map< ExpRun, std::pair< double, double > > & | runsMap, |
const std::vector< Atom > & | currVec, | ||
const std::vector< int > & | breaks | ||
) |
Get calibration intervals according to the indexes of the breaks.
runsMap | map defining the time ranges of the runs |
currVec | vector with time intervals of the atoms (small non-divisible time intervals) |
breaks | vector with integer indexes of the breaks |
Definition at line 280 of file Splitter.cc.
std::vector< ExpRunEvt > convertSplitPoints | ( | const std::vector< Evt > & | events, |
std::vector< double > | splitPoints | ||
) |
Convert splitPoints [hours] to breakPoints in ExpRunEvt.
events | vector of events |
splitPoints | the vector containing times of the edges of the calibration intervals [hours] |
Definition at line 363 of file Splitter.h.
|
inline |
Decode the integer number encoded in val.
Definition at line 208 of file calibTools.h.
|
private |
Get optimal break points using algorithm based on dynamic programming.
runs | Vector of atoms, where each atom is an intervals in time |
Definition at line 241 of file Splitter.cc.
|
inline |
Encode integer num into double val such that val is nearly not changed (maximally by a relative shift 1e-6).
It is use to store time information to the payloads
Definition at line 186 of file calibTools.h.
|
inline |
Evaluate spline (zero order or first order) in point x.
Definition at line 115 of file tools.h.
double evalPol | ( | const Eigen::VectorXd & | polCoef, |
double | x | ||
) |
Evaluate Cheb.
pol at point x when the coefficients of the expansion are provided
double evalPol | ( | const VectorXd & | polCoef, |
double | x | ||
) |
|
inline |
Extrapolate calibration to intervals where it failed.
Definition at line 102 of file calibTools.h.
std::map< ExpRun, std::pair< double, double > > filter | ( | const std::map< ExpRun, std::pair< double, double > > & | runs, |
double | cut, | ||
std::map< ExpRun, std::pair< double, double > > & | runsRemoved | ||
) |
filter events to remove runs shorter than cut, it stores removed runs in runsRemoved
Definition at line 38 of file Splitter.cc.
Fit the data with specified initial values of parameters and limits on them.
Definition at line 155 of file ChebFitter.cc.
MatrixXd getCoefs | ( | int | Size, |
bool | isInverse = false |
||
) |
Transformation matrix between Cheb nodes and coefficients of the Cheb polynomials Notice, that there are two alternative ways defining polynomial interpolation:
Definition at line 127 of file nodes.cc.
MatrixXd getCoefsCheb | ( | int | oldSize | ) |
|
private |
Calculate Chebyshev coefficients for the data set.
Definition at line 109 of file ChebFitter.cc.
|
private |
Calculate Chebyshev coefficients with the covariance (useful for toy studies)
Definition at line 130 of file ChebFitter.cc.
CDCDedxTrack const * getDedxFromParticle | ( | Particle const * | particle | ) |
CDC dEdx value from particle.
Definition at line 37 of file DedxVariables.cc.
|
private |
Evaluate the fitted function approximated with the Chebyshev polynomial, typically runs faster.
Definition at line 226 of file ChebFitter.cc.
|
inline |
get id of the time point t
Definition at line 60 of file calibTools.h.
|
private |
Get the -2*log(p(x)) on the Cheb nodes.
Definition at line 43 of file ChebFitter.cc.
|
private |
Calculate log likelihood using approximation based on Chebyshev polynomials (typically faster)
Definition at line 89 of file ChebFitter.cc.
|
private |
Calculate log likelihood using exact formula.
Definition at line 76 of file ChebFitter.cc.
|
inline |
Get minimum inside and outside of the smaller window defined by i0, j0.
Definition at line 23 of file minimizer.h.
|
inline |
Get minimum of 2D function in the rectangular domain defined by xMin,xMax & yMin,yMax.
Definition at line 44 of file minimizer.h.
|
private |
Recursive function to evaluate minimal sum of the lossFuctions for the optimal clustering.
It return the minimum of the lossFunction and optimal break points giving such value. It acts only on atoms with indexes between 0 and e
vec | Vector of atoms, where each atom is an intervals in time | |
e | the index of the last atom included in the optimisation problem | |
[out] | breaks | Output vector with indexes of optimal break points |
Definition at line 204 of file Splitter.cc.
VectorXd getNodes | ( | int | Size | ) |
Get the vector of positions of the Chebyshev nodes The nodes are by definition between 0 and 1, there are Size nodes For the corresponding weights use getWeights.
Definition at line 65 of file nodes.cc.
VectorXd getPols | ( | int | Size, |
double | x | ||
) |
Evaluate Chebyshev polynomials up to Size at point x It returns a vector of the P_i(x) for i=0..Size-1 The polynomial is defined for x between 0 and 1.
Definition at line 77 of file nodes.cc.
VectorXd getPolsSum | ( | int | Size, |
VectorXd | x | ||
) |
Calculate the Chebyshev polynomials of order i=0..Size-1 at points given in vector x_j and sum it over point index j It returns sum_j P_i(x_j) for i=0..Size-1 The Chebyshev polynomials are defined for x between 0 and 1.
Definition at line 96 of file nodes.cc.
|
inline |
Get the exp-run-evt number from the event time [hours].
events | vector of events |
tEdge | the event time of the event of interest [hours] |
Definition at line 341 of file Splitter.h.
|
inline |
Equidistant range between xMin and xMax for spline of the first order.
Definition at line 83 of file tools.h.
|
inline |
Equidistant range between xMin and xMax for spline of the zero order.
Definition at line 94 of file tools.h.
Get exp number + run number from time.
runs | map, where key contain the exp-run number and value the start- and end-time of the run |
t | time of interest [hours] |
Definition at line 262 of file Splitter.cc.
|
inline |
Get the map of runs, where each run contains pair with start/end time [hours].
evts | vector of events |
Definition at line 312 of file Splitter.h.
std::pair< int, int > getStartEndIndexes | ( | int | nIntervals, |
std::vector< int > | breaks, | ||
int | indx | ||
) |
get the range of interval with nIntervals and breaks stored in a vector
Definition at line 83 of file Splitter.cc.
VXDDedxTrack const * getSVDDedxFromParticle | ( | Particle const * | particle | ) |
SVD dEdx value from particle.
Definition at line 55 of file DedxVariables.cc.
VectorXd getWeights | ( | int | Size | ) |
Get the vector of weights to calculate the integral over the Chebyshev nodes The nodes are by definition between 0 and 1, there are Size nodes To get their positions, use getNodes.
Definition at line 29 of file nodes.cc.
void init | ( | int | Size, |
double | xMin, | ||
double | xMax | ||
) |
Initialize the fitter (the Chebyshev coefficients)
Definition at line 59 of file ChebFitter.cc.
VectorXd interpol | ( | const VectorXd & | xi, |
double | x | ||
) |
Get Interpolation vector k_i for point x from the function values at points xi (polynomial interpolation) In the second step, the function value at x can be evaluated as sum_i vals_i k_i.
Definition at line 189 of file nodes.cc.
double interpol | ( | Eigen::VectorXd | xi, |
Eigen::VectorXd | vals, | ||
double | x | ||
) |
Get interpolated function value at point x when function values vals at points xi are provided.
If the points xi are fixed and only vals are different between interpol calls, use interpol(xi, x) to speed up the evaluation.
double interpol | ( | VectorXd | xi, |
VectorXd | vals, | ||
double | x | ||
) |
Get interpolated function value at point x when function values vals at points xi are provided.
If the points xi are fixed and only vals are different between interpol calls, use interpol(xi, x) to speed up the evaluation.
Definition at line 210 of file nodes.cc.
|
private |
lossFunction of the calibration interval consisting of several "atoms" stored in vector vec The atoms included in calibration interval have indices between s and e
the lossFunction formula (it can be modified according to the user's taste)
vec | Vector of atoms, where each atom is an intervals in time |
s | First index of the calib. interval |
e | Last index of the calib. interval |
Definition at line 135 of file Splitter.cc.
|
inline |
|
static |
Merge two subintervals into one subinterval.
I1 | First subinterval to merge |
I2 | Second subinterval to merge |
Definition at line 306 of file Splitter.cc.
Not equal for ExpRun.
Definition at line 71 of file Splitter.h.
double operator() | ( | const double * | par | ) | const |
Evaluate the log likelihood.
Definition at line 97 of file ChebFitter.cc.
less than for ExpRun
Definition at line 74 of file Splitter.h.
void plotRuns | ( | std::vector< std::pair< double, double > > | runs | ) |
plot runs on time axis
Definition at line 57 of file Splitter.cc.
void plotSRuns | ( | std::vector< std::pair< double, double > > | runs, |
std::vector< int > | breaks, | ||
int | offset = 2 |
||
) |
plot clusters or runs on time axis
Definition at line 94 of file Splitter.cc.
void printBySize | ( | std::vector< std::pair< double, double > > | runs | ) |
print sorted lengths of the runs
Definition at line 119 of file Splitter.cc.
|
inline |
|
inline |
run calibration algorithm for single calibration interval
Definition at line 335 of file calibTools.h.
CalibrationAlgorithm::EResult runCalibration | ( | TTree * | tracks, |
const std::string & | calibName, | ||
Fun1 | GetEvents, | ||
Fun2 | calibAnalysis, | ||
std::function< TObject *(Eigen::VectorXd, Eigen::MatrixXd, Eigen::MatrixXd)> | calibObjCreator, | ||
TString | m_lossFunctionOuter, | ||
TString | m_lossFunctionInner | ||
) |
Run the the calibration over the whole event sample.
tracks | TTree object with mu-mu events |
calibName | name of the calibration payload |
GetEvents | function that transforms TTree to std::vector |
calibAnalysis | function that performs the calibration on a single calibration interval |
calibObjCreator | function that stores results to the payload class which inherits from TObject |
m_lossFunctionOuter | Lost function for the calibration intervals of the spread parameters |
m_lossFunctionInner | Lost function for the calibration subintervals (for the mean value parameters) |
Definition at line 428 of file calibTools.h.
Slice the vector to contain only elements with indexes s .. e (included)
Definition at line 85 of file Splitter.h.
|
inline |
|
staticprivate |
Split the runs into small calibration intervals (atoms) of a specified size.
By definition each of these intervals spans only over single run. These will be clustered into larger intervals in the next steps
runs | Runs to split into the atoms |
intSize | Intended size of the small intervals |
Definition at line 173 of file Splitter.cc.
|
inline |
Store payloads to files.
Definition at line 225 of file calibTools.h.
|
inline |
Store payloads to files, where calib data have no intra-run dependence.
Definition at line 290 of file calibTools.h.
|
inline |
Function that converts Eigen vector to ROOT vector.
Definition at line 54 of file calibTools.h.
|
inline |
Function that converts Eigen symmetric matrix to ROOT matrix.
Definition at line 44 of file calibTools.h.
|
inline |
|
inline |
|
inline |