LauSimpleFitModel.cc
Go to the documentation of this file.
79 for (LauBkgndEmbDataList::iterator iter = bkgndTree_.begin(); iter != bkgndTree_.end(); ++iter) {
101 std::cerr << "ERROR in LauSimpleFitModel::setNSigEvents : The signal yield LauParameter pointer is null." << std::endl;
105 std::cerr << "ERROR in LauSimpleFitModel::setNSigEvents : You are trying to overwrite the signal yield." << std::endl;
111 if ( ! name.Contains("signalEvents") && !( name.BeginsWith("signal") && name.EndsWith("Events") ) ) {
121 std::cerr << "ERROR in LauSimpleFitModel::setNBkgndEvents : The background yield LauParameter pointer is null." << std::endl;
126 std::cerr << "ERROR in LauSimpleFitModel::setNBkgndEvents : Invalid background class \"" << nBkgndEvents->name() << "\"." << std::endl;
127 std::cerr << " : Background class names must be provided in \"setBkgndClassNames\" before any other background-related actions can be performed." << std::endl;
134 std::cerr << "ERROR in LauSimpleFitModel::setNBkgndEvents : You are trying to overwrite the background yield." << std::endl;
144 void LauSimpleFitModel::splitSignalComponent( const TH2* dpHisto, const Bool_t upperHalf, const Bool_t fluctuateBins, LauScfMap* scfMap )
147 std::cerr << "ERROR in LauSimpleFitModel::splitSignalComponent : Have already setup SCF." << std::endl;
152 std::cerr << "ERROR in LauSimpleFitModel::splitSignalComponent : The histogram pointer is null." << std::endl;
158 scfFracHist_->setEffHisto( dpHisto, kTRUE, fluctuateBins, 0.0, 0.0, upperHalf, daughters->squareDP() );
169 std::cerr << "ERROR in LauSimpleFitModel::splitSignalComponent : Have already setup SCF." << std::endl;
181 void LauSimpleFitModel::setBkgndDPModel(const TString& bkgndClass, LauAbsBkgndDPModel* bkgndDPModel)
184 std::cerr << "ERROR in LauSimpleFitModel::setBkgndDPModel : The model pointer is null." << std::endl;
190 std::cerr << "ERROR in LauSimpleFitModel::setBkgndDPModel : Invalid background class \"" << bkgndClass << "\"." << std::endl;
191 std::cerr << " : Background class names must be provided in \"setBkgndClassNames\" before any other background-related actions can be performed." << std::endl;
204 std::cerr << "ERROR in LauSimpleFitModel::setSignalPdf : The PDF pointer is null." << std::endl;
228 std::cerr << "ERROR in LauSimpleFitModel::setBkgndPdf : Invalid background class \"" << bkgndClass << "\"." << std::endl;
229 std::cerr << " : Background class names must be provided in \"setBkgndClassNames\" before any other background-related actions can be performed." << std::endl;
245 std::cerr << "ERROR in LauSimpleFitModel::setAmpCoeffSet : Signal DP model doesn't contain component \"" << compName << "\"." << std::endl;
250 for (std::vector<LauAbsCoeffSet*>::const_iterator iter = coeffPars_.begin(); iter != coeffPars_.end(); ++iter) {
252 std::cerr << "ERROR in LauSimpleFitModel::setAmpCoeffSet : Have already set coefficients for \"" << compName << "\"." << std::endl;
262 std::cout << "INFO in LauSimpleFitModel::setAmpCoeffSet : Added coefficients for component \"" << compName << "\" to the fit model." << std::endl;
279 std::cerr << "ERROR in LauSimpleFitModel::initialise : Signal model doesn't exist for any variable." << std::endl;
286 std::cerr << "ERROR in LauSimpleFitModel::initialise : The pointer to the signal DP model is null.\n";
291 for (LauBkgndDPModelList::const_iterator dpmodel_iter = bkgndDPModels_.begin(); dpmodel_iter != bkgndDPModels_.end(); ++dpmodel_iter ) {
293 std::cerr << "ERROR in LauSimpleFitModel::initialise : The pointer to one of the background DP models is null.\n";
307 for ( LauPdfList::const_iterator pdf_iter = signalPdfs_.begin(); pdf_iter != signalPdfs_.end(); ++pdf_iter ) {
309 for ( std::vector<TString>::const_iterator var_iter = varNames.begin(); var_iter != varNames.end(); ++var_iter ) {
317 for ( LauPdfList::const_iterator pdf_iter = scfPdfs_.begin(); pdf_iter != scfPdfs_.end(); ++pdf_iter ) {
319 for ( std::vector<TString>::const_iterator var_iter = varNames.begin(); var_iter != varNames.end(); ++var_iter ) {
326 std::cerr << "ERROR in LauSimpleFitModel::initialise : There are " << nsigpdfvars << " TM signal PDF variables but " << nscfpdfvars << " SCF signal PDF variables." << std::endl;
331 for (LauBkgndPdfsList::const_iterator bgclass_iter = bkgndPdfs_.begin(); bgclass_iter != bkgndPdfs_.end(); ++bgclass_iter) {
334 for ( LauPdfList::const_iterator pdf_iter = pdfList.begin(); pdf_iter != pdfList.end(); ++pdf_iter ) {
336 for ( std::vector<TString>::const_iterator var_iter = varNames.begin(); var_iter != varNames.end(); ++var_iter ) {
343 std::cerr << "ERROR in LauSimpleFitModel::initialise : There are " << nsigpdfvars << " signal PDF variables but " << nbkgndpdfvars << " bkgnd PDF variables." << std::endl;
364 std::cerr << "ERROR in LauSimpleFitModel::initialise : Number of fit parameters not of expected size." << std::endl;
376 std::cerr << "ERROR in LauSimpleFitModel::initialiseDPModels : Number of signal DP components with magnitude and phase set not right." << std::endl;
380 std::cout << "INFO in LauSimpleFitModel::initialiseDPModels : Initialising DP models" << std::endl;
385 for (LauBkgndDPModelList::iterator iter = bkgndDPModels_.begin(); iter != bkgndDPModels_.end(); ++iter) {
393 //std::cout << "INFO in LauSimpleFitModel::recalculateNormalizationInDPModels : Recalc Norm in DP model" << std::endl;
407 std::cout << "INFO in LauSimpleFitModel::setSignalDPParameters : Setting the initial fit parameters for the signal DP model." << std::endl;
421 // Obtain the resonance parameters and place them in the vector of fit variables and in a separate vector
438 // NB all of them are passed to the fit, even though some have been fixed through parameter.fixed(kTRUE)
460 std::cerr << "ERROR in LauSimpleFitModel::setFitNEvents : Signal yield not defined." << std::endl;
467 for (LauBkgndYieldList::const_iterator iter = bkgndEvents_.begin(); iter != bkgndEvents_.end(); ++iter) {
470 std::cerr << "ERROR in LauSimpleFitModel::setFitNEvents : Background yield not defined." << std::endl;
480 std::cout << "INFO in LauSimpleFitModel::setFitNEvents : Initialising number of events for signal and background components..." << std::endl;
485 std::cout << "INFO in LauSimpleFitModel::setFitNEvents : Initialising number of events for background components (and hence signal)..." << std::endl;
494 for (LauBkgndYieldList::iterator iter = bkgndEvents_.begin(); iter != bkgndEvents_.end(); ++iter) {
517 std::cerr << "ERROR in LauSimpleFitModel::setExtraNtupleVars : Initial Fit Fraction array of unexpected dimension: " << fitFrac_.size() << std::endl;
522 std::cerr << "ERROR in LauSimpleFitModel::setExtraNtupleVars : Initial Fit Fraction array of unexpected dimension: " << fitFrac_[i].size() << std::endl;
527 // Add the fit fraction that has not been corrected for the efficiency for each signal component
530 std::cerr << "ERROR in LauSimpleFitModel::setExtraNtupleVars : Initial Fit Fraction array of unexpected dimension: " << fitFracEffUnCorr_.size() << std::endl;
535 std::cerr << "ERROR in LauSimpleFitModel::setExtraNtupleVars : Initial Fit Fraction array of unexpected dimension: " << fitFracEffUnCorr_[i].size() << std::endl;
592 for (LauBkgndYieldList::iterator iter = bkgndEvents_.begin(); iter != bkgndEvents_.end(); ++iter) {
618 std::cerr << "ERROR in LauSimpleFitModel::finaliseFitResults : Fit Fraction array of unexpected dimension: " << fitFrac.size() << std::endl;
623 std::cerr << "ERROR in LauSimpleFitModel::finaliseFitResults : Fit Fraction array of unexpected dimension: " << fitFrac[i].size() << std::endl;
630 std::cerr << "ERROR in LauSimpleFitModel::finaliseFitResults : Fit Fraction array of unexpected dimension: " << fitFracEffUnCorr.size() << std::endl;
635 std::cerr << "ERROR in LauSimpleFitModel::finaliseFitResults : Fit Fraction array of unexpected dimension: " << fitFracEffUnCorr[i].size() << std::endl;
685 ntuple->storeCorrMatrix(this->iExpt(), this->nll(), this->fitStatus(), this->covarianceMatrix());
703 output << "FitFraction for component " << i << " (" << coeffPars_[i]->name() << ") = " << fitFrac_[i][i] << std::endl;
716 std::cout << "INFO in LauSimpleFitModel::writeOutTable : Writing out results of the fit to the tex file " << outputFile << std::endl;
779 for (LauBkgndPdfsList::const_iterator iter = bkgndPdfs_.begin(); iter != bkgndPdfs_.end(); ++iter) {
794 std::cout << "INFO in LauSimpleFitModel::checkInitFitParams : Setting random parameters for the signal DP model" << std::endl;
802 std::cout << "INFO in LauSimpleFitModel::randomiseInitFitPars : Randomising the initial fit magnitudes and phases of the resonances..." << std::endl;
867 const Bool_t storeSCFTruthInfo = ( useSCF_ || ( this->enableEmbedding() && signalTree_ != 0 && signalTree_->haveBranch("mcMatch") ) );
924 std::cout << "INFO in LauSimpleFitModel::genExpt : Generated event number " << iEvt << " out of " << nEvtsGen << " " << type << " events." << std::endl;
941 std::cerr << "ERROR in LauSimpleFitModel::genExpt : Fit Fraction array of unexpected dimension: " << fitFrac.size() << std::endl;
946 std::cerr << "ERROR in LauSimpleFitModel::genExpt : Fit Fraction array of unexpected dimension: " << fitFrac[i].size() << std::endl;
1101 if (this->enableEmbedding() && signalTree_ && (signalTree_->nEvents() == signalTree_->nUsedEvents())) {
1102 std::cerr << "WARNING in LauSimpleFitModel::generateSignalEvent : Source of embedded signal events used up, clearing the list of used events." << std::endl;
1124 std::cerr << "ERROR in LauSimpleFitModel::generateBkgndEvent : Can't find the DP model for background class \"" << this->bkgndClassName(bkgndID) << "\"." << std::endl;
1139 std::cerr << "WARNING in LauSimpleFitModel::generateBkgndEvent : Source of embedded " << this->bkgndClassName(bkgndID) << " events used up, clearing the list of used events." << std::endl;
1151 if ( useSCF_ || ( this->enableEmbedding() && signalTree_ != 0 && signalTree_->haveBranch("mcMatch") ) ) {
1176 for (LauPdfList::const_iterator pdf_iter = signalPdfs_.begin(); pdf_iter != signalPdfs_.end(); ++pdf_iter) {
1178 for ( std::vector<TString>::const_iterator var_iter = varNames.begin(); var_iter != varNames.end(); ++var_iter ) {
1204 void LauSimpleFitModel::generateExtraPdfValues(LauPdfList* extraPdfs, LauEmbeddedData* embeddedData)
1208 for (LauPdfList::iterator pdf_iter = extraPdfs->begin(); pdf_iter != extraPdfs->end(); ++pdf_iter) {
1215 for ( LauFitData::const_iterator var_iter = genValues.begin(); var_iter != genValues.end(); ++var_iter ) {
1247 for (LauBkgndYieldList::iterator iter = bkgndEvents_.begin(); iter != bkgndEvents_.end(); ++iter) {
1258 for (LauBkgndYieldList::const_iterator iter = bkgndEvents_.begin(); iter != bkgndEvents_.end(); ++iter) {
1281 for (LauBkgndDPModelList::iterator iter = bkgndDPModels_.begin(); iter != bkgndDPModels_.end(); ++iter) {
1297 std::cerr << "ERROR in LauSimpleFitModel::cacheInputFitVars : Input data does not contain DP branches and so can't cache the SCF fraction." << std::endl;
1327 // given true bin in the LauScfMap object. (What this means is that when Laura is provided with
1396 likelihood += (bkgndEvents_[bkgndID]->value() * bkgndDPLike_[bkgndID] * bkgndExtraLike_[bkgndID]);
1406 for (LauBkgndYieldList::const_iterator iter = bkgndEvents_.begin(); iter != bkgndEvents_.end(); ++iter) {
1483 for (std::vector<Int_t>::const_iterator iter = trueBins->begin(); iter != trueBins->end(); ++iter)
1622 void LauSimpleFitModel::addSPlotNtupleBranches(const LauPdfList* extraPdfs, const TString& prefix)
1626 for (LauPdfList::const_iterator pdf_iter = extraPdfs->begin(); pdf_iter != extraPdfs->end(); ++pdf_iter) {
1633 for ( std::vector<TString>::const_iterator var_iter = varNames.begin(); var_iter != varNames.end(); ++var_iter ) {
1652 for ( std::vector<TString>::const_iterator var_iter = varNames.begin(); var_iter != varNames.end(); ++var_iter ) {
1664 std::cerr << "WARNING in LauSimpleFitModel::addSPlotNtupleBranches : Can't yet deal with 3D PDFs." << std::endl;
1670 Double_t LauSimpleFitModel::setSPlotNtupleBranchValues(LauPdfList* extraPdfs, const TString& prefix, UInt_t iEvt)
1676 for (LauPdfList::iterator pdf_iter = extraPdfs->begin(); pdf_iter != extraPdfs->end(); ++pdf_iter) {
1688 for ( std::vector<TString>::const_iterator var_iter = varNames.begin(); var_iter != varNames.end(); ++var_iter ) {
1707 for ( std::vector<TString>::const_iterator var_iter = varNames.begin(); var_iter != varNames.end(); ++var_iter ) {
1720 std::cerr << "WARNING in LauSimpleFitModel::setSPlotNtupleBranchValues : Can't yet deal with 3D PDFs." << std::endl;
1734 for (LauPdfList::const_iterator pdf_iter = signalPdfs_.begin(); pdf_iter != signalPdfs_.end(); ++pdf_iter) {
1737 for ( std::vector<TString>::const_iterator var_iter = varNames.begin(); var_iter != varNames.end(); ++var_iter ) {
1789 for (LauPdfList::const_iterator pdf_iter = signalPdfs_.begin(); pdf_iter != signalPdfs_.end(); ++pdf_iter) {
1793 for ( std::vector<TString>::const_iterator var_iter = varNames.begin(); var_iter != varNames.end(); ++var_iter ) {
1808 for (LauPdfList::const_iterator pdf_iter = scfPdfs_.begin(); pdf_iter != scfPdfs_.end(); ++pdf_iter) {
1812 for ( std::vector<TString>::const_iterator var_iter = varNames.begin(); var_iter != varNames.end(); ++var_iter ) {
1828 for (LauPdfList::const_iterator pdf_iter = pdfList.begin(); pdf_iter != pdfList.end(); ++pdf_iter) {
1832 for ( std::vector<TString>::const_iterator var_iter = varNames.begin(); var_iter != varNames.end(); ++var_iter ) {
1849 std::cout << "INFO in LauSimpleFitModel::storePerEvtLlhds : Storing per-event likelihood values..." << std::endl;
1956 std::cout << "INFO in LauSimpleFitModel::storePerEvtLlhds : Finished storing per-event likelihood values." << std::endl;
1964 std::cerr << "ERROR in LauSimpleFitModel::embedSignal : Already embedding signal from a file." << std::endl;
1969 std::cerr << "WARNING in LauSimpleFitModel::embedSignal : Conflicting options provided, will not reuse events at all." << std::endl;
1978 std::cerr << "ERROR in LauSimpleFitModel::embedSignal : Problem creating data tree for embedding." << std::endl;
1990 void LauSimpleFitModel::embedBkgnd(const TString& bkgndClass, const TString& fileName, const TString& treeName,
1994 std::cerr << "ERROR in LauSimpleFitModel::embedBkgnd : Invalid background class \"" << bkgndClass << "\"." << std::endl;
1995 std::cerr << " : Background class names must be provided in \"setBkgndClassNames\" before any other background-related actions can be performed." << std::endl;
2002 std::cerr << "ERROR in LauSimpleFitModel::embedBkgnd : Already embedding background from a file." << std::endl;
2007 std::cerr << "WARNING in LauSimpleFitModel::embedBkgnd : Conflicting options provided, will not reuse events at all." << std::endl;
2016 std::cerr << "ERROR in LauSimpleFitModel::embedBkgnd : Problem creating data tree for embedding." << std::endl;
2027 void LauSimpleFitModel::weightEvents( const TString& dataFileName, const TString& dataTreeName )
2033 std::cout << "INFO in LauSimpleFitModel::weightEvents : will create weights assuming events were generated flat in the square DP" << std::endl;
2035 std::cout << "INFO in LauSimpleFitModel::weightEvents : will create weights assuming events were generated flat in phase space" << std::endl;
2042 std::cerr << "ERROR in LauSimpleFitModel::weightEvents : Problem caching the data." << std::endl;
2049 std::cerr << "WARNING in LauSimpleFitModel::weightEvents : Cannot find MC truth DP coordinate branches in supplied data, aborting." << std::endl;
2071 std::cerr << "WARNING in LauSimpleFitModel::weightEvents : Zero events in experiment " << iExpmt << ", skipping..." << std::endl;
2099 std::cerr << "WARNING in LauSimpleFitModel::weightEvents : Problem in calculating the weight, aborting." << std::endl;
void setSignalPdf(LauAbsPdf *pdf) Set the signal PDF for a given variable. Definition: LauSimpleFitModel.cc:201 void setBkgndDPModel(const TString &bkgndClass, LauAbsBkgndDPModel *bkgndModel) Set the background DP models. Definition: LauSimpleFitModel.cc:181 void modifyDataTree() Recache the amplitude values for those that have changed. Definition: LauIsobarDynamics.cc:2237 virtual void addSPlotNtupleIntegerBranch(const TString &name) Add a branch to the sPlot tree for storing an integer. Definition: LauAbsFitModel.cc:438 The abstract interface for a background Dalitz plot model. Definition: LauAbsBkgndDPModel.hh:31 Bool_t squareDP() const Are the square Dalitz plot co-ordinates being calculated? Definition: LauKinematics.hh:51 UInt_t firstExpt() const Obtain the number of the first experiment. Definition: LauAbsFitModel.hh:215 Double_t getc23() const Get the cosine of the helicity angle theta23. Definition: LauKinematics.hh:193 TRandom * randomFun() Access the singleton random number generator with a particular seed. Definition: LauRandom.cc:20 Bool_t fixed() const Check whether the parameter is fixed or floated. Definition: LauParameter.hh:195 UInt_t eventsPerExpt() const Obtain the total number of events in the current experiment. Definition: LauAbsFitModel.hh:209 Bool_t writeLatexTable() const Determine whether writing out of the latex table is enabled. Definition: LauAbsFitModel.hh:169 void randomiseInitFitPars() Randomise the initial fit parameters. Definition: LauSimpleFitModel.cc:799 LauEffModel * scfFracHist_ The histogram giving the DP-dependence of the SCF fraction. Definition: LauSimpleFitModel.hh:427 void updateCoeffs(const std::vector< LauComplex > &coeffs) Update the complex coefficients for the resonances. Definition: LauIsobarDynamics.cc:2395 void updateSqDPKinematics(Double_t mPrime, Double_t thetaPrime) Update all kinematic quantities based on the square DP co-ordinates m' and theta'. Definition: LauKinematics.cc:99 virtual Double_t getTotEvtLikelihood(UInt_t iEvt) Get the total likelihood for each event. Definition: LauSimpleFitModel.cc:1365 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. Definition: LauEffModel.cc:55 void cacheInfo(LauPdfList &pdfList, const LauFitDataTree &theData) Have all PDFs in the list cache the data. Definition: LauAbsFitModel.cc:1245 virtual void setGenNtupleIntegerBranchValue(const TString &name, Int_t value) Set the value of an integer branch in the gen tree. Definition: LauAbsFitModel.cc:413 ClassImp(LauAbsCoeffSet) Bool_t getReweightedEvent(LauIsobarDynamics *dynamics) Retrieve an event from the data sample, applying an accept/reject based on the given DP model... Definition: LauEmbeddedData.cc:59 std::vector< Double_t > recoJacobians_ The cached values of the sqDP jacobians for each event. Definition: LauSimpleFitModel.hh:439 Bool_t hasResonance(const TString &resName) const Check whether this model includes a named resonance. Definition: LauIsobarDynamics.cc:2416 void generateExtraPdfValues(LauPdfList *extraPdfs, LauEmbeddedData *embeddedData) Generate from the extra PDFs. Definition: LauSimpleFitModel.cc:1204 Class that defines the particular 3-body decay under study. Definition: LauDaughters.hh:33 UInt_t addFitParameters(LauPdfList &pdfList) Add parameters of the PDFs in the list to the list of all fit parameters. Definition: LauAbsFitModel.cc:1141 void splitSignalComponent(const TH2 *dpHisto, const Bool_t upperHalf=kFALSE, const Bool_t fluctuateBins=kFALSE, LauScfMap *scfMap=0) Split the signal component into well-reconstructed and mis-reconstructed parts. Definition: LauSimpleFitModel.cc:144 std::map< TString, std::pair< Int_t, Double_t > > LauGenInfo Define a map to be used to store a category name and numbers. Definition: LauSimpleFitModel.hh:166 virtual void setNBkgndEvents(LauParameter *nBkgndEvents) Set the background event yield(s) Definition: LauSimpleFitModel.cc:118 Double_t getc13() const Get the cosine of the helicity angle theta13. Definition: LauKinematics.hh:199 File containing declaration of LauAbsCoeffSet class. virtual void weightEvents(const TString &dataFileName, const TString &dataTreeName) Weight events based on the DP model. Definition: LauSimpleFitModel.cc:2027 void calcExtraInfo(const Bool_t init=kFALSE) Calculate the fit fractions, mean efficiency and total DP rate. Definition: LauIsobarDynamics.cc:1803 TH2 * trueHist(Int_t trueBin) Retrieve the migration histogram for trueBin. Definition: LauScfMap.cc:176 virtual void setAmpCoeffSet(LauAbsCoeffSet *coeffSet) Set the DP amplitude coefficients. Definition: LauSimpleFitModel.cc:239 std::multimap< TString, std::pair< TString, TString > > TwoDMap Type to associate the name of the species that have 2D PDFs with the names of the two variables invol... Definition: LauSPlot.hh:68 Int_t buildIndex(const TString &majorName, const TString &minorName="0") Create an index table using leaves of the tree. Definition: LauGenNtuple.cc:164 void listBinCentres(std::vector< Double_t > &xCoords, std::vector< Double_t > &yCoords) const Create lists of the co-ordinates of the centres of true bins. Definition: LauScfMap.cc:114 File containing declaration of LauDaughters class. const std::vector< Int_t > * trueBins(Int_t recoBin) const Find which true bins contribute to the given reco bin. Definition: LauScfMap.cc:155 virtual void setGenNtupleDoubleBranchValue(const TString &name, Double_t value) Set the value of a double branch in the gen tree. Definition: LauAbsFitModel.cc:418 virtual void finaliseFitResults(const TString &tablePrefixName) Get the fit results and store them. Definition: LauSimpleFitModel.cc:566 virtual void propagateParUpdates() Calculate things that depend on the fit parameters after they have been updated by Minuit... Definition: LauSimpleFitModel.cc:1226 void addFriendTree(const TString &rootFileName, const TString &rootTreeName) Add a friend tree. Definition: LauGenNtuple.cc:195 File containing declaration of LauScfMap class. Double_t getEvtthPrime() const Retrieve the square Dalitz plot coordinate, theta', for the current event. Definition: LauIsobarDynamics.hh:268 LauBkgndReuseEventsList reuseBkgnd_ Vector of booleans to reuse background events. Definition: LauSimpleFitModel.hh:465 std::vector< std::vector< LauParameter > > LauParArray Type to define an array of parameters. Definition: LauParameter.hh:576 File containing declaration of LauSimpleFitModel class. LauAbsEffModel * getEffModel() Retrieve the model for the efficiency across the Dalitz plot. Definition: LauIsobarDynamics.hh:432 virtual void printParValues() const =0 Print the current values of the parameters. File containing declaration of LauPrint class. Pure abstract base class for defining the efficiency description across the signal Dalitz plot... Definition: LauAbsEffModel.hh:32 void setBkgndPdf(const TString &bkgndClass, LauAbsPdf *pdf) Set the background PDF. Definition: LauSimpleFitModel.cc:219 std::map< TString, Double_t > LauFitData Type for holding event data. Definition: LauFitDataTree.hh:31 virtual void getEvtDPLikelihood(UInt_t iEvt) Calculate the signal and background likelihoods for the DP for a given event. Definition: LauSimpleFitModel.cc:1412 void setSCFPdf(LauAbsPdf *pdf) Set the SCF PDF for a given variable. Definition: LauSimpleFitModel.cc:210 virtual void setNSigEvents(LauParameter *nSigEvents) Set the signal event yield. Definition: LauSimpleFitModel.cc:98 virtual void printFitFractions(std::ostream &output) Print the fit fractions, total DP rate and mean efficiency. Definition: LauSimpleFitModel.cc:699 const LauParArray & getFitFractions() const Retrieve the fit fractions for the amplitude components. Definition: LauIsobarDynamics.hh:372 Bool_t squareDP() const Determine to use or not the square Dalitz plot. Definition: LauDaughters.hh:78 void addSPlotNtupleBranches(const LauPdfList *extraPdfs, const TString &prefix) Add sPlot branches for the extra PDFs. Definition: LauSimpleFitModel.cc:1622 virtual LauSPlot::TwoDMap twodimPDFs() const Returns the species and variables for all 2D PDFs in the fit. Definition: LauSimpleFitModel.cc:1785 Double_t getEvtScfFraction() const Retrieve the fraction of events that are poorly reconstructed (the self cross feed fraction) for the ... Definition: LauIsobarDynamics.hh:280 Double_t getValue(const TString &name) const Get the value of a specified branch. Definition: LauEmbeddedData.cc:175 void calcLikelihoodInfo(const UInt_t iEvt) Calculate the likelihood (and all associated information) for the given event number. Definition: LauIsobarDynamics.cc:2172 LauParameter getMeanEff() const Retrieve the mean efficiency across the Dalitz plot. Definition: LauIsobarDynamics.hh:360 std::vector< Double_t > bkgndExtraLike_ Background likelihood value(s) from extra PDFs. Definition: LauSimpleFitModel.hh:483 std::set< LauParameter * > LauParameterPSet Set of parameter pointers. Definition: LauAbsFitModel.hh:330 File containing declaration of LauKinematics class. virtual void setSPlotNtupleDoubleBranchValue(const TString &name, Double_t value) Set the value of a double branch in the sPlot tree. Definition: LauAbsFitModel.cc:453 File containing declaration of LauEmbeddedData class. void printFitParameters(const LauPdfList &pdfList, std::ostream &fout) const Print the fit parameters for all PDFs in the list. Definition: LauAbsFitModel.cc:1221 Bool_t haveBranch(const TString &name) const Boolean to determine whether branch exists. Definition: LauEmbeddedData.hh:75 void setExtraPdfParameters() Set the fit parameters for the extra PDFs. Definition: LauSimpleFitModel.cc:435 Definition: LauIsobarDynamics.hh:47 Bool_t generateBkgndEvent(UInt_t bkgndID) Generate background event. Definition: LauSimpleFitModel.cc:1108 Double_t getEvtmPrime() const Retrieve the square Dalitz plot coordinate, m', for the current event. Definition: LauIsobarDynamics.hh:262 void readExperimentData(UInt_t iExpt) Read events only for the given experiment. Definition: LauFitDataTree.cc:144 void updateSigEvents() Update the signal events after Minuit sets background parameters. Definition: LauSimpleFitModel.cc:1240 File containing declaration of LauIsobarDynamics class. virtual UInt_t index() const Retrieve the index number of the coefficient set. Definition: LauAbsCoeffSet.hh:146 virtual LauSPlot::NumbMap fixdSpeciesNames() const Returns the names and yields of species that are fixed in the fit. Definition: LauSimpleFitModel.cc:1766 void updateKinematics(Double_t m13Sq, Double_t m23Sq) Update all kinematic quantities based on the DP co-ordinates m13Sq and m23Sq. Definition: LauKinematics.cc:82 void fillDataTree(const LauFitDataTree &fitDataTree) Fill the internal data structure that caches the resonance dynamics. Definition: LauIsobarDynamics.cc:2274 const LauParameterList & extraPars() const Access the extra variables. Definition: LauAbsFitModel.hh:670 std::vector< Double_t > bkgndDPLike_ Background likelihood value(s) Definition: LauSimpleFitModel.hh:474 std::vector< LauParameter * > LauParameterPList List of parameter pointers. Definition: LauAbsFitModel.hh:326 UInt_t nNormPar_ Number of normalisation parameters (i.e. yields) Definition: LauSimpleFitModel.hh:394 Double_t getEvtm23Sq() const Retrieve the invariant mass squared of the second and third daughters in the current event... Definition: LauIsobarDynamics.hh:256 Double_t calcEfficiency(const LauKinematics *kinematics) const Determine the efficiency for a given point in the Dalitz plot. Definition: LauEffModel.cc:261 void setupGenNtupleBranches() Setup the required ntuple branches. Definition: LauSimpleFitModel.cc:1145 void addIntegerBranch(const TString &name) Add integer branch to tree. Definition: LauGenNtuple.cc:73 void appendBinCentres(LauFitDataTree *inputData) Append fake data points to the inputData for each bin in the SCF smearing matrix. ... Definition: LauSimpleFitModel.cc:1322 virtual void cacheInputFitVars() Read in the input fit data variables, e.g. m13Sq and m23Sq. Definition: LauSimpleFitModel.cc:1265 std::vector< LauParameter * > & getFloatingParameters() Retrieve the floating parameters of the resonance models. Definition: LauIsobarDynamics.hh:462 void setSignalDPParameters() Set the fit parameters for the DP model. Definition: LauSimpleFitModel.cc:398 virtual void addGenNtupleIntegerBranch(const TString &name) Add a branch to the gen tree for storing an integer. Definition: LauAbsFitModel.cc:403 std::vector< LauAbsCoeffSet * > coeffPars_ Magnitudes and Phases. Definition: LauSimpleFitModel.hh:397 Int_t binNumber(Double_t xCoord, Double_t yCoord) const Find the global bin number for the given co-ordinates. Definition: LauScfMap.cc:144 virtual LauSPlot::NumbMap freeSpeciesNames() const Returns the names and yields of species that are free in the fit. Definition: LauSimpleFitModel.cc:1747 virtual LauSPlot::NameSet variableNames() const Returns the names of all variables in the fit. Definition: LauSimpleFitModel.cc:1727 Bool_t doPoissonSmearing() const Determine whether Poisson smearing is enabled for the toy MC generation. Definition: LauAbsFitModel.hh:142 virtual void getEvtExtraLikelihoods(UInt_t iEvt) Determine the signal and background likelihood for the extra variables for a given event... Definition: LauSimpleFitModel.cc:1512 Double_t getc12() const Get the cosine of the helicity angle theta12. Definition: LauKinematics.hh:187 std::map< TString, Double_t > NumbMap Type to associate a category name with a double precision number, e.g. a yield or PDF value for a giv... Definition: LauSPlot.hh:62 Bool_t doEMLFit() const Determine whether an extended maximum likelihood fit it being performed. Definition: LauAbsFitModel.hh:108 LauParameter getDPRate() const Retrieve the overall Dalitz plot rate. Definition: LauIsobarDynamics.hh:366 File containing declaration of LauComplex class. LauFitData getValues(const std::vector< TString > &names) const Get values of specified branches. Definition: LauEmbeddedData.cc:186 virtual void setupBkgndVectors() Define the length of the background vectors. Definition: LauSimpleFitModel.cc:85 LauGenInfo eventsToGenerate() Determine the number of events to generate for each hypothesis. Definition: LauSimpleFitModel.cc:809 const LauParArray & getFitFractionsEfficiencyUncorrected() const Retrieve the fit fractions for the amplitude components. Definition: LauIsobarDynamics.hh:378 Class to store the results from the toy MC generation into an ntuple. Definition: LauGenNtuple.hh:32 Class for defining the abstract interface for complex coefficient classes. Definition: LauAbsCoeffSet.hh:34 std::vector< Double_t > fakeJacobians_ The cached values of the sqDP jacobians for each true bin. Definition: LauSimpleFitModel.hh:442 void storeCorrMatrix(UInt_t iExpt, Double_t NLL, Int_t fitStatus, const TMatrixD &covMatrix) Store the correlation matrix and other fit information. Definition: LauFitNtuple.cc:64 void embedSignal(const TString &fileName, const TString &treeName, Bool_t reuseEventsWithinEnsemble, Bool_t reuseEventsWithinExperiment=kFALSE, Bool_t useReweighting=kFALSE) Embed full simulation events for the signal, rather than generating toy from the PDFs. Definition: LauSimpleFitModel.cc:1959 std::vector< Double_t > bkgndTotalLike_ Total background likelihood(s) Definition: LauSimpleFitModel.hh:492 void clearFitParVectors() Clear the vectors containing fit parameters. Definition: LauAbsFitModel.cc:284 LauBkgndDPModelList bkgndDPModels_ The background Dalitz Plot model. Definition: LauSimpleFitModel.hh:367 Class to store the data for embedding in toy experiments. Definition: LauEmbeddedData.hh:33 UInt_t getnTotAmp() const Retrieve the total number of amplitude components. Definition: LauIsobarDynamics.hh:384 virtual void addSPlotNtupleDoubleBranch(const TString &name) Add a branch to the sPlot tree for storing a double. Definition: LauAbsFitModel.cc:443 LauParArray fitFracEffUnCorr_ Fit fractions (uncorrected for the efficiency) Definition: LauSimpleFitModel.hh:403 void clearExtraVarVectors() Clear the vectors containing extra ntuple variables. Definition: LauAbsFitModel.cc:299 void getEmbeddedEvent(LauKinematics *kinematics) Retrieve an event from the data sample. Definition: LauEmbeddedData.cc:140 Bool_t withinDPLimits(Double_t m13Sq, Double_t m23Sq) const Check whether a given (m13Sq,m23Sq) point is within the kinematic limits of the Dalitz plot... Definition: LauKinematics.cc:348 virtual void recalculateNormalisation() Recalculate Normalization the signal DP models. Definition: LauSimpleFitModel.cc:391 std::vector< LauParameter > getExtraParameters() Retrieve any extra parameters/quantities (e.g. K-matrix total fit fractions) Definition: LauIsobarDynamics.hh:456 void appendFakePoints(const std::vector< Double_t > &xCoords, const std::vector< Double_t > &yCoords) Add fake events to the data. Definition: LauFitDataTree.cc:182 File containing declaration of LauAbsPdf class. Bool_t storeDPEff() const Determine whether the efficiency information should be stored in the sPlot ntuple. Definition: LauAbsFitModel.hh:190 virtual Double_t getEvtSCFDPLikelihood(UInt_t iEvt) Calculate the SCF likelihood for the DP for a given event. Definition: LauSimpleFitModel.cc:1457 UInt_t bkgndClassID(const TString &className) const The number assigned to a background class. Definition: LauAbsFitModel.cc:254 const LauFitData & getData(UInt_t iEvt) const Retrieve the data for a given event. Definition: LauFitDataTree.cc:312 File containing LauRandom namespace. Bool_t useRandomInitFitPars() const Determine whether the initial values of the fit parameters, in particular the isobar coefficient para... Definition: LauAbsFitModel.hh:193 File containing declaration of LauEffModel class. void setIntegerBranchValue(const TString &name, Int_t value) Set value of an integer branch. Definition: LauGenNtuple.cc:91 Double_t setSPlotNtupleBranchValues(LauPdfList *extraPdfs, const TString &prefix, UInt_t iEvt) Set the branches for the sPlot ntuple with extra PDFs. Definition: LauSimpleFitModel.cc:1670 Bool_t validBkgndClass(const TString &className) const Check if the given background class is in the list. Definition: LauAbsFitModel.cc:237 virtual void writeOutTable(const TString &outputFile) Write the fit results in latex table format. Definition: LauSimpleFitModel.cc:709 Define a Dalitz plot according to the isobar model. Definition: LauSimpleFitModel.hh:44 Class that implements the efficiency description across the signal Dalitz plot. Definition: LauEffModel.hh:37 Bool_t cacheFitData(const TString &dataFileName, const TString &dataTreeName) Store variables from the input file into the internal data storage. Definition: LauAbsFitModel.cc:795 const LauParameterPSet & resPars() const Access the fit variables which affect the DP normalisation. Definition: LauAbsFitModel.hh:666 UInt_t nUsedEvents() const Retrieve the number of events that have already been sampled. Definition: LauEmbeddedData.hh:69 void storeParsAndErrors(const std::vector< LauParameter * > &fitVars, const std::vector< LauParameter > &extraVars) Store parameters and their errors. Definition: LauFitNtuple.cc:134 std::vector< Double_t > recoSCFFracs_ The cached values of the SCF fraction for each event. Definition: LauSimpleFitModel.hh:433 virtual void setSPlotNtupleIntegerBranchValue(const TString &name, Int_t value) Set the value of an integer branch in the sPlot tree. Definition: LauAbsFitModel.cc:448 void embedBkgnd(const TString &bkgndClass, const TString &fileName, const TString &treeName, Bool_t reuseEventsWithinEnsemble, Bool_t reuseEventsWithinExperiment=kFALSE) Embed full simulation events for the given background class, rather than generating toy from the PDFs... Definition: LauSimpleFitModel.cc:1990 Class for defining signal dynamics using the isobar model. Definition: LauIsobarDynamics.hh:39 Double_t getEventWeight() Calculate the acceptance rate, for events with the current kinematics, when generating events accordi... Definition: LauIsobarDynamics.cc:2381 File containing LauConstants namespace. std::vector< Double_t > fakeSCFFracs_ The cached values of the SCF fraction for each bin centre. Definition: LauSimpleFitModel.hh:436 void printFormat(std::ostream &stream, Double_t value) const Method to choose the printing format to a specified level of precision. Definition: LauPrint.cc:32 ToyMCStatus checkToyMC(Bool_t printErrorMessages=kTRUE, Bool_t printInfoMessages=kFALSE) Check the status of the toy MC generation. Definition: LauIsobarDynamics.cc:2106 Bool_t haveBranch(const TString &name) const Check if the named branch is stored. Definition: LauFitDataTree.cc:237 Class for representing the 4D smearing matrix for mis-reconstructed signal (self cross feed) ... Definition: LauScfMap.hh:29 Double_t getEvtEff() const Retrieve the efficiency for the current event. Definition: LauIsobarDynamics.hh:274 UInt_t nBkgndClasses() const Returns the number of background classes. Definition: LauAbsFitModel.hh:227 const TString & bkgndClassName(UInt_t classID) const Get the name of a background class from the number. Definition: LauAbsFitModel.cc:272 Double_t getEvtLikelihood() const Retrieve the likelihood for the current event. Definition: LauIsobarDynamics.hh:294 Bool_t enableEmbedding() const Determine whether embedding of events is enabled in the generation. Definition: LauAbsFitModel.hh:151 virtual TString name() const Retrieve the name of the coefficient set. Definition: LauAbsCoeffSet.hh:117 const TMatrixD & covarianceMatrix() const Access the fit covariance matrix. Definition: LauAbsFitModel.hh:700 const LauParameterPList & fitPars() const Access the fit variables. Definition: LauAbsFitModel.hh:662 Bool_t usingScfModel() Check whether a self cross feed fraction model is being used. Definition: LauIsobarDynamics.hh:450 virtual void addGenNtupleDoubleBranch(const TString &name) Add a branch to the gen tree for storing a double. Definition: LauAbsFitModel.cc:408 Double_t calcSqDPJacobian() Calculate the Jacobian for the transformation m23^2, m13^2 -> m', theta' (square DP) ... Definition: LauKinematics.cc:125 virtual void setupSPlotNtupleBranches() Add branches to store experiment number and the event number within the experiment. Definition: LauSimpleFitModel.cc:1555 void updateFitParameters(LauPdfList &pdfList) Update the fit parameters for all PDFs in the list. Definition: LauAbsFitModel.cc:1214 virtual void checkInitFitParams() Check the initial fit parameters. Definition: LauSimpleFitModel.cc:787 void setExtraNtupleVars() Set-up other parameters that are derived from the fit results, e.g. fit fractions. Definition: LauSimpleFitModel.cc:502 virtual void storePerEvtLlhds() Store the per event likelihood values. Definition: LauSimpleFitModel.cc:1847 virtual Bool_t genExpt() Toy MC generation and fitting overloaded functions. Definition: LauSimpleFitModel.cc:848 File containing declaration of LauAbsBkgndDPModel class. Double_t prob(Int_t recoBin, Int_t trueBin) const Probability of a true event in the given true bin migrating to the reco bin. Definition: LauScfMap.cc:165 void initialise(const std::vector< LauComplex > &coeffs) Initialise the Dalitz plot dynamics. Definition: LauIsobarDynamics.cc:241 Double_t getEvtm13Sq() const Retrieve the invariant mass squared of the first and third daughters in the current event... Definition: LauIsobarDynamics.hh:250 virtual Double_t getEventSum() const Get the total number of events. Definition: LauSimpleFitModel.cc:1402 std::set< TString > NameSet Type to store names, e.g. of the discriminating/control variables. Definition: LauSPlot.hh:59 File containing declaration of LauFitNtuple class. virtual void initialiseDPModels() Initialise the signal DP model. Definition: LauSimpleFitModel.cc:371 File containing declaration of LauGenNtuple class. void setDoubleBranchValue(const TString &name, Double_t value) Set value of a double branch. Definition: LauGenNtuple.cc:96 virtual Bool_t passVeto(const LauKinematics *kinematics) const =0 Determine whether the given DP position is outside the vetoes. Generated by 1.8.5 |