Do Fit 1
Do Fit 2
****************************************
Minimizer is Minuit2 / Migrad
Chi2 = 65.1586
NDf = 56
Edm = 1.93774e-09
NCalls = 69
Constant = 36.3132 +/- 1.52625 -1.51651 +1.53547 (Minos)
Mean = 0.013082 +/- 0.0347499 -0.0347674 +0.0347613 (Minos)
Sigma = 1.03413 +/- 0.0288039 -0.0286274 +0.0290102 (Minos) (limited)
Do Fit 3
****************************************
Minimizer is Minuit2 / Migrad
Chi2 = 65.1586
NDf = 56
Edm = 6.86315e-08
NCalls = 57
Constant = 36.327 +/- 2 -1.51685 +1.53726 (Minos)
Mean = 0.0130817 +/- 2
Sigma = 1.03373 +/- 6.72116 (limited)
Do Fit 4
****************************************
Minimizer is Minuit2 / Migrad
MinFCN = 43.3935
Chi2 = 86.7869
NDf = 97
Edm = 9.97216e-08
NCalls = 62
Constant = 38.427 +/- 1.48837 -1.46667 +1.51031 (Minos)
Mean = 0.027601 +/- 0.032831 -0.0328395 +0.0328395 (Minos)
Sigma = 1.03819 +/- 0.0232194 -0.0227841 +0.0236699 (Minos) (limited)
Do Fit 1
Do Fit 2
****************************************
Minimizer is Minuit2 / Fumili
Chi2 = 65.1586
NDf = 56
Edm = 8.05693e-09
NCalls = 45
Constant = 36.3131 +/- 1.52625 -1.51642 +1.53556 (Minos)
Mean = 0.0130818 +/- 0.0347499 -0.0347671 +0.0347615 (Minos)
Sigma = 1.03413 +/- 0.0288039 -0.0286291 +0.0290085 (Minos) (limited)
Do Fit 3
****************************************
Minimizer is Minuit2 / Fumili
Chi2 = 65.1586
NDf = 56
Edm = 1.52369e-08
NCalls = 45
Constant = 36.3272 +/- 1.52734 -1.51745 +1.53671 (Minos)
Mean = 0.0130818 +/- 0.0347499 -0.0347671 +0.0347615 (Minos)
Sigma = 1.03373 +/- 0.0288151 -0.0286415 +0.0290186 (Minos) (limited)
Do Fit 4
****************************************
Minimizer is Minuit2 / Fumili
MinFCN = 43.3935
Chi2 = 86.7869
NDf = 97
Edm = 3.18744e-08
NCalls = 45
Constant = 38.4264 +/- 1.48835 -1.46601 +1.51097 (Minos)
Mean = 0.0275931 +/- 0.0328313 -0.0328316 +0.0328474 (Minos)
Sigma = 1.0382 +/- 0.0232197 -0.0227928 +0.0236612 (Minos) (limited)
#include <iostream>
#include <string>
void testGausFit( std::string
type =
"Minuit2",
int n = 1000) {
TH1D * h2 =
new TH1D(
name.c_str(),
"Chi2 Fit with Minos Error",100, -5, 5. );
TH1D * h3 =
new TH1D(
name.c_str(),
"Chi2 Fit with Integral and Minos",100, -5, 5. );
TH1D * h4 =
new TH1D(
name.c_str(),
"Likelihood Fit with Minos Error",100, -5, 5. );
for (
int i = 0; i <
n; ++i) {
}
std::string ctitle =
type +
" Gaussian Fit" ;
std::cout << "\nDo Fit 1\n";
std::cout << "\nDo Fit 2\n";
h2->Fit("gaus","E");
h2->Draw();
std::cout << "\nDo Fit 3\n";
h3->Fit("gaus","IGE");
h3->Draw();
std::cout << "\nDo Fit 4\n";
}
void minuit2GausFit() {
testGausFit(
"Minuit2",
n);
testGausFit(
"Fumili2",
n);
}
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char cname
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
R__EXTERN TRandom * gRandom
R__EXTERN TStyle * gStyle
1-D histogram with a double per channel (see TH1 documentation)
virtual TFitResultPtr Fit(const char *formula, Option_t *option="", Option_t *goption="", Double_t xmin=0, Double_t xmax=0)
Fit histogram with function fname.
virtual Int_t Fill(Double_t x)
Increment bin with abscissa X by 1.
void Draw(Option_t *option="") override
Draw this histogram with options.
Random number generator class based on M.
virtual Double_t Gaus(Double_t mean=0, Double_t sigma=1)
Samples a random number from the standard Normal (Gaussian) Distribution with the given mean and sigm...
void SetOptStat(Int_t stat=1)
The type of information printed in the histogram statistics box can be selected via the parameter mod...
void SetOptFit(Int_t fit=1)
The type of information about fit parameters printed in the histogram statistics box can be selected ...
static void SetDefaultFitter(const char *name="")
static: set name of default fitter