void gauexp(){ gStyle->SetFuncWidth(1); f=new TF1("f","1.0048*exp( -0.0000015496*x )",0.,10000.); f->SetTitle("Exponetial versus Gaussian Extrapolation Correction"); f->SetLineColor(2); f->SetLineStyle(2); f->SetMinimum(0.98); g=new TF1("g","1.0024*exp( -(x**2/2./(51111.**2)) )",0.,10000.); g->SetTitle("Gaussian fit to data"); g->SetLineColor(3); g->SetLineStyle(3); fg=new TF1("fg","0.5*1.0048*exp( -0.0000015496*x )+0.5*1.0024*exp( -(x**2/2./(51111.**2)) )",0.,10000.); g->SetTitle("half exponential half gaussian in data"); g->SetLineColor(4); g->SetLineStyle(4); f2=new TF1("f2","1.0106*exp( -0.0000015496*x )",0.,10000.); f2->SetTitle("exponential in simulation"); f2->SetLineColor(6); f2->SetLineStyle(6); g2=new TF1("g2","1.0106*exp( -(x**2/2./(51111.**2)) )",0.,10000.); g2->SetTitle("Gaussian in simulation"); g2->SetLineColor(7); g2->SetLineStyle(7); fg2=new TF1("fg2","0.5*1.0106*(exp( -0.0000015496*x )+exp( -(x**2/2./(51111.**2)) ))",0.,10000.); fg2->SetTitle("half exponential half Gaussian in simulation"); fg2->SetLineColor(8); fg2->SetLineStyle(8); f->Draw(); g->Draw("same"); fg->Draw("same"); f2->Draw("same"); g2->Draw("same"); fg2->Draw("same"); fmut=new TF1("fmut","1./1325.77864*exp(-x/2197.03)",0.,10000.); ft=new TF1("f","1.0048*exp( -0.0000015496*x )*1./1325.77864*exp(-x/2197.03)",0.,10000.); ft->SetTitle("Exponetial versus Gaussian Extrapolation Correction"); ft->SetLineColor(2); ft->SetLineStyle(2); ft->SetMinimum(0.98); gt=new TF1("g","1.0024*exp( -(x**2/2./(51111.**2)) )*1./1325.77864*exp(-x/2197.03)",0.,10000.); gt->SetTitle("Gaussian fit to data"); gt->SetLineColor(3); gt->SetLineStyle(3); fgt=new TF1("fg","0.5*(1.0048*exp( -0.0000015496*x )+1.0024*exp( -(x**2/2./(51111.**2)) ))*1./1325.77864*exp(-x/2197.03)",0.,10000.); gt->SetTitle("half exponential half gaussian in data"); gt->SetLineColor(4); gt->SetLineStyle(4); ft2=new TF1("f2","1.0106*exp( -0.0000015496*x )*1./1325.77864*exp(-x/2197.03)",0.,10000.); ft2->SetTitle("exponential in simulation"); ft2->SetLineColor(6); ft2->SetLineStyle(6); gt2=new TF1("g2","1.0106*exp( -(x**2/2./(51111.**2)) )*1./1325.77864*exp(-x/2197.03)",0.,10000.); gt2->SetTitle("Gaussian in simulation"); gt2->SetLineColor(7); gt2->SetLineStyle(7); fgt2=new TF1("fg2","0.5*1.0106*(exp( -0.0000015496*x )+exp( -(x**2/2./(51111.**2)) ))*1./1325.77864*exp(-x/2197.03)",0.,10000.); fgt2->SetTitle("half exponential half Gaussian in simulation"); fgt2->SetLineColor(8); fgt2->SetLineStyle(8); printf("Data, exponential Pmu(0)=%8.6f =%8.6f \n",f->Eval(0.),ft->Integral(1050.,9000.)); printf("Data, Gaussian Pmu(0)=%8.6f =%8.6f \n",g->Eval(0.),gt->Integral(1050.,9000.)); printf("Data, exp+Gaus Pmu(0)=%8.6f =%8.6f \n",fg->Eval(0.),fgt->Integral(1050.,9000.)); printf("Sim, exponential Pmu(0)=%8.6f =%8.6f \n",f2->Eval(0.),ft2->Integral(1050.,9000.)); printf("Sim, Gaussian Pmu(0)=%8.6f =%8.6f \n",g2->Eval(0.),gt2->Integral(1050.,9000.)); printf("Sim, exp+Gaus Pmu(0)=%8.6f =%8.6f \n",fg2->Eval(0.),fgt2->Integral(1050.,9000.)); }