laura is hosted by Hepforge, IPPP Durham
Laura++  v1r0
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 checkPositiveness();
81 
83  virtual void calcNorm();
84 
86 
89  virtual void calcPDFHeight( const LauKinematics* kinematics );
90 
91  protected:
92 
93  private:
96 
99 
102 
103  ClassDef(LauSumPdf,0) // Define the sum PDF
104 };
105 
106 #endif
UInt_t nInputVars() const
Returns the number of input variables.
Definition: LauSumPdf.hh:53
LauParameter * frac_
Fractional contribution of first PDF to the final PDF.
Definition: LauSumPdf.hh:101
virtual ~LauSumPdf()
Destructor.
Definition: LauSumPdf.cc:98
LauAbsPdf * pdf1_
First PDF.
Definition: LauSumPdf.hh:95
virtual Bool_t isDPDependent() const
Specifies whether or not the PDF is DP dependent.
Definition: LauAbsPdf.hh:110
virtual void calcNorm()
Calculate the normalisation.
Definition: LauSumPdf.cc:133
Class for defining the fit parameter objects.
Definition: LauParameter.hh:31
File containing declaration of LauAbsPdf class.
virtual void checkPositiveness()
Check that PDF is positive.
Definition: LauSumPdf.cc:174
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:98
LauSumPdf(LauAbsPdf *pdf1, LauAbsPdf *pdf2, LauParameter *frac1)
Constructor.
Definition: LauSumPdf.cc:28
Class for defining the abstract interface for PDF classes.
Definition: LauAbsPdf.hh:40
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:103
virtual Bool_t isDPDependent() const
Boolean for the DP dependence of PDFs in the sum.
Definition: LauSumPdf.hh:59
Class to store the input fit variables.
std::vector< Double_t > LauAbscissas
The type used for containing multiple abscissa values.
Definition: LauAbsPdf.hh:44
virtual void cacheInfo(const LauFitDataTree &inputData)
Cache information from data.
Definition: LauSumPdf.cc:183