LauBkgndDPModel.cc
Go to the documentation of this file.
56 void LauBkgndDPModel::setBkgndHisto(const TH2* histo, Bool_t useInterpolation, Bool_t fluctuateBins, Bool_t useUpperHalfOnly, Bool_t squareDP)
59 std::cerr << "WARNING in LauBkgndDPModel::setBkgndHisto : Supplied background histogram pointer is null, likelihood for this component will be flat in the Dalitz plot" << std::endl;
64 std::cout<<"INFO in LauBkgndDPModel::setBkgndHisto : Background histogram has upperHalf = "<<static_cast<Int_t>(upperHalf)<<std::endl;
70 bgHistDPPdf_ = new Lau2DHistDPPdf(histo, kinematics, vetoes, useInterpolation, fluctuateBins, upperHalf, squareDP);
76 void LauBkgndDPModel::setBkgndSpline(const TH2* histo, Bool_t fluctuateBins, Bool_t useUpperHalfOnly, Bool_t squareDP)
79 std::cerr << "WARNING in LauBkgndDPModel::setBkgndSpline : Supplied background histogram pointer is null, construction of spline will fail" << std::endl;
84 std::cout<<"INFO in LauBkgndDPModel::setBkgndSpline : Background histogram has upperHalf = "<<static_cast<Int_t>(upperHalf)<<std::endl;
90 bgHistDPPdf_ = new Lau2DSplineDPPdf(histo, kinematics, vetoes, fluctuateBins, upperHalf, squareDP);
102 std::cerr << "WARNING in LauBkgndDPModel::calcHistValue : We don't have a histogram so assuming the likelihood is flat in the Dalitz plot." << std::endl;
110 // If we're using a spline then negative values can be caused by adjacent bins that all contain a value of zero.
111 // The spline requires the value, its first derivatives and the mixed second derivative to be continuous and to match the input histogram
112 // at the bin centres. Derivatives are calculated using a finite difference approximation taking the difference between the neighbouring bins.
113 // If two bins are zero but the third is not then the second bin will have a positive first derivative causing the spline to dip below zero
114 // between the two zero bins to remain smooth. Such dips are unavoidable but are correctly removed here.
117 std::cerr << "WARNING in LauBkgndDPModel::calcHistValue : Value " << value << " is less than 0 - setting to 0. You may want to check your histogram!" << std::endl
118 << " : If you are using a spline then this could be caused by adjacent empty bins. Further warnings will be suppressed." << std::endl;
173 std::cerr << "WARNING in LauBkgndDPModel::generate : We don't have a histogram so generating flat in the square DP, which won't be flat in the conventional DP!" << std::endl;
174 std::cerr << "WARNING in LauBkgndDPModel::generate : This should never happen!! What have you done?!" << std::endl;
202 std::cerr << "WARNING in LauBkgndDPModel::generate : We don't have a histogram so generating flat in the DP." << std::endl;
231 std::cerr<<"ERROR in LauBkgndDPModel::fillDataTree : Expecting at least 2 variables "<<"in input data tree, but there are "<<nBranches<<"!\n";
232 std::cerr<<" : Make sure you have the right number of variables in your input data file!"<<std::endl;
289 std::cerr<<"ERROR in LauBkgndDPModel::setDataEventNo : Event index too large: "<<iEvt<<" >= "<<bgData_.size()<<"."<<std::endl;
The abstract interface for a background Dalitz plot model. Definition: LauAbsBkgndDPModel.hh:31 Bool_t passVeto(const LauKinematics *kinematics) const Check whether the specified Dalitz plot point passes the vetoes. Definition: LauVetoes.cc:104 TRandom * randomFun() Access the singleton random number generator with a particular seed. Definition: LauRandom.cc:20 File containing declaration of LauFitDataTree class. Bool_t lowBinWarningIssued_ Flag to track whether a warning has been issued for bin values less than zero. Definition: LauBkgndDPModel.hh:153 Lau2DAbsDPPdf * bgHistDPPdf_ PDF of Dalitz plot background, from a 2D histogram. Definition: LauBkgndDPModel.hh:135 ClassImp(LauAbsCoeffSet) File containing declaration of LauBkgndDPModel class. void setBkgndSpline(const TH2 *histo, Bool_t fluctuateBins, Bool_t useUpperHalfOnly, Bool_t squareDP) Set the background histogram and generate a spline. Definition: LauBkgndDPModel.cc:76 std::vector< Double_t > bgData_ Cached histogram values for each event. Definition: LauBkgndDPModel.hh:138 Class that defines the particular 3-body decay under study. Definition: LauDaughters.hh:33 File containing declaration of LauDaughters class. void updateSqDPKinematics(const Double_t mPrime, const Double_t thetaPrime) Update all kinematic quantities based on the square DP co-ordinates m' and theta'. Definition: LauKinematics.cc:103 const LauKinematics * getKinematics() const Get the Dalitz plot kinematics. Definition: LauAbsBkgndDPModel.hh:88 std::map< TString, Double_t > LauFitData Type for holding event data. Definition: LauFitDataTree.hh:31 UInt_t nBranches() const Obtain the number of branches in the tree. Definition: LauFitDataTree.cc:170 File containing declaration of Lau2DHistDPPdf class. File containing declaration of LauKinematics class. File containing declaration of Lau2DSplineDPPdf class. virtual Double_t interpolateXY(Double_t x, Double_t y) const =0 Perform the interpolation (unnormalised) Bool_t doneGenWarning_ Boolean to indicate if the warning that there is no histogram has already been issued. Definition: LauBkgndDPModel.hh:150 Double_t calcSqDPJacobian(const Double_t mPrime, const Double_t thPrime) const Calculate the Jacobian for the transformation m23^2, m13^2 -> m', theta' (square DP) at the given poin... Definition: LauKinematics.cc:134 void setBkgndHisto(const TH2 *histo, Bool_t useInterpolation, Bool_t fluctuateBins, Bool_t useUpperHalfOnly, Bool_t squareDP=kFALSE) Set background histogram. Definition: LauBkgndDPModel.cc:56 virtual Double_t getLikelihood(UInt_t iEvt) Get likelihood for a given event. Definition: LauBkgndDPModel.cc:275 void genFlatSqDP(Double_t &mPrime, Double_t &thetaPrime) const Routine to generate events flat in the square Dalitz plot. Definition: LauKinematics.cc:348 const LauVetoes * getVetoes() const Get vetoes in the Dalitz plot. Definition: LauAbsBkgndDPModel.hh:100 Double_t calcHistValue(Double_t xVal, Double_t yVal) Calulate histogram value at a given point. Definition: LauBkgndDPModel.cc:96 Bool_t squareDP_ Flags whether or not to work in square DP coordinates. Definition: LauBkgndDPModel.hh:132 Class for defining a histogram-based background Dalitz plot model. Definition: LauBkgndDPModel.hh:34 void updateKinematics(const Double_t m13Sq, const Double_t m23Sq) Update all kinematic quantities based on the DP co-ordinates m13Sq and m23Sq. Definition: LauKinematics.cc:86 const LauFitData & getData(UInt_t iEvt) const Retrieve the data for a given event. Definition: LauFitDataTree.cc:312 File containing LauRandom namespace. virtual Double_t getUnNormValue(UInt_t iEvt) Get unnormalised likelihood for a given event. Definition: LauBkgndDPModel.cc:268 virtual void fillDataTree(const LauFitDataTree &fitDataTree) Cache the input data and (if appropriate) the per-event likelihood values. Definition: LauBkgndDPModel.cc:224 void genFlatPhaseSpace(Double_t &m13Sq, Double_t &m23Sq) const Routine to generate events flat in phase-space. Definition: LauKinematics.cc:328 File containing declaration of LauVetoes class. virtual Double_t getPdfNorm() const Get PDF normalisation constant. Definition: LauBkgndDPModel.hh:91 Generated by 1.8.5 |