MINT2
FlatFct.h
Go to the documentation of this file.
1 #ifndef FLAT_FCT_HH
2 #define FLAT_FCT_HH
3 // author: Jonas Rademacker (Jonas.Rademacker@bristol.ac.uk)
4 // status: Mon 9 Feb 2009 19:17:58 GMT
5 
6 #include "TRandom.h"
7 
8 //#include "Mint/counted_ptr.h"
9 #include "Mint/IGenFct.h"
10 
11 class FlatFct : virtual public IGenFct{
12  protected:
15  double _min, _max;
16  void redoLimits();
17  // the limits passed through _coord and changed with setLimits
18  // are the limits over
19  // which the function is defined, the other limits are on top of that
20  // it will return non-zero values if within both limits.
21  // Important for the way DalitzBWArea interacts with this.
22  public:
23  virtual double min() const;
24  virtual double max() const;
25 
26  FlatFct(const DalitzCoordinate& c);
27  FlatFct(const FlatFct& other);
28  // virtual counted_ptr<IGenFct> Clone() const;
29 
30  virtual void setLimits(double sMin, double sMax);
31  virtual void setBoxLimits(double sMin, double sMax);
32  virtual void resetBoxLimits();
33  virtual double getSMi()const{return _coord.min();}
34  virtual double getSMa()const{return _coord.max();}
35  virtual double generate(TRandom* rnd=gRandom) const;
36  virtual double generateRho(TRandom* rnd=gRandom) const;
37 
38  virtual DalitzCoordinate getCoordinate() const;
39  virtual void setCoordinate(const DalitzCoordinate& c);
40 
41  virtual double generatingPDFValue(double sij) const;
42  virtual double generatingFctValue(double sij) const;
43  virtual double transformedFctValue(double sij) const;
44  virtual double transformedFctMax()const;
45  virtual double integral()const;
46  // normalised to limits passed via DalitzCoordinate & boxLimits
47 
48  virtual bool flat()const{return true;}
49 
50  virtual ~FlatFct(){};
51 };
52 
53 #endif
54 //
double min() const
virtual void setLimits(double sMin, double sMax)
Definition: FlatFct.cpp:32
virtual double transformedFctMax() const
Definition: FlatFct.cpp:116
double _max
Definition: FlatFct.h:15
virtual DalitzCoordinate getCoordinate() const
Definition: FlatFct.cpp:124
virtual double getSMi() const
Definition: FlatFct.h:33
double _boxLimit_max
Definition: FlatFct.h:14
virtual void setBoxLimits(double sMin, double sMax)
Definition: FlatFct.cpp:48
DalitzCoordinate _coord
Definition: FlatFct.h:13
double max() const
virtual ~FlatFct()
Definition: FlatFct.h:50
virtual void resetBoxLimits()
Definition: FlatFct.cpp:55
double _boxLimit_min
Definition: FlatFct.h:14
FlatFct(const DalitzCoordinate &c)
Definition: FlatFct.cpp:7
virtual double generatingPDFValue(double sij) const
Definition: FlatFct.cpp:99
double _min
Definition: FlatFct.h:15
void redoLimits()
Definition: FlatFct.cpp:68
virtual double generatingFctValue(double sij) const
Definition: FlatFct.cpp:107
virtual double generate(TRandom *rnd=gRandom) const
Definition: FlatFct.cpp:90
virtual double transformedFctValue(double sij) const
Definition: FlatFct.cpp:111
virtual double min() const
Definition: FlatFct.cpp:61
virtual void setCoordinate(const DalitzCoordinate &c)
Definition: FlatFct.cpp:127
virtual bool flat() const
Definition: FlatFct.h:48
virtual double integral() const
Definition: FlatFct.cpp:120
virtual double getSMa() const
Definition: FlatFct.h:34
virtual double max() const
Definition: FlatFct.cpp:64
virtual double generateRho(TRandom *rnd=gRandom) const
Definition: FlatFct.cpp:95