MINT2
HyperFunction.h
Go to the documentation of this file.
1 
12 #ifndef HYPERFUNCTION_HH
13 #define HYPERFUNCTION_HH
14 
15 // HyperPlot includes
16 #include "Mint/MessageService.h"
17 #include "Mint/HyperPointSet.h"
18 #include "Mint/HyperCuboid.h"
19 #include "Mint/RootPlotter2D.h"
20 
21 // Root includes
22 #include "TH2D.h"
23 
24 // std includes
25 
26 
28 
29  private:
30 
32 
33  public:
34 
35  HyperFunction();
36  HyperFunction(const HyperCuboid& limits);
38  virtual double getVal(const HyperPoint& point) const = 0;
40  void reweightDataset(HyperPointSet& points);
41 
42  void setFuncLimits(const HyperCuboid& limits);
43 
44  const HyperCuboid& getFuncLimits() const{return _limits;}
45 
46  TH2D make2DFuncSlice (TString name, int sliceDimX, int sliceDimY, const HyperPoint& slicePoint, int nbins = 100) const;
47  void draw2DFuncSlice (TString path, int sliceDimX, int sliceDimY, const HyperPoint& slicePoint, int nbins = 100) const;
48  void draw2DFuncSliceSet(TString path, int sliceDimX, int sliceDimY, int sliceSetDim, int nSlices, const HyperPoint& slicePoint, int nbins = 100) const;
49  void draw2DFuncSliceSet(TString path, int sliceDimX, int sliceDimY, int nSlices, const HyperPoint& slicePoint, int nbins = 100) const;
50  void draw2DFuncSliceSet(TString path, int nSlices, const HyperPoint& slicePoint, int nbins = 100) const;
51 
52  double getDifference(const HyperFunction& other, const HyperPoint& point);
56  void fillCorrelations(TH2D& hist, const HyperFunction& other, const HyperPointSet& points);
57 
58  virtual ~HyperFunction(){;}
60 };
61 
62 
63 #endif
void draw2DFuncSliceSet(TString path, int sliceDimX, int sliceDimY, int sliceSetDim, int nSlices, const HyperPoint &slicePoint, int nbins=100) const
TH2D make2DFuncSlice(TString name, int sliceDimX, int sliceDimY, const HyperPoint &slicePoint, int nbins=100) const
void reweightDataset(HyperPointSet &points)
void draw2DFuncSlice(TString path, int sliceDimX, int sliceDimY, const HyperPoint &slicePoint, int nbins=100) const
HyperCuboid _limits
Definition: HyperFunction.h:31
double getDifference(const HyperFunction &other, const HyperPoint &point)
void fillCorrelations(TH2D &hist, const HyperFunction &other, const HyperPointSet &points)
virtual ~HyperFunction()
Definition: HyperFunction.h:58
virtual double getVal(const HyperPoint &point) const =0
void setFuncLimits(const HyperCuboid &limits)
const HyperCuboid & getFuncLimits() const
Definition: HyperFunction.h:44