Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef __CINT__
00019
00020 #include "TH1.h"
00021 #include "TFile.h"
00022 #include "TCanvas.h"
00023 #include "TApplication.h"
00024
00025 #include "TGo4FitMinuit.h"
00026 #include "TGo4Fitter.h"
00027 #include "TGo4FitDataHistogram.h"
00028 #include "TGo4FitModelPolynom.h"
00029 #include "TGo4FitModelGauss1.h"
00030 #include "TGo4FitModelFromData.h"
00031
00032 void Example10();
00033
00034 int main(int argc, char **argv)
00035 {
00036 TApplication theApp("Application", 0, 0);
00037
00038 Example10();
00039
00040 theApp.Run();
00041
00042 return 0;
00043 }
00044
00045 #endif
00046
00047
00048 TH1D* GetHistogram(const char* HistogramName)
00049 {
00050 TFile* f1 = TFile::Open("histograms.root");
00051 if (f1==0) return 0;
00052 TH1D* histo = (TH1D*) f1->Get(HistogramName);
00053 if (histo) histo->SetDirectory(0);
00054 return histo;
00055 }
00056
00057 void Example10()
00058 {
00059
00060 TGo4Fitter fitter("Fitter", TGo4Fitter::ff_ML_Poisson, kTRUE);
00061
00062 TH1D* histo1 = GetHistogram("hDeg120_P_c");
00063 TH1D* histo2 = GetHistogram("hDeg120_CND");
00064
00065
00066 fitter.AddH1("data2", histo2, kTRUE, 2200., 2900.);
00067
00068
00069 fitter.AddPolynomX("data2", "Pol", 1);
00070
00071
00072 fitter.AddModel("data2", new TGo4FitModelFromData("Model1",histo1,kTRUE) );
00073
00074
00075 fitter.AddGauss1("data2", "Gauss3", 2597., 14.);
00076 fitter.AddGauss1("data2", "Gauss4", 2717., 14.);
00077
00078
00079 fitter.DoActions();
00080
00081
00082 fitter.Draw("#data2,Model1,Gauss3,Gauss4");
00083 fitter.Print("Pars");
00084 }