MINT2
DalitzPdfBase.h
Go to the documentation of this file.
1 #ifndef DALITZ_PDF_BASE_HH
2 #define DALITZ_PDF_BASE_HH
3 // author: Jonas Rademacker (Jonas.Rademacker@bristol.ac.uk)
4 // status: Mon 9 Feb 2009 19:18:01 GMT
5 
6 #include "Mint/PdfBase.h"
7 #include "Mint/IEventGenerator.h"
8 #include "Mint/IDalitzEvent.h"
10 #include "Mint/DalitzEvent.h"
11 
12 #include "Mint/IDalitzPdf.h"
13 
15 #include "Mint/DalitzHistoSet.h"
16 
17 class DalitzPdfBase :
18 public MINT::PdfBase<IDalitzEvent>
19 , virtual public IDalitzPdf
20  , virtual public MINT::IReturnRealForEvent<IDalitzEvent>
21 {
23  double _norm;
24  double _precision;
26 
28 
29  virtual double un_normalised_noPs(IDalitzEvent& evt)=0;
30  virtual double phaseSpace(IDalitzEvent& evt);
31  bool getNorm();
32  bool integrating();
33 
34  public:
36 
38  , double precision = 1.e-2
39  );
40 
41  void setIntegrationPrecision(double prec);
45  return _generator;}
46 
47  virtual void beginFit();
48  virtual void parametersChanged();
49  virtual void endFit();
50 
51  virtual double getVal(IDalitzEvent& evt);
52  virtual double getVal_noPs(IDalitzEvent& evt);
53  virtual double getVal_withPs(IDalitzEvent& evt);
54 
55  // the following three are for backward compatiblity
56  // and will disappear soon:
57  virtual double getVal(IDalitzEvent* evt){
58  if(0 == evt) return 0;
59  return getVal(*evt);
60  }
61  virtual double getVal_noPs(IDalitzEvent* evt){
62  if(0 == evt) return 0;
63  return getVal_noPs(*evt);
64  }
65  virtual double getVal_withPs(IDalitzEvent* evt){
66  if(0 == evt) return 0;
67  return getVal_withPs(*evt);
68  }
69 
70 
71  double RealVal(IDalitzEvent& evt){return getVal(evt);}
72  // implements MINT::IGetRealEvent
73 
75 
76 };
77 
78 #endif
79 //
double RealVal(IDalitzEvent &evt)
Definition: DalitzPdfBase.h:71
void setIntegrationPrecision(double prec)
virtual double getVal_noPs(IDalitzEvent &evt)
virtual void endFit()
virtual double un_normalised_noPs(IDalitzEvent &evt)=0
virtual void parametersChanged()
MINT::IEventGenerator< IDalitzEvent > * _generator
Definition: DalitzPdfBase.h:27
virtual double phaseSpace(IDalitzEvent &evt)
virtual double getVal_withPs(IDalitzEvent &evt)
DalitzHistoSet histoSet()
DalitzPdfBase(MINT::IEventGenerator< IDalitzEvent > *generator=0, double precision=1.e-2)
MINT::IEventGenerator< IDalitzEvent > * getEventGenerator()
Definition: DalitzPdfBase.h:43
const MINT::IEventGenerator< IDalitzEvent > * getEventGenerator() const
Definition: DalitzPdfBase.h:44
DalitzMCIntegrator _mcint
Definition: DalitzPdfBase.h:25
virtual double getVal_noPs(IDalitzEvent *evt)
Definition: DalitzPdfBase.h:61
DalitzHistoSet histoSet()
Definition: DalitzPdfBase.h:74
double _precision
Definition: DalitzPdfBase.h:24
void setEventGenerator(MINT::IEventGenerator< IDalitzEvent > *g)
Definition: DalitzPdfBase.h:42
virtual double getVal_withPs(IDalitzEvent *evt)
Definition: DalitzPdfBase.h:65
virtual double getVal(IDalitzEvent *evt)
Definition: DalitzPdfBase.h:57
static const double g
DalitzEventPattern _pat
Definition: DalitzPdfBase.h:22
virtual void beginFit()
virtual double getVal(IDalitzEvent &evt)