HighLAND
BinnedPDF.hxx
1 #ifndef BinnedPDF_h
2 #define BinnedPDF_h
3 
4 #include <stdio.h>
5 #include <string>
6 #include <vector>
7 #include <math.h>
8 #include <TMath.h>
9 
10 /// This class defines a binned probability density function
11 class BinnedPDF{
12 
13 public:
14 
15  BinnedPDF(){_binWeight.clear();_binCenter.clear();_params.clear();}
16 
17  virtual ~BinnedPDF(){}
18 
19  /// returns the number of bins
20  unsigned int GetNBins() const{return _binCenter.size();}
21 
22  /// returns the weight for a bin
23  Float_t GetBinWeight(int ibin) const {return _binWeight[ibin];}
24 
25  /// returns the bin center for a bin
26  Float_t GetBinCenter(int ibin) const {return _binCenter[ibin];}
27 
28  /// returns vector of parameters
29  const std::vector<Float_t>& GetParams() const {return _params;}
30 
31 protected:
32 
33  /// vector of weights
34  std::vector<Float_t> _binWeight;
35 
36  /// vector of bin centers
37  std::vector<Float_t> _binCenter;
38 
39  /// vector of parameters
40  std::vector<Float_t> _params;
41 };
42 
43 
44 
45 /// This class defines a symmetric binned gaussian
46 class BinnedGaussian: public BinnedPDF{
47 
48 public:
49  ///Define the integral of a gaussian normalized to 1, inside each of the nbins
50  BinnedGaussian(int nbins, Float_t mean, Float_t sigma);
51  virtual ~BinnedGaussian(){}
52 };
53 
54 
55 #endif
std::vector< Float_t > _params
vector of parameters
Definition: BinnedPDF.hxx:40
This class defines a symmetric binned gaussian.
Definition: BinnedPDF.hxx:46
Float_t GetBinWeight(int ibin) const
returns the weight for a bin
Definition: BinnedPDF.hxx:23
const std::vector< Float_t > & GetParams() const
returns vector of parameters
Definition: BinnedPDF.hxx:29
std::vector< Float_t > _binCenter
vector of bin centers
Definition: BinnedPDF.hxx:37
This class defines a binned probability density function.
Definition: BinnedPDF.hxx:11
Float_t GetBinCenter(int ibin) const
returns the bin center for a bin
Definition: BinnedPDF.hxx:26
unsigned int GetNBins() const
returns the number of bins
Definition: BinnedPDF.hxx:20
std::vector< Float_t > _binWeight
vector of weights
Definition: BinnedPDF.hxx:34