00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef __CINT__
00023
00024 #include "TH1.h"
00025 #include "TFile.h"
00026 #include "TApplication.h"
00027
00028 #include "../Go4Fit/TGo4Fitter.h"
00029 #include "TModelTemplate.h"
00030
00031 void Example4();
00032
00033 int main(int argc, char **argv)
00034 {
00035 TApplication theApp("Application", 0, 0);
00036
00037 Example4();
00038
00039 theApp.Run();
00040
00041 return 0;
00042 }
00043
00044 #endif
00045
00046
00047 TH1D* GetHistogram(const char* HistogramName) {
00048 TFile f1("histograms.root");
00049 TH1D* histo = (TH1D*) f1.Get(HistogramName);
00050 histo->SetDirectory(0);
00051 return histo;
00052 }
00053
00054 void Example4() {
00055
00056 TGo4Fitter fitter("Fitter", TGo4Fitter::ff_ML_Poisson, kTRUE);
00057
00058
00059 fitter.AddH1("data1", GetHistogram("hDeg120_P_c"), kTRUE, 2200., 2900.);
00060
00061
00062 fitter.AddPolynomX( "data1", "Pol", 1);
00063
00064
00065 fitter.AddModel( "data1", new TModelTemplate("Gauss1",2,kTRUE) );
00066 fitter.AddModel( "data1", new TModelTemplate("Gauss2",2,kTRUE) );
00067
00068
00069 fitter.SetParValue("Gauss1.Par0",2553.);
00070 fitter.SetParValue("Gauss1.Par1",15.);
00071 fitter.SetParValue("Gauss2.Par0",2672.);
00072 fitter.SetParValue("Gauss2.Par1",15.);
00073
00074
00075 fitter.DoActions();
00076
00077
00078 fitter.Draw ("#data1,Gauss1,Gauss2");
00079 fitter.Print("Pars");
00080 }
00081
00082