|
Laura++
v3r5
A maximum likelihood fitting package for performing Dalitz-plot analysis.
|
Class that implements the efficiency description across the signal Dalitz plot.
More...
#include <LauEffModel.hh>
|
| LauEffModel (const LauDaughters *daughters, const LauVetoes *vetoes) |
| Constructor. More...
|
|
virtual | ~LauEffModel () |
| Destructor. More...
|
|
void | setEffHisto (const TH2 *effHisto, Bool_t useInterpolation=kTRUE, Bool_t fluctuateBins=kFALSE, Double_t avEff=-1.0, Double_t absError=-1.0, Bool_t useUpperHalfOnly=kFALSE, Bool_t squareDP=kFALSE) |
| Set the efficiency variation across the phase space using a predetermined 2D histogram. More...
|
|
void | setEffHisto (const TH2 *effHisto, const TH2 *errorHi, const TH2 *errorLo, Bool_t useInterpolation=kTRUE, Bool_t fluctuateBins=kFALSE, Double_t avEff=-1.0, Double_t absError=-1.0, Bool_t useUpperHalfOnly=kFALSE, Bool_t squareDP=kFALSE) |
| Set the efficiency variation across the phase space using a predetermined 2D histogram. More...
|
|
void | setEffSpline (const TH2 *effHisto, Bool_t fluctuateBins=kFALSE, Double_t avEff=-1.0, Double_t absError=-1.0, Bool_t useUpperHalfOnly=kFALSE, Bool_t squareDP=kFALSE) |
| Set the efficiency variation across the phase space using a spline based on a predetermined 2D histogram. More...
|
|
void | setEffSpline (const TH2 *effHisto, const TH2 *errorHi, const TH2 *errorLo, Bool_t fluctuateBins=kFALSE, Double_t avEff=-1.0, Double_t absError=-1.0, Bool_t useUpperHalfOnly=kFALSE, Bool_t squareDP=kFALSE) |
| Set the efficiency variation across the phase space using a spline based on a predetermined 2D histogram. More...
|
|
void | addEffHisto (const TH2 *effHisto, Bool_t useInterpolation=kTRUE, Double_t avEff=-1.0, Double_t absError=-1.0, Bool_t useUpperHalfOnly=kFALSE, Bool_t squareDP=kFALSE) |
| Add a multiplicative efficiency variation across the phase space using a predetermined 2D histogram. More...
|
|
void | addEffHisto (const TH2 *effHisto, const TH2 *errorHi, const TH2 *errorLo, Bool_t useInterpolation=kTRUE, Double_t avEff=-1.0, Double_t absError=-1.0, Bool_t useUpperHalfOnly=kFALSE, Bool_t squareDP=kFALSE) |
| Add a multiplicative efficiency variation across the phase space using a predetermined 2D histogram. More...
|
|
void | addEffSpline (const TH2 *effHisto, Double_t avEff=-1.0, Double_t absError=-1.0, Bool_t useUpperHalfOnly=kFALSE, Bool_t squareDP=kFALSE) |
| Add a multiplicative efficiency variation across the phase space using a spline based on a predetermined 2D histogram. More...
|
|
void | addEffSpline (const TH2 *effHisto, const TH2 *errorHi, const TH2 *errorLo, Double_t avEff=-1.0, Double_t absError=-1.0, Bool_t useUpperHalfOnly=kFALSE, Bool_t squareDP=kFALSE) |
| Add a multiplicative efficiency variation across the phase space using a spline based on a predetermined 2D histogram. More...
|
|
Double_t | calcEfficiency (const LauKinematics *kinematics) const |
| Determine the efficiency for a given point in the Dalitz plot. More...
|
|
Bool_t | passVeto (const LauKinematics *kinematics) const |
| Determine whether the given DP position is outside the vetoes. More...
|
|
Bool_t | fluctuateEffHisto () const |
| Determine whether the efficiency histogram has had its bins fluctuated within their errors. More...
|
|
const LauDaughters * | getDaughters () const |
| Return the daughters object. More...
|
|
| LauAbsEffModel () |
| Constructor. More...
|
|
virtual | ~LauAbsEffModel () |
| Destructor. More...
|
|
Class that implements the efficiency description across the signal Dalitz plot.
Class that defines the efficiency model variation across the signal Dalitz plot. The method is based in a predetermined two-dimensional histogram to characterize the phase space acceptance. The efficiency variation is defined in terms of x = m_13^2, y = m_23^2 for the Dalitz plot (default) or x = m', y = theta' for the square Dalitz plot
Definition at line 51 of file LauEffModel.hh.
Constructor.
- Parameters
-
[in] | daughters | the daughters particles of the Dalitz plot model |
[in] | vetoes | the object describing the vetoes applied in the phase space |
Definition at line 43 of file LauEffModel.cc.
LauEffModel::~LauEffModel |
( |
| ) |
|
|
virtual |
Copy constructor - not implemented.
void LauEffModel::addEffHisto |
( |
const TH2 * |
effHisto, |
|
|
Bool_t |
useInterpolation = kTRUE , |
|
|
Double_t |
avEff = -1.0 , |
|
|
Double_t |
absError = -1.0 , |
|
|
Bool_t |
useUpperHalfOnly = kFALSE , |
|
|
Bool_t |
squareDP = kFALSE |
|
) |
| |
Add a multiplicative efficiency variation across the phase space using a predetermined 2D histogram.
The efficiency is defined in terms of x = m_13^2, y = m_23^2 or x = m', y = theta' for the square Dalitz plot
- Parameters
-
[in] | effHisto | the 2-dimensional histogram that describes the efficiency variation |
[in] | useInterpolation | boolean flag decision to switch on/off linear interpolation between bins should be used or simply the raw bin values. |
[in] | avEff | the desired average efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour. The seed for the random number generator used to raise or lower the bins should first be set using LauRandom::setSeed. |
[in] | absError | the error on that efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour |
[in] | useUpperHalfOnly | boolean flag to specify that the supplied histogram contains only the upper half of a symmetric DP (or lower half if using square DP coordinates) |
[in] | squareDP | boolean flag to determine whether the supplied histogram is given in square DP coordinates |
Definition at line 182 of file LauEffModel.cc.
void LauEffModel::addEffHisto |
( |
const TH2 * |
effHisto, |
|
|
const TH2 * |
errorHi, |
|
|
const TH2 * |
errorLo, |
|
|
Bool_t |
useInterpolation = kTRUE , |
|
|
Double_t |
avEff = -1.0 , |
|
|
Double_t |
absError = -1.0 , |
|
|
Bool_t |
useUpperHalfOnly = kFALSE , |
|
|
Bool_t |
squareDP = kFALSE |
|
) |
| |
Add a multiplicative efficiency variation across the phase space using a predetermined 2D histogram.
The efficiency is defined in terms of x = m_13^2, y = m_23^2 or x = m', y = theta' for the square Dalitz plot
- Parameters
-
[in] | effHisto | the 2-dimensional histogram that describes the efficiency variation |
[in] | errorHi | the 2-dimensional histogram that describes the upper uncertainty on the efficiency variation |
[in] | errorLo | the 2-dimensional histogram that describes the lower uncertainty on the efficiency variation |
[in] | useInterpolation | boolean flag decision to switch on/off linear interpolation between bins should be used or simply the raw bin values. |
[in] | avEff | the desired average efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour. The seed for the random number generator used to raise or lower the bins should first be set using LauRandom::setSeed. |
[in] | absError | the error on that efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour |
[in] | useUpperHalfOnly | boolean flag to specify that the supplied histogram contains only the upper half of a symmetric DP (or lower half if using square DP coordinates) |
[in] | squareDP | boolean flag to determine whether the supplied histogram is given in square DP coordinates |
Definition at line 198 of file LauEffModel.cc.
void LauEffModel::addEffSpline |
( |
const TH2 * |
effHisto, |
|
|
Double_t |
avEff = -1.0 , |
|
|
Double_t |
absError = -1.0 , |
|
|
Bool_t |
useUpperHalfOnly = kFALSE , |
|
|
Bool_t |
squareDP = kFALSE |
|
) |
| |
Add a multiplicative efficiency variation across the phase space using a spline based on a predetermined 2D histogram.
The efficiency is defined in terms of x = m_13^2, y = m_23^2 or x = m', y = theta' for the square Dalitz plot
- Parameters
-
[in] | effHisto | the 2-dimensional histogram that describes the efficiency variation |
[in] | avEff | the desired average efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour. The seed for the random number generator used to raise or lower the bins should first be set using LauRandom::setSeed. |
[in] | absError | the error on that efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour |
[in] | useUpperHalfOnly | boolean flag to specify that the supplied histogram contains only the upper half of a symmetric DP (or lower half if using square DP coordinates) |
[in] | squareDP | boolean flag to determine whether the supplied histogram is given in square DP coordinates |
Definition at line 214 of file LauEffModel.cc.
void LauEffModel::addEffSpline |
( |
const TH2 * |
effHisto, |
|
|
const TH2 * |
errorHi, |
|
|
const TH2 * |
errorLo, |
|
|
Double_t |
avEff = -1.0 , |
|
|
Double_t |
absError = -1.0 , |
|
|
Bool_t |
useUpperHalfOnly = kFALSE , |
|
|
Bool_t |
squareDP = kFALSE |
|
) |
| |
Add a multiplicative efficiency variation across the phase space using a spline based on a predetermined 2D histogram.
The efficiency is defined in terms of x = m_13^2, y = m_23^2 or x = m', y = theta' for the square Dalitz plot
- Parameters
-
[in] | effHisto | the 2-dimensional histogram that describes the efficiency variation |
[in] | errorHi | the 2-dimensional histogram that describes the upper uncertainty on the efficiency variation |
[in] | errorLo | the 2-dimensional histogram that describes the lower uncertainty on the efficiency variation |
[in] | avEff | the desired average efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour. The seed for the random number generator used to raise or lower the bins should first be set using LauRandom::setSeed. |
[in] | absError | the error on that efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour |
[in] | useUpperHalfOnly | boolean flag to specify that the supplied histogram contains only the upper half of a symmetric DP (or lower half if using square DP coordinates) |
[in] | squareDP | boolean flag to determine whether the supplied histogram is given in square DP coordinates |
Definition at line 229 of file LauEffModel.cc.
Double_t LauEffModel::calcEfficiency |
( |
const LauKinematics * |
kinematics | ) |
const |
|
virtual |
Determine the efficiency for a given point in the Dalitz plot.
The method uses the 2D histogram set by the setEffHisto() function and the vetoes information.
- Parameters
-
[in] | kinematics | the object that defines the DP position |
- Returns
- the efficiency value at the given point in the DP
Implements LauAbsEffModel.
Definition at line 268 of file LauEffModel.cc.
Bool_t LauEffModel::fluctuateEffHisto |
( |
| ) |
const |
|
inlinevirtual |
Determine whether the efficiency histogram has had its bins fluctuated within their errors.
Implements LauAbsEffModel.
Definition at line 227 of file LauEffModel.hh.
Double_t LauEffModel::getEffHistValue |
( |
const LauKinematics * |
kinematics | ) |
const |
|
private |
Get the efficiency from a two-dimensional histogram.
- Parameters
-
[in] | kinematics | the object that defines the DP position |
Definition at line 244 of file LauEffModel.cc.
Copy assignment operator - not implemented.
Bool_t LauEffModel::passVeto |
( |
const LauKinematics * |
kinematics | ) |
const |
|
virtual |
Determine whether the given DP position is outside the vetoes.
- Parameters
-
[in] | kinematics | the object that defines the DP position |
- Returns
- kTRUE if the DP position is outside all veto regions, kFALSE otherwise
Implements LauAbsEffModel.
Definition at line 315 of file LauEffModel.cc.
void LauEffModel::setEffHisto |
( |
const TH2 * |
effHisto, |
|
|
Bool_t |
useInterpolation = kTRUE , |
|
|
Bool_t |
fluctuateBins = kFALSE , |
|
|
Double_t |
avEff = -1.0 , |
|
|
Double_t |
absError = -1.0 , |
|
|
Bool_t |
useUpperHalfOnly = kFALSE , |
|
|
Bool_t |
squareDP = kFALSE |
|
) |
| |
Set the efficiency variation across the phase space using a predetermined 2D histogram.
The efficiency is defined in terms of x = m_13^2, y = m_23^2 or x = m', y = theta' for the square Dalitz plot
- Parameters
-
[in] | effHisto | the 2-dimensional histogram that describes the efficiency variation |
[in] | useInterpolation | boolean flag decision to switch on/off linear interpolation between bins should be used or simply the raw bin values. |
[in] | fluctuateBins | boolean flag to determine whether the bin contents should be fluctuated in accordance with their errors. The seed for the random number generator used to fluctuate the bins should first be set using LauRandom::setSeed. |
[in] | avEff | the desired average efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour. The seed for the random number generator used to raise or lower the bins should first be set using LauRandom::setSeed. |
[in] | absError | the error on that efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour |
[in] | useUpperHalfOnly | boolean flag to specify that the supplied histogram contains only the upper half of a symmetric DP (or lower half if using square DP coordinates) |
[in] | squareDP | boolean flag to determine whether the supplied histogram is given in square DP coordinates |
Definition at line 68 of file LauEffModel.cc.
void LauEffModel::setEffHisto |
( |
const TH2 * |
effHisto, |
|
|
const TH2 * |
errorHi, |
|
|
const TH2 * |
errorLo, |
|
|
Bool_t |
useInterpolation = kTRUE , |
|
|
Bool_t |
fluctuateBins = kFALSE , |
|
|
Double_t |
avEff = -1.0 , |
|
|
Double_t |
absError = -1.0 , |
|
|
Bool_t |
useUpperHalfOnly = kFALSE , |
|
|
Bool_t |
squareDP = kFALSE |
|
) |
| |
Set the efficiency variation across the phase space using a predetermined 2D histogram.
The efficiency is defined in terms of x = m_13^2, y = m_23^2 or x = m', y = theta' for the square Dalitz plot
- Parameters
-
[in] | effHisto | the 2-dimensional histogram that describes the efficiency variation |
[in] | errorHi | the 2-dimensional histogram that describes the upper uncertainty on the efficiency variation |
[in] | errorLo | the 2-dimensional histogram that describes the lower uncertainty on the efficiency variation |
[in] | useInterpolation | boolean flag decision to switch on/off linear interpolation between bins should be used or simply the raw bin values. |
[in] | fluctuateBins | boolean flag to determine whether the bin contents should be fluctuated in accordance with their errors. The seed for the random number generator used to fluctuate the bins should first be set using LauRandom::setSeed. |
[in] | avEff | the desired average efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour. The seed for the random number generator used to raise or lower the bins should first be set using LauRandom::setSeed. |
[in] | absError | the error on that efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour |
[in] | useUpperHalfOnly | boolean flag to specify that the supplied histogram contains only the upper half of a symmetric DP (or lower half if using square DP coordinates) |
[in] | squareDP | boolean flag to determine whether the supplied histogram is given in square DP coordinates |
Definition at line 97 of file LauEffModel.cc.
void LauEffModel::setEffSpline |
( |
const TH2 * |
effHisto, |
|
|
Bool_t |
fluctuateBins = kFALSE , |
|
|
Double_t |
avEff = -1.0 , |
|
|
Double_t |
absError = -1.0 , |
|
|
Bool_t |
useUpperHalfOnly = kFALSE , |
|
|
Bool_t |
squareDP = kFALSE |
|
) |
| |
Set the efficiency variation across the phase space using a spline based on a predetermined 2D histogram.
The efficiency is defined in terms of x = m_13^2, y = m_23^2 or x = m', y = theta' for the square Dalitz plot
- Parameters
-
[in] | effHisto | the 2-dimensional histogram that describes the efficiency variation |
[in] | fluctuateBins | boolean flag to determine whether the bin contents should be fluctuated in accordance with their errors. The seed for the random number generator used to fluctuate the bins should first be set using LauRandom::setSeed. |
[in] | avEff | the desired average efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour. The seed for the random number generator used to raise or lower the bins should first be set using LauRandom::setSeed. |
[in] | absError | the error on that efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour |
[in] | useUpperHalfOnly | boolean flag to specify that the supplied histogram contains only the upper half of a symmetric DP (or lower half if using square DP coordinates) |
[in] | squareDP | boolean flag to determine whether the supplied histogram is given in square DP coordinates |
Definition at line 126 of file LauEffModel.cc.
void LauEffModel::setEffSpline |
( |
const TH2 * |
effHisto, |
|
|
const TH2 * |
errorHi, |
|
|
const TH2 * |
errorLo, |
|
|
Bool_t |
fluctuateBins = kFALSE , |
|
|
Double_t |
avEff = -1.0 , |
|
|
Double_t |
absError = -1.0 , |
|
|
Bool_t |
useUpperHalfOnly = kFALSE , |
|
|
Bool_t |
squareDP = kFALSE |
|
) |
| |
Set the efficiency variation across the phase space using a spline based on a predetermined 2D histogram.
The efficiency is defined in terms of x = m_13^2, y = m_23^2 or x = m', y = theta' for the square Dalitz plot
- Parameters
-
[in] | effHisto | the 2-dimensional histogram that describes the efficiency variation |
[in] | errorHi | the 2-dimensional histogram that describes the upper uncertainty on the efficiency variation |
[in] | errorLo | the 2-dimensional histogram that describes the lower uncertainty on the efficiency variation |
[in] | fluctuateBins | boolean flag to determine whether the bin contents should be fluctuated in accordance with their errors. The seed for the random number generator used to fluctuate the bins should first be set using LauRandom::setSeed. |
[in] | avEff | the desired average efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour. The seed for the random number generator used to raise or lower the bins should first be set using LauRandom::setSeed. |
[in] | absError | the error on that efficiency - see Lau2DHistDP::raiseOrLowerBins, values less than zero switch off this behaviour |
[in] | useUpperHalfOnly | boolean flag to specify that the supplied histogram contains only the upper half of a symmetric DP (or lower half if using square DP coordinates) |
[in] | squareDP | boolean flag to determine whether the supplied histogram is given in square DP coordinates |
Definition at line 154 of file LauEffModel.cc.
Bool_t LauEffModel::fluctuateEffHisto_ |
|
private |
Bool_t LauEffModel::highBinWarningIssued_ |
|
mutableprivate |
Flag to track whether a warning has been issued for bin values greater than one.
Definition at line 264 of file LauEffModel.hh.
Bool_t LauEffModel::lowBinWarningIssued_ |
|
mutableprivate |
Flag to track whether a warning has been issued for bin values less than zero.
Definition at line 261 of file LauEffModel.hh.
The documentation for this class was generated from the following files:
|