laura is hosted by Hepforge, IPPP Durham
Laura++  v2r1
A maximum likelihood fitting package for performing Dalitz-plot analysis.
LauSumPdf.hh
Go to the documentation of this file.
1 
2 // Copyright University of Warwick 2006 - 2013.
3 // Distributed under the Boost Software License, Version 1.0.
4 // (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5 
6 // Authors:
7 // Thomas Latham
8 // John Back
9 // Paul Harrison
10 
22 #ifndef LAU_SUM_PDF
23 #define LAU_SUM_PDF
24 
25 #include "Rtypes.h"
26 
27 #include "LauAbsPdf.hh"
28 
29 class LauParameter;
30 
31 
32 class LauSumPdf : public LauAbsPdf {
33 
34  public:
36 
41  LauSumPdf(LauAbsPdf* pdf1, LauAbsPdf* pdf2, LauParameter* frac1);
42 
44  virtual ~LauSumPdf();
45 
47  LauSumPdf(const LauSumPdf& other);
48 
50 
53  UInt_t nInputVars() const {return pdf1_->nInputVars();}
54 
56 
59  virtual Bool_t isDPDependent() const {return (pdf1_->isDPDependent() || pdf2_->isDPDependent());}
60 
62 
65  virtual void cacheInfo(const LauFitDataTree& inputData);
66 
68 
71  virtual void calcLikelihoodInfo(const LauAbscissas& abscissas);
72 
74 
77  virtual void calcLikelihoodInfo(UInt_t iEvt);
78 
80  virtual void calcNorm();
81 
83 
86  virtual void calcPDFHeight( const LauKinematics* kinematics );
87 
88  protected:
89 
90  private:
93 
96 
99 
100  ClassDef(LauSumPdf,0) // Define the sum PDF
101 };
102 
103 #endif
UInt_t nInputVars() const
Returns the number of input variables.
Definition: LauSumPdf.hh:53
virtual ~LauSumPdf()
Destructor.
Definition: LauSumPdf.cc:98
LauAbsPdf * pdf1_
First PDF.
Definition: LauSumPdf.hh:92
virtual Bool_t isDPDependent() const
Specifies whether or not the PDF is DP dependent.
Definition: LauAbsPdf.hh:111
virtual void calcNorm()
Calculate the normalisation.
Definition: LauSumPdf.cc:133
Class for defining the fit parameter objects.
Definition: LauParameter.hh:33
File containing declaration of LauAbsPdf class.
Class for defining a PDF that is the sum of two other PDFs.
Definition: LauSumPdf.hh:32
virtual void calcLikelihoodInfo(const LauAbscissas &abscissas)
Calculate the likelihood (and intermediate info) for a given abscissa.
Definition: LauSumPdf.cc:112
LauAbsPdf * pdf2_
Second PDF.
Definition: LauSumPdf.hh:95
LauSumPdf(LauAbsPdf *pdf1, LauAbsPdf *pdf2, LauParameter *frac1)
Constructor.
Definition: LauSumPdf.cc:28
LauAbsRValue * frac_
Fractional contribution of first PDF to the final PDF.
Definition: LauSumPdf.hh:98
Class for defining the abstract interface for PDF classes.
Definition: LauAbsPdf.hh:41
virtual void calcPDFHeight(const LauKinematics *kinematics)
Calculate the PDF height.
Definition: LauSumPdf.cc:139
Class for calculating 3-body kinematic quantities.
virtual UInt_t nInputVars() const
Retrieve the number of abscissas.
Definition: LauAbsPdf.hh:104
virtual Bool_t isDPDependent() const
Boolean for the DP dependence of PDFs in the sum.
Definition: LauSumPdf.hh:59
Pure abstract base class for defining a parameter containing an R value.
Definition: LauAbsRValue.hh:29
Class to store the input fit variables.
std::vector< Double_t > LauAbscissas
The type used for containing multiple abscissa values.
Definition: LauAbsPdf.hh:45
virtual void cacheInfo(const LauFitDataTree &inputData)
Cache information from data.
Definition: LauSumPdf.cc:177