00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __CINT__
00020
00021 #include "TGraph.h"
00022 #include "TApplication.h"
00023
00024 #include "../Go4Fit/TGo4Fitter.h"
00025 #include "../Go4Fit/TGo4FitDataGraph.h"
00026
00027 void Example12();
00028
00029 int main(int argc, char **argv) {
00030
00031 TApplication theApp("Application", 0, 0);
00032
00033 Example12();
00034
00035 theApp.Run();
00036
00037 return 0;
00038 }
00039
00040 #endif
00041
00042
00043 TGraph* MakeGraph() {
00044 TGraph* gr = new TGraph(40);
00045 for(Int_t i=0;i<40;i++) {
00046 Double_t x = (i+1.)/40.;
00047 Double_t y = 5 - 0.5*x + x*x;
00048 if ((x>0.3) && (x<0.7))
00049 y+= 10.*(1. - 25.*(x-.5)*(x-.5));
00050 gr->SetPoint(i, x, y);
00051 }
00052 return gr;
00053
00054 }
00055
00056 void Example12() {
00057
00058 TGo4Fitter fitter("Fitter", TGo4Fitter::ff_ML_Poisson, kTRUE);
00059
00060
00061 fitter.AddGraph("data1", MakeGraph(), kTRUE);
00062
00063
00064 fitter.AddPolynomX("data1", "BackgrPol", 2);
00065
00066
00067 fitter.AddPolynomX("data1", "LinePol", 2, 123, 0.3, 0.7);
00068
00069
00070 fitter.DoActions();
00071
00072
00073 fitter.Print("Pars");
00074
00075
00076 fitter.Draw("#data1-, Background, Group123");
00077 }
00078
00079