#include <CalibrationDataContainer.h>
Classes | |
class | Bin |
Public Member Functions | |
CalibrationDataMappedHistogramContainer (const char *name="default") | |
virtual CalibrationStatus | getResult (const CalibrationDataVariables &x, double &result, TObject *obj=0, bool extrapolate=false) const |
virtual CalibrationStatus | getStatUncertainty (const CalibrationDataVariables &x, double &result) const |
virtual CalibrationStatus | getUncertainty (const std::string &unc, const CalibrationDataVariables &x, UncertaintyResult &result, TObject *obj=0) const |
virtual bool | isInterpolated () const |
virtual int | getTagWeightAxis () const |
void | setMappedVariables (const std::vector< std::string > &variables) |
std::vector< std::string > | getMappedVariables () const |
virtual std::vector< double > | getBinBoundaries (unsigned int vartype) const |
unsigned int | addBin (const Bin &bin) |
unsigned int | getNMappedBins () const |
This is the class holding information for histogram-based calibration results, in cases where 'irregular' binning is used (e.g., if the binning in one variable depends on another variable), or where the dimensionality becomes too high for even 3D histograms (so that a mapping is needed to use THx).
Using this class instead of the 'regular' histogram container will imply a performance penalty, as bin numberings are not assumed to feature any regularity.
unsigned int CalibrationDataMappedHistogramContainer::addBin | ( | const Bin & | bin | ) |
Add mapping bin. The return value is the bin number.
std::vector< double > CalibrationDataMappedHistogramContainer::getBinBoundaries | ( | unsigned int | vartype | ) | const [virtual] |
Retrieve the bin boundaries for the specified variable type (which should be a CalibrationParametrization enum). An empty vector will be returned if the specified variable is not actually used.
Reimplemented from Analysis::CalibrationDataHistogramContainer.
std::vector< std::string > CalibrationDataMappedHistogramContainer::getMappedVariables | ( | ) | const |
List which variables get mapped onto a single histogram axis
unsigned int CalibrationDataMappedHistogramContainer::getNMappedBins | ( | ) | const |
return the number of mapped bins
CalibrationStatus CalibrationDataMappedHistogramContainer::getResult | ( | const CalibrationDataVariables & | x, | |
double & | result, | |||
TObject * | obj = 0 , |
|||
bool | extrapolate = false | |||
) | const [virtual] |
retrieve the calibration result.
x | user-supplied (kinematic or other) variables | |
result | requested result | |
obj | object holding the requested result (it will be computed if not provided) | |
extrapolate | flag that extrapolation applies (should only be relevant when using eigenvector variations) |
Reimplemented from Analysis::CalibrationDataHistogramContainer.
CalibrationStatus CalibrationDataMappedHistogramContainer::getStatUncertainty | ( | const CalibrationDataVariables & | x, | |
double & | result | |||
) | const [virtual] |
retrieve the calibration statistical uncertainty.
x | user-supplied (kinematic or other) variables | |
result | requested statistical uncertainty |
Reimplemented from Analysis::CalibrationDataHistogramContainer.
int CalibrationDataMappedHistogramContainer::getTagWeightAxis | ( | ) | const [virtual] |
Test whether this calibration object is one for "continuous" calibration (this has some subtle consequences for the treatment of bin-to-bin correlations). The return value will be -1 in case this is not a "continuous" calibration object, and the axis number (0 for X, 1 for Y, 2 for Z) otherwise.
Reimplemented from Analysis::CalibrationDataHistogramContainer.
CalibrationStatus CalibrationDataMappedHistogramContainer::getUncertainty | ( | const std::string & | unc, | |
const CalibrationDataVariables & | x, | |||
UncertaintyResult & | result, | |||
TObject * | obj = 0 | |||
) | const [virtual] |
retrieve the calibration uncertainty due to the given source.
x | user-supplied (kinematic or other) variables | |
unc | uncertainty specification | |
result | requested uncertainty (for both positive and negative variation, if available) | |
obj | object holding the requested uncertainty information (it will be computed if not provided) |
Reimplemented from Analysis::CalibrationDataHistogramContainer.
virtual bool Analysis::CalibrationDataMappedHistogramContainer::isInterpolated | ( | ) | const [inline, virtual] |
Indicate whether histogram interpolation is used or not. Not applicable here.
Reimplemented from Analysis::CalibrationDataHistogramContainer.
void CalibrationDataMappedHistogramContainer::setMappedVariables | ( | const std::vector< std::string > & | variables | ) |
Set (by hand) the variables that will be mapped onto a single histogram axis