Heavy ion Analysis Libriares
Loading...
Searching...
No Matches
ChiSqMap2D.h
1/*
2 * HalChiSqMap.h
3 *
4 * Created on: 30-04-2022
5 * Author: Daniel Wielanek
6 * E-mail: daniel.wielanek@gmail.com
7 * Warsaw University of Technology, Faculty of Physics
8 */
9#ifndef HALCHISQMAP2D_H_
10#define HALCHISQMAP2D_H_
11
12#include "Object.h"
13
14#include <TString.h>
15
16
17class TH2D;
18class TLine;
19namespace Hal {
20 class ChiSqMap2D : public Object {
21 TH2D* fHist;
22 TLine* fLineX;
23 TLine* fLineY;
24 TLine* fLineXlow;
25 TLine* fLineXhigh;
26 TLine* fLineYlow;
27 TLine* fLineYhigh;
28 TString fLabel;
29 void DrawLineX(TLine* l);
30 void DrawLineY(TLine* l);
31 Bool_t CheckX(Double_t x) const;
32 Bool_t CheckY(Double_t y) const;
33 TLine* MakeXLine(Double_t x, Style_t style) const;
34 TLine* MakeYLine(Double_t x, Style_t style) const;
35
36 protected:
37 ChiSqMap2D();
38
39 public:
50 ChiSqMap2D(TString name, Int_t xbins, Double_t xlow, Double_t xhigh, Int_t ybins, Double_t ylow, Double_t yhigh);
55 void SetParNames(TString xpar, TString ypar);
60 void SetLabel(TString label) { fLabel = label; };
65 TString GetLabel() const { return fLabel; };
69 static TString ChiLabel() { return "#chi^{2}"; };
74 static TString ChiNDFLabel() { return "#chi^{2}/NDF"; };
79 Double_t GetFitX() const;
84 Double_t GetFitY() const;
89 Double_t GetFitXErrorUp() const;
94 Double_t GetFitXErrorLow() const;
99 Double_t GetFitYErrorUp() const;
104 Double_t GetFitYErrorLow() const;
112 Double_t GetEstErrorX(Double_t thres = 0.1, Bool_t around_fit = kTRUE) const;
120 Double_t GetEstErrorY(Double_t thres = 0.1, Bool_t around_fit = kTRUE) const;
125 Double_t GetEstX() const;
130 Double_t GetEstY() const;
131
135 TH2D* GetHist() const { return fHist; };
142 void SetXFit(Double_t Value, Double_t errLow = 0, Double_t errHigh = -1);
149 void SetYFit(Double_t Value, Double_t errLow = 0, Double_t errHigh = -1);
155 void GetMin(Double_t& x, Double_t& y) const;
162 void Draw(Option_t* opt = "");
170 void GetXYE(Double_t& x, Double_t& eX, Double_t& y, Double_t& eY) const;
171 virtual ~ChiSqMap2D();
172 ClassDef(ChiSqMap2D, 1)
173 };
174} // namespace Hal
175#endif /* HALCHISQMAP2D_H_ */
void GetMin(Double_t &x, Double_t &y) const
Double_t GetFitY() const
TString GetLabel() const
Definition ChiSqMap2D.h:65
Double_t GetFitX() const
Double_t GetFitYErrorLow() const
void Draw(Option_t *opt="")
static TString ChiLabel()
Definition ChiSqMap2D.h:69
void SetParNames(TString xpar, TString ypar)
Double_t GetFitYErrorUp() const
void SetLabel(TString label)
Definition ChiSqMap2D.h:60
Double_t GetFitXErrorLow() const
void GetXYE(Double_t &x, Double_t &eX, Double_t &y, Double_t &eY) const
Double_t GetEstX() const
void SetXFit(Double_t Value, Double_t errLow=0, Double_t errHigh=-1)
TH2D * GetHist() const
Definition ChiSqMap2D.h:135
Double_t GetEstY() const
void SetYFit(Double_t Value, Double_t errLow=0, Double_t errHigh=-1)
Double_t GetFitXErrorUp() const
Double_t GetEstErrorY(Double_t thres=0.1, Bool_t around_fit=kTRUE) const
Double_t GetEstErrorX(Double_t thres=0.1, Bool_t around_fit=kTRUE) const
static TString ChiNDFLabel()
Definition ChiSqMap2D.h:74