![]() |
ATLAS Offline Software
|
This is the class holding information for histogram-based calibration results. More...
#include <CalibrationDataContainer.h>
Public Member Functions | |
| CalibrationDataHistogramContainer (const char *name="default") | |
| virtual | ~CalibrationDataHistogramContainer () |
| virtual CalibrationStatus | getResult (const CalibrationDataVariables &x, double &result, TObject *obj=0, bool extrapolate=false) |
| retrieve the calibration result. | |
| virtual CalibrationStatus | getStatUncertainty (const CalibrationDataVariables &x, double &result) |
| retrieve the calibration statistical uncertainty. | |
| virtual CalibrationStatus | getUncertainty (const std::string &unc, const CalibrationDataVariables &x, UncertaintyResult &result, TObject *obj=0) |
| retrieve the calibration uncertainty due to the given source. | |
| bool | isBinCorrelated (const std::string &unc) const |
| Indicate whether the given uncertainty is correlated from bin to bin or not (note that this function is to be used only for systematic uncertainties) | |
| void | setUncorrelated (const std::string &unc) |
| Indicate that the given uncertainty is to be treated uncorrelated from bin to bin (note that the default is for all systematic uncertainties to be treated as correlated) | |
| void | setInterpolated (bool doInterpolate) |
| Indicate whether results are to be interpolated between bins or not (this feature is thought to be useful mostly for MC efficiencies) | |
| virtual bool | isInterpolated () const |
| Indicate whether histogram interpolation is used or not. | |
| virtual int | getTagWeightAxis () |
| Test whether this calibration object is one for "continuous" calibration (this has some subtle consequences for the treatment of bin-to-bin correlations). | |
| virtual std::vector< double > | getBinBoundaries (unsigned int vartype) |
| Retrieve the bin boundaries for the specified variable type (which should be a CalibrationParametrization enum). | |
| virtual int | getEigenvectorReduction (unsigned int choice) const |
| Retrieve the number of eigenvectors to be retained for the purpose of eigenvector variation reduction strategies. | |
Protected Attributes | |
| std::map< unsigned int, std::vector< double > > | m_binBoundaries |
| Cache for bin boundary information. | |
Private Member Functions | |
| double | getInterpolatedResult (TH1 *hist) const |
| Retrieve interpolated result (utility function) | |
| double | getInterpolatedUncertainty (TH1 *hist) const |
| Retrieve interpolated result (utility function) | |
| void | checkBounds () |
| check the bounds of validity for this calibration object | |
| virtual void | computeVariableTypes () |
| utility for determining global bin number, subject to extrapolation constraints. | |
| ClassDef (CalibrationDataHistogramContainer, 2) | |
Private Attributes | |
| THashList | m_uncorrelatedSyst |
| no need to persistify | |
| bool | m_interpolate |
| If true, interpolate between bins rather than doing a straight bin-wise evaluation. | |
This is the class holding information for histogram-based calibration results.
Definition at line 247 of file CalibrationDataContainer.h.
| Analysis::CalibrationDataHistogramContainer::CalibrationDataHistogramContainer | ( | const char * | name = "default" | ) |
|
virtual |
Definition at line 483 of file CalibrationDataContainer.cxx.
|
private |
check the bounds of validity for this calibration object
Definition at line 673 of file CalibrationDataContainer.cxx.
|
private |
|
privatevirtual |
utility for determining global bin number, subject to extrapolation constraints.
| hist | pointer to histogram containing actual bin boundary information |
| doExtrapolate | specifies whether or not an extrapolation uncertainty is being requested decode the 'uncertainty' objects' names to determine the relevant variable types |
Implements Analysis::CalibrationDataContainer.
Definition at line 490 of file CalibrationDataContainer.cxx.
|
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.
Definition at line 952 of file CalibrationDataContainer.cxx.
|
virtual |
Retrieve the number of eigenvectors to be retained for the purpose of eigenvector variation reduction strategies.
| choice | specification of the reduction option (integer corresponding to the CalibrationDataInterfaceROOT::EVReductionStrategy enum) |
Definition at line 986 of file CalibrationDataContainer.cxx.
|
private |
Retrieve interpolated result (utility function)
Definition at line 760 of file CalibrationDataContainer.cxx.
|
private |
Retrieve interpolated result (utility function)
Definition at line 777 of file CalibrationDataContainer.cxx.
|
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) |
Implements Analysis::CalibrationDataContainer.
Definition at line 539 of file CalibrationDataContainer.cxx.
|
virtual |
retrieve the calibration statistical uncertainty.
| x | user-supplied (kinematic or other) variables |
| result | requested statistical uncertainty |
Implements Analysis::CalibrationDataContainer.
Definition at line 582 of file CalibrationDataContainer.cxx.
|
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.
Definition at line 935 of file CalibrationDataContainer.cxx.
|
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) |
Implements Analysis::CalibrationDataContainer.
Definition at line 622 of file CalibrationDataContainer.cxx.
| bool CalibrationDataHistogramContainer::isBinCorrelated | ( | const std::string & | unc | ) | const |
Indicate whether the given uncertainty is correlated from bin to bin or not (note that this function is to be used only for systematic uncertainties)
Definition at line 719 of file CalibrationDataContainer.cxx.
|
virtual |
Indicate whether histogram interpolation is used or not.
Definition at line 751 of file CalibrationDataContainer.cxx.
| void CalibrationDataHistogramContainer::setInterpolated | ( | bool | doInterpolate | ) |
Indicate whether results are to be interpolated between bins or not (this feature is thought to be useful mostly for MC efficiencies)
Definition at line 740 of file CalibrationDataContainer.cxx.
| void CalibrationDataHistogramContainer::setUncorrelated | ( | const std::string & | unc | ) |
Indicate that the given uncertainty is to be treated uncorrelated from bin to bin (note that the default is for all systematic uncertainties to be treated as correlated)
Definition at line 728 of file CalibrationDataContainer.cxx.
|
protected |
Cache for bin boundary information.
Definition at line 291 of file CalibrationDataContainer.h.
|
private |
If true, interpolate between bins rather than doing a straight bin-wise evaluation.
Definition at line 299 of file CalibrationDataContainer.h.
|
private |
no need to persistify
list here the systematic uncertainties that are not correlated from bin to bin
Definition at line 296 of file CalibrationDataContainer.h.