#define omega_cxx // The class definition in omega.h has been generated automatically // by the ROOT utility TTree::MakeSelector(). This class is derived // from the ROOT class TSelector. For more information on the TSelector // framework see $ROOTSYS/README/README.SELECTOR or the ROOT User Manual. // The following methods are defined in this file: // Begin(): called everytime a loop on the tree starts, // a convenient place to create your histograms. // SlaveBegin(): called after Begin(), when on PROOF called only on the // slave servers. // Process(): called for each event, in this function you decide what // to read and fill your histograms. // SlaveTerminate: called at the end of the loop on the tree, when on PROOF // called only on the slave servers. // Terminate(): called at the end of the loop on the tree, // a convenient place to draw/fit your histograms. // // To use this file, try the following session on your Tree T: // // Root > T->Process("omega.C") // Root > T->Process("omega.C","some options") // Root > T->Process("omega.C+") // #include "omega.h" #include #include FILE *in; FILE *out; Int_t naccepted=0; Float_t cut=0.2; Int_t sum=0; FILE *dump; void omega::Begin(TTree * /*tree*/) { // The Begin() function is called at the start of the query. // When running with PROOF Begin() is only called on the client. // The tree argument is deprecated (on PROOF 0 is passed). TString option = GetOption(); //------------------------------------- // Instantiate my histograms mass_X = new TH1D("mass_X", "Mass of Exotic Hybrid", 400, 0.0, 4.0); mass_b1 = new TH1D("mass_b1", "Mass of b1 meson", 200, 0.0, 2.0); mass_omega = new TH1D("mass_omega", "Mass of #omega meson", 200, 0.0, 2.0); mass_rho = new TH1D("mass_rho", "Mass of #rho meson", 200, 0.0, 2.0); mass_pi0 = new TH1D("mass_pi0", "Mass of #pi^{o} meson", 500, 0.0, 0.5); //------------------------------------- // histogram momentum differences between particles TH2D *pip_p1 = new TH2D("pip_p1","Recons vs Gen pip1",600,0.,6.,600,0.,6.); TH2D *pip_p2 = new TH2D("pip_p2","Recons vs Gen pip2",600,0.,6.,600,0.,6.); TH2D *pip1diff = new TH2D("pip1diff","Difference between pip1",600,0.,6.,100,-1.,1.); TH2D *pip2diff = new TH2D("pip2diff","Difference between pip2",600,0.,6.,100,-1.,1); TH2D *pipdeltas = new TH2D("pipdeltas","Delta pip2 vs pip1",100,-1.,1.,100,-1.,1); TH1D *pip1delta = new TH1D("pip1delta","Recons-Gen pip1",100,-1.,1.); TH1D *pip2delta = new TH1D("pip2delta","Recons-Gen pip2",100,-1.,1.); TH2D *pim_p1 = new TH2D("pim_p1","Recons vs Gen pim1",600,0.,6.,600,0.,6.); TH2D *pim_p2 = new TH2D("pim_p2","Recons vs Gen pim2",600,0.,6.,600,0.,6.); TH2D *pim1diff = new TH2D("pim1diff","Difference between pim1",600,0.,6.,100,-1.,1.); TH2D *pim2diff = new TH2D("pim2diff","Difference between pim2",600,0.,6.,100,-1,1); TH2D *pimdeltas = new TH2D("pimdeltas","Delta pim2 vs pim1",100,-1.,1.,100,-1.,1); TH1D *pim1delta = new TH1D("pim1delta","Recons-Gen pim1",100,-1.,1.); TH1D *pim2delta = new TH1D("pim2delta","Recons-Gen pim2",100,-1.,1.); TH2D *p_p1 = new TH2D("p_p1","Recons vs Gen p1",600,0.,6.,600,0.,6.); TH2D *p1diff = new TH2D("p1diff","Difference between p1",600,0.,6.,100,-1.,1.); TH1D *p1delta = new TH1D("p1delta","Recons-Gen p1",100,-1.,1.); TH2D *pp1deltas = new TH2D("pp1deltas","Delta p vs pip1",100,-1.,1.,100,-1.,1); TH2D *pm1deltas = new TH2D("pm1deltas","Delta p vs pim1",100,-1.,1.,100,-1.,1); TH1D *ngammas = new TH1D("ngammas","Nphoton",20,0,20); TH1D *ngammas = new TH1D("ng_pip","Nphoton, npi+ >=1",20,0,20); TH1D *ngammas = new TH1D("ng_pim","Nphoton, npi- >=1",20,0,20); TH1D *ngammas = new TH1D("ng_p","Nphoton, np >=1",20,0,20); TH1D *ngammas = new TH1D("ng_pip_pim","Nphoton, npi+=1, npi-=1",20,0,20); TH2D *mpi0_ng= new TH2D("mpi0_ng","E#pi0 vs Nphoton",20,0,20,100,0,0.5); TH1D *egamma1 = new TH1D("egamma1","E#gamma 1",100,0,6); TH1D *egamma2 = new TH1D("egamma2","E#gamma 2",100,0,6); TH1D *epi0 = new TH1D("epi0","E#pi",100,0,6); TH2D *egamma12 = new TH2D("egamma12","E#gamma 2 vs 1",100,0,6,100,0,6); TH1D *omega_c1 = new TH1D("omega_c1","#omega combinations ",200,0.,2.); TH1D *omega_c2 = new TH1D("omega_c2","#omega combinations #Delta p cuts",200,0.,2.); TH1D *omega_c3 = new TH1D("omega_c3","#omega combinations #pi^{0} gen",200,0.,2.); TH1D *omega_c4 = new TH1D("omega_c4","#omega combinations #pi^{0} gen #Delta p cuts",200,0.,2.); in = fopen("omega_thrown.dat","r"); out = fopen("omega_output.dat","w+"); dump = fopen("omega_dump.dat","w+"); } void omega::SlaveBegin(TTree * /*tree*/) { // The SlaveBegin() function is called after the Begin() function. // When running with PROOF SlaveBegin() is called on each slave server. // The tree argument is deprecated (on PROOF 0 is passed). TString option = GetOption(); } Bool_t omega::Process(Long64_t entry) { // The Process() function is called for each entry in the tree (or possibly // keyed object in the case of PROOF) to be processed. The entry argument // specifies which entry in the currently loaded tree is to be processed. // It can be passed to either omega::GetEntry() or TBranch::GetEntry() // to read either all or the required parts of the data. When processing // keyed objects with PROOF, the object is already loaded and is available // via the fObject pointer. // // This function should contain the "body" of the analysis. It can contain // simple or elaborate selection criteria, run algorithms on the data // of the event and typically fill histograms. // // The processing can be stopped by calling Abort(). // // Use fStatus to set the return value of TTree::Process(). // // The return value is currently not used. char string[256]; char filename[132]; Int_t max_events=2000; //------------------------------------- // Read the event into memory GetEntry(entry); //------------------------------------- // For some reason, ROOT no longer makes the objects available as objects (???) // so we have to explicitly re-create out TLorentzVector objects // (Not sure why I'm forced to do this!!) if(Nphoton>kMaxphoton)Nphoton = kMaxphoton; if(Nproton>kMaxproton)Nproton = kMaxproton; if(Npip>kMaxpip)Npip = kMaxpip; if(Npim>kMaxpim)Npim = kMaxpim; TLorentzVector *photon = new TLorentzVector[Nphoton]; TLorentzVector *pip = new TLorentzVector[Npip]; TLorentzVector *pim = new TLorentzVector[Npim]; TLorentzVector *proton = new TLorentzVector[Nproton]; for(Int_t i=0; i=2 && Npip==1 && Npim==1 && event=2 && Npip==1 && Npim==1 && eventFill(Nphoton); if(Nphoton>0){ for(Int_t i=0; iFill(my_pi0.M()); mpi0_ng->Fill((Double_t) Nphoton,my_pi0.M()); if(fabs(my_pi0.M()-0.135) < fabs(pi0.M()-0.135))pi0 = my_pi0; } } } // Uncomment the following to force the pi0 to correct mass //pi0.SetE(sqrt(pow(pi0.P(),2) + pow(0.135,2))); // Find pi+pi+pi-pi-pi0 particles that give us the best X(2000) mass TLorentzVector X(0,0,0,0); Int_t ipip1=-1, ipip2=-1; Int_t ipim1=-1, ipim2=-1; // if(pi0.P()!=0.0 && Npip>0 && Npim>0){ if(pi0.P()!=0.0 && Npip>1 && Npim>1){ for(Int_t k=0; kFill(X.M()); // b1 // (find the pi- that did NOT come from the X decay directly) TLorentzVector b1; TLorentzVector b1_1 = X - pim[ipim1]; TLorentzVector b1_2 = X - pim[ipim2]; Int_t index_rho_pim; // which ever is not from the X must be from the rho if(fabs(b1_1.M()-1.235) < fabs(b1_2.M()-1.235)){ b1 = b1_1; // index_rho_pim = ipim1; index_rho_pim = ipim2; }else{ b1 = b1_2; // index_rho_pim = ipim2; index_rho_pim = ipim1; } mass_b1->Fill(b1.M()); // omega // (find the pi+ that did NOT come from the b1 decay directly) TLorentzVector omega; TLorentzVector omega_1 = b1 - pip[ipip1]; TLorentzVector omega_2 = b1 - pip[ipip2]; Int_t index_rho_pip; // which ever is not from the b1 must be from the rho if(fabs(omega_1.M()-0.783) < fabs(omega_2.M()-0.783)){ omega = omega_1; // index_rho_pip = ipip1; index_rho_pip = ipip2; }else{ omega = omega_2; // index_rho_pip = ipip2; index_rho_pip = ipip1; } mass_omega->Fill(omega.M()); // rho //TLorentzVector rho = pip[index_rho_pip] + pim[index_rho_pim]; TLorentzVector rho = omega - pi0; mass_rho->Fill(rho.M()); } // if(X.P()!=0.0) // histogram differences between particle momenta Int_t ok1=0; Int_t ok2=0; Int_t ok=1; if (Nphoton>=2 && Npip>=1 && Nproton==1 && eventFill(p1_pip,pip[0].P()); pip1diff->Fill(p1_pip,(p1_pip - pip[0].P())/p1_pip); pip1delta->Fill((p1_pip - pip[0].P())/p1_pip); ng_pip->Fill(Nphoton); if (ok1||ok && Nproton>=1) pp1deltas->Fill((p1_p - proton[0].P())/p1_p,(p1_pip - pip[0].P())/p1_pip); } if (Nphoton>=2 && Npim>=1 && Nproton==1 && eventFill(p1_pim,pim[0].P()); pim1diff->Fill(p1_pim,(p1_pim - pim[0].P())/p1_pim); pim1delta->Fill((p1_pim - pim[0].P())/p1_pim); ng_pim->Fill(Nphoton); if (ok2||ok && Nproton>=1) pm1deltas->Fill((p1_p - proton[0].P())/p1_p,(p1_pim - pim[0].P())/p1_pim); } // if (Nphoton>=2 && Npip==1 && Npim==1 && Nproton==1 && event=2 && Nproton>=1 && eventFill(p1_p,proton[0].P()); p1diff->Fill(p1_p,(p1_p - proton[0].P())/p1_p); p1delta->Fill((p1_p - proton[0].P())/p1_p); ng_p->Fill(Nphoton); } if (Nphoton==2) { egamma1->Fill(photon[0].P()); egamma2->Fill(photon[1].P()); egamma12->Fill(photon[0].P(),photon[1].P()); epi0->Fill(photon[0].P()+photon[1].P()); } if (Nphoton>=2 && Npip==1 && Npim==1 && event=1 && Npim>=1 && eventFill(Nphoton); // take all combinations of pi+ and pi- (take pi0 from David's closest combination) TLorentzVector omega_comb1(0,0,0,0); TLorentzVector omega_comb2(0,0,0,0); TLorentzVector omega_comb3(0,0,0,0); TLorentzVector omega_comb4(0,0,0,0); // only one combination omega_comb1 = pi0 + pip[0] + pim[0]; /*omega_comb2 = pi0 + pip[0] + pim[1]; omega_comb3 = pi0 + pip[1] + pim[0]; omega_comb4 = pi0 + pip[1] + pim[1];*/ omega_c1->Fill(omega_comb1.M()); /*omega_c1->Fill(omega_comb2.M()); omega_c1->Fill(omega_comb3.M()); omega_c1->Fill(omega_comb4.M());*/ // with cuts on momentum if (ok1 && ok2) omega_c2->Fill(omega_comb1.M()); /*if (ok1 && ok2) omega_c2->Fill(omega_comb2.M()); if (ok1 && ok2) omega_c2->Fill(omega_comb3.M()); if (ok1 && ok2) omega_c2->Fill(omega_comb4.M());*/ // take all combinations of pi+ and pi- (take pi0 from thrown) TLorentzVector pi0_thrown(px1_g+px2_g,py1_g+py2_g,pz1_g+pz2_g,E1_g+E2_g); pi0 = pi0_thrown; omega_comb3 = pi0 + pip[0] + pim[0]; /*omega_comb2 = pi0 + pip[0] + pim[1]; omega_comb3 = pi0 + pip[1] + pim[0]; omega_comb4 = pi0 + pip[1] + pim[1];*/ omega_c3->Fill(omega_comb3.M()); /*omega_c3->Fill(omega_comb2.M()); omega_c3->Fill(omega_comb3.M()); omega_c3->Fill(omega_comb4.M());*/ // add additional cuts to the reconstructed momenta if (ok1 && ok2) { omega_c4->Fill(omega_comb3.M()); } else { sum++; fprintf (dump," events fail ok1 && ok2, event=%d, sum=%d\n",event,sum); } /*if (ok1 && ok2) omega_c4->Fill(omega_comb2.M()); if (ok1 && ok2) omega_c4->Fill(omega_comb3.M()); if (ok1 && ok2) omega_c4->Fill(omega_comb4.M());*/ } // Delete our TLorentzVector objects if(Nphoton>0)delete[] photon; if(Npip>0)delete[] pip; if(Npim>0)delete[] pim; if(Nproton>0)delete[] proton; return kTRUE; } void omega::SlaveTerminate() { // The SlaveTerminate() function is called after all entries or objects // have been processed. When running with PROOF SlaveTerminate() is called // on each slave server. } void omega::Terminate() { // The Terminate() function is the last function to be called during // a query. It always runs on the client, it can be used to present // the results graphically or save the results to file. char string[256]; char filename[132]; Int_t j,jj; gStyle->SetPalette(1,0); // gStyle->SetOptStat(kFALSE); gStyle->SetOptStat(11111); // gStyle->SetOptFit(kFALSE); gStyle->SetOptFit(1111); gStyle->SetPadRightMargin(0.15); gStyle->SetPadLeftMargin(0.15); gStyle->SetPadBottomMargin(0.15); // gStyle->SetFillColor(0); // output histograms to canvas Float_t markersize=0.2; TCanvas *c0 = new TCanvas("c0","c0 omega",200,10,700,700); c0->SetBorderMode(0); c0->SetFillColor(0); c0->Divide(2,2); c0->cd(1); c0_1->SetGridx(); c0_1->SetGridy(); c0_1->SetLogz(); c0_1->SetBorderMode(0); c0_1->SetFillColor(0); mpi0_ng->SetTitle(""); // mpi0_ng->GetXaxis()->SetRangeUser(xmin,xmax); // mpi0_ng->GetYaxis()->SetRangeUser(ymin,ymax); mpi0_ng->GetXaxis()->SetTitleSize(0.05); mpi0_ng->GetYaxis()->SetTitleSize(0.05); mpi0_ng->GetYaxis()->SetTitleOffset(1.5); mpi0_ng->GetYaxis()->SetTitle("Mass #gamma pairs"); mpi0_ng->GetXaxis()->SetTitle("Nphoton"); mpi0_ng->GetXaxis()->SetNdivisions(5); mpi0_ng->SetMarkerSize(markersize); mpi0_ng->SetMarkerColor(1); mpi0_ng->SetMarkerStyle(21); mpi0_ng->Draw("colz"); c0->cd(2); c0_2->SetGridx(); c0_2->SetGridy(); c0_2->SetBorderMode(0); c0_2->SetFillColor(0); ng_pip_pim->Draw(); mass_b1->SetTitle(""); // mass_b1->GetXaxis()->SetRangeUser(xmin,xmax); // mass_b1->GetYaxis()->SetRangeUser(ymin,ymax); mass_b1->GetXaxis()->SetTitleSize(0.05); mass_b1->GetYaxis()->SetTitleSize(0.05); mass_b1->GetYaxis()->SetTitleOffset(1.5); mass_b1->GetXaxis()->SetTitle("Mass of b_{1}(GeV)"); // mass_b1->GetYaxis()->SetTitle("m_{KK}^{2}"); mass_b1->GetXaxis()->SetNdivisions(5); mass_b1->SetMarkerColor(1); mass_b1->SetMarkerStyle(21); // mass_b1->Draw(); c0->cd(3); c0_3->SetGridx(); c0_3->SetGridy(); c0_3->SetBorderMode(0); c0_3->SetFillColor(0); ngammas->SetTitle(""); // ngammas->GetXaxis()->SetRangeUser(xmin,xmax); // ngammas->GetYaxis()->SetRangeUser(ymin,ymax); ngammas->GetXaxis()->SetTitleSize(0.05); ngammas->GetYaxis()->SetTitleSize(0.05); ngammas->GetYaxis()->SetTitleOffset(1.5); ngammas->GetXaxis()->SetTitle("Nphotons"); // ngammas->GetYaxis()->SetTit(""); ngammas->GetXaxis()->SetNdivisions(5); ngammas->SetMarkerColor(1); ngammas->SetMarkerStyle(21); ngammas->Draw(); c0->cd(4); c0_4->SetGridx(); c0_4->SetGridy(); c0_4->SetBorderMode(0); c0_4->SetFillColor(0); mass_pi0->SetTitle(""); // mass_pi0->GetXaxis()->SetRangeUser(xmin,xmax); // mass_pi0->GetYaxis()->SetRangeUser(ymin,ymax); mass_pi0->GetXaxis()->SetTitleSize(0.05); mass_pi0->GetYaxis()->SetTitleSize(0.05); mass_pi0->GetYaxis()->SetTitleOffset(1.5); mass_pi0->GetXaxis()->SetTitle("Mass of #pi^{0}(GeV)"); // mass_pi0->GetYaxis()->SetTitle("m_{KK}^{2}"); mass_pi0->GetXaxis()->SetNdivisions(5); mass_pi0->SetMarkerColor(1); mass_pi0->SetMarkerStyle(21); TF1 *gpol = new TF1("gpol","gaus(0)+pol2(3)",-1,1); gpol->SetParameters(30,0.14,0.02,0,0,0); mass_pi0->Fit("gpol","","",0.05,0.2); mass_pi0->Draw(); Double_t amp=gpol->GetParameter(0); Double_t sigma=gpol->GetParameter(2); Double_t Nomegas=amp*sqrt(2*3.14159)*sigma/mass_pi0->GetBinWidth(1); sprintf (string,"No #pi^{0}=%.1f\n",Nomegas); printf ("string = %s",string); t1 = new TLatex(0.2,0.96,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); sprintf (string,"(All #gamma pairs)\n",cut); t1 = new TLatex(0.2,0.91,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); TCanvas *c2 = new TCanvas("c2","c2 omega",200,10,700,700); c2->SetBorderMode(0); c2->SetFillColor(0); c2->Divide(2,2); c2->cd(1); c2_1->SetGridx(); c2_1->SetGridy(); c2_1->SetBorderMode(0); c2_1->SetFillColor(0); pip_p1->SetTitle(""); // pip_p1->GetXaxis()->SetRangeUser(xmin,xmax); // pip_p1->GetYaxis()->SetRangeUser(ymin,ymax); pip_p1->GetXaxis()->SetTitleSize(0.05); pip_p1->GetYaxis()->SetTitleSize(0.05); pip_p1->GetYaxis()->SetTitleOffset(1.5); pip_p1->GetXaxis()->SetTitle("Gen #pi^{+} p1 (GeV)"); pip_p1->GetYaxis()->SetTitle("Recons #pi^{+} p1 (GeV)"); pip_p1->GetXaxis()->SetNdivisions(5); pip_p1->GetYaxis()->SetNdivisions(5); pip_p1->SetMarkerColor(1); pip_p1->SetMarkerStyle(21); pip_p1->SetMarkerSize(markersize); pip_p1->Draw(); c2->cd(2); c2_2->SetGridx(); c2_2->SetGridy(); c2_2->SetBorderMode(0); c2_2->SetFillColor(0); pip1diff->SetTitle(""); // pip1diff->GetXaxis()->SetRangeUser(xmin,xmax); // pip1diff->GetYaxis()->SetRangeUser(ymin,ymax); pip1diff->GetXaxis()->SetTitleSize(0.05); pip1diff->GetYaxis()->SetTitleSize(0.05); pip1diff->GetYaxis()->SetTitleOffset(1.5); pip1diff->GetXaxis()->SetTitle("Gen #pi^{+} p1 (GeV)"); pip1diff->GetYaxis()->SetTitle("#Delta/p1"); pip1diff->GetXaxis()->SetNdivisions(5); pip1diff->GetYaxis()->SetNdivisions(5); pip1diff->SetMarkerColor(1); pip1diff->SetMarkerStyle(21); pip1diff->SetMarkerSize(markersize); pip1diff->Draw(); c2->cd(3); c2_3->SetGridx(); c2_3->SetGridy(); c2_3->SetBorderMode(0); c2_3->SetFillColor(0); pip1delta->SetTitle(""); // pip1delta->GetXaxis()->SetRangeUser(xmin,xmax); // pip1delta->GetYaxis()->SetRangeUser(ymin,ymax); pip1delta->GetXaxis()->SetTitleSize(0.05); pip1delta->GetYaxis()->SetTitleSize(0.05); pip1delta->GetYaxis()->SetTitleOffset(1.5); // pip1delta->GetXaxis()->SetTitle("Gen #pi^{+} p1 (GeV)"); pip1delta->GetXaxis()->SetTitle("#Delta/p1"); pip1delta->GetXaxis()->SetNdivisions(5); pip1delta->GetYaxis()->SetNdivisions(5); pip1delta->SetMarkerColor(1); pip1delta->SetMarkerStyle(21); pip1delta->SetMarkerSize(markersize); gpol->SetParameters(60,0,0.05,0,0,0); pip1delta->Fit("gpol"); pip1delta->Draw(); Double_t amp=gpol->GetParameter(0); Double_t sigma=gpol->GetParameter(2); Double_t Nfitpip=amp*sqrt(2*3.14159)*sigma/pip1delta->GetBinWidth(1); sprintf (string,"No #pi^{+}=%.1f\n",Nfitpip); printf ("string = %s",string); t1 = new TLatex(0.2,0.96,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); c2->cd(4); c2_4->SetGridx(); c2_4->SetGridy(); c2_4->SetBorderMode(0); c2_4->SetFillColor(0); pp1deltas->SetTitle(""); // pp1deltas->GetXaxis()->SetRangeUser(xmin,xmax); // pp1deltas->GetYaxis()->SetRangeUser(ymin,ymax); pp1deltas->GetXaxis()->SetTitleSize(0.05); pp1deltas->GetYaxis()->SetTitleSize(0.05); pp1deltas->GetYaxis()->SetTitleOffset(1.5); pp1deltas->GetXaxis()->SetTitle("#Delta/p"); pp1deltas->GetYaxis()->SetTitle("#Delta/p1"); pp1deltas->GetXaxis()->SetNdivisions(5); pp1deltas->GetYaxis()->SetNdivisions(5); pp1deltas->SetMarkerColor(1); pp1deltas->SetMarkerStyle(21); pp1deltas->SetMarkerSize(markersize); pp1deltas->Draw(); TCanvas *c4 = new TCanvas("c4","c4 omega",200,10,700,700); c4->SetBorderMode(0); c4->SetFillColor(0); c4->Divide(2,2); c4->cd(1); c4_1->SetGridx(); c4_1->SetGridy(); c4_1->SetBorderMode(0); c4_1->SetFillColor(0); pim_p1->SetTitle(""); // pim_p1->GetXaxis()->SetRangeUser(xmin,xmax); // pim_p1->GetYaxis()->SetRangeUser(ymin,ymax); pim_p1->GetXaxis()->SetTitleSize(0.05); pim_p1->GetYaxis()->SetTitleSize(0.05); pim_p1->GetYaxis()->SetTitleOffset(1.5); pim_p1->GetXaxis()->SetTitle("Gen #pi^{-} p1 (GeV)"); pim_p1->GetYaxis()->SetTitle("Recons #pi^{-} p1 (GeV)"); pim_p1->GetXaxis()->SetNdivisions(5); pim_p1->GetYaxis()->SetNdivisions(5); pim_p1->SetMarkerColor(1); pim_p1->SetMarkerStyle(21); pim_p1->SetMarkerSize(markersize); pim_p1->Draw(); c4->cd(2); c4_2->SetGridx(); c4_2->SetGridy(); c4_2->SetBorderMode(0); c4_2->SetFillColor(0); pim1diff->SetTitle(""); // pim1diff->GetXaxis()->SetRangeUser(xmin,xmax); // pim1diff->GetYaxis()->SetRangeUser(ymin,ymax); pim1diff->GetXaxis()->SetTitleSize(0.05); pim1diff->GetYaxis()->SetTitleSize(0.05); pim1diff->GetYaxis()->SetTitleOffset(1.5); pim1diff->GetXaxis()->SetTitle("Gen #pi^{-} p1 (GeV)"); pim1diff->GetYaxis()->SetTitle("#Delta/p1"); pim1diff->GetXaxis()->SetNdivisions(5); pim1diff->GetYaxis()->SetNdivisions(5); pim1diff->SetMarkerColor(1); pim1diff->SetMarkerStyle(21); pim1diff->SetMarkerSize(markersize); pim1diff->Draw(); c4->cd(3); c4_3->SetGridx(); c4_3->SetGridy(); c4_3->SetBorderMode(0); c4_3->SetFillColor(0); pim1delta->SetTitle(""); // pim1delta->GetXaxis()->SetRangeUser(xmin,xmax); // pim1delta->GetYaxis()->SetRangeUser(ymin,ymax); pim1delta->GetXaxis()->SetTitleSize(0.05); pim1delta->GetYaxis()->SetTitleSize(0.05); pim1delta->GetYaxis()->SetTitleOffset(1.5); // pim1delta->GetXaxis()->SetTitle("Gen #pi^{-} p1 (GeV)"); pim1delta->GetXaxis()->SetTitle("#Delta/p1"); pim1delta->GetXaxis()->SetNdivisions(5); pim1delta->GetYaxis()->SetNdivisions(5); pim1delta->SetMarkerColor(1); pim1delta->SetMarkerStyle(21); pim1delta->SetMarkerSize(markersize); gpol->SetParameters(20,0,0.03,0,0,0); pim1delta->Fit("gpol"); pim1delta->Draw(); Double_t amp=gpol->GetParameter(0); Double_t sigma=gpol->GetParameter(2); Double_t Nfitpim=amp*sqrt(2*3.14159)*sigma/pim1delta->GetBinWidth(1); sprintf (string,"No #pi^{-}=%.1f\n",Nfitpim); printf ("string = %s",string); t1 = new TLatex(0.2,0.96,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); c4->cd(4); c4_4->SetGridx(); c4_4->SetGridy(); c4_4->SetBorderMode(0); c4_4->SetFillColor(0); pm1deltas->SetTitle(""); // pm1deltas->GetXaxis()->SetRangeUser(xmin,xmax); // pm1deltas->GetYaxis()->SetRangeUser(ymin,ymax); pm1deltas->GetXaxis()->SetTitleSize(0.05); pm1deltas->GetYaxis()->SetTitleSize(0.05); pm1deltas->GetYaxis()->SetTitleOffset(1.5); pm1deltas->GetXaxis()->SetTitle("#Delta/p"); pm1deltas->GetYaxis()->SetTitle("#Delta/p1"); pm1deltas->GetXaxis()->SetNdivisions(5); pm1deltas->GetYaxis()->SetNdivisions(5); pm1deltas->SetMarkerColor(1); pm1deltas->SetMarkerStyle(21); pm1deltas->SetMarkerSize(markersize); pm1deltas->Draw(); TCanvas *c6 = new TCanvas("c6","c6 omega",200,10,700,700); c6->SetBorderMode(0); c6->SetFillColor(0); c6->Divide(2,2); c6->cd(1); c6_1->SetGridx(); c6_1->SetGridy(); c6_1->SetBorderMode(0); c6_1->SetFillColor(0); p_p1->SetTitle(""); // p_p1->GetXaxis()->SetRangeUser(xmin,xmax); // p_p1->GetYaxis()->SetRangeUser(ymin,ymax); p_p1->GetXaxis()->SetTitleSize(0.05); p_p1->GetYaxis()->SetTitleSize(0.05); p_p1->GetYaxis()->SetTitleOffset(1.5); p_p1->GetXaxis()->SetTitle("Gen p p1 (GeV)"); p_p1->GetYaxis()->SetTitle("Recons p p1 (GeV)"); p_p1->GetXaxis()->SetNdivisions(5); p_p1->GetYaxis()->SetNdivisions(5); p_p1->SetMarkerColor(1); p_p1->SetMarkerStyle(21); p_p1->SetMarkerSize(markersize); p_p1->Draw(); c6->cd(2); c6_2->SetGridx(); c6_2->SetGridy(); c6_2->SetBorderMode(0); c6_2->SetFillColor(0); p1diff->SetTitle(""); // p1diff->GetXaxis()->SetRangeUser(xmin,xmax); // p1diff->GetYaxis()->SetRangeUser(ymin,ymax); p1diff->GetXaxis()->SetTitleSize(0.05); p1diff->GetYaxis()->SetTitleSize(0.05); p1diff->GetYaxis()->SetTitleOffset(1.5); p1diff->GetXaxis()->SetTitle("Gen p p1 (GeV)"); p1diff->GetYaxis()->SetTitle("#Delta/p1"); p1diff->GetXaxis()->SetNdivisions(5); p1diff->GetYaxis()->SetNdivisions(5); p1diff->SetMarkerColor(1); p1diff->SetMarkerStyle(21); p1diff->SetMarkerSize(markersize); p1diff->Draw(); c6->cd(3); c6_3->SetGridx(); c6_3->SetGridy(); c6_3->SetBorderMode(0); c6_3->SetFillColor(0); p1delta->SetTitle(""); // p1delta->GetXaxis()->SetRangeUser(xmin,xmax); // p1delta->GetYaxis()->SetRangeUser(ymin,ymax); p1delta->GetXaxis()->SetTitleSize(0.05); p1delta->GetYaxis()->SetTitleSize(0.05); p1delta->GetYaxis()->SetTitleOffset(1.5); // p1delta->GetXaxis()->SetTitle("Gen p p1 (GeV)"); p1delta->GetXaxis()->SetTitle("#Delta/p1"); p1delta->GetXaxis()->SetNdivisions(5); p1delta->GetYaxis()->SetNdivisions(5); p1delta->SetMarkerColor(1); p1delta->SetMarkerStyle(21); p1delta->SetMarkerSize(markersize); // TF1 *gpol1 = new TF1("gpol1","gaus(0)+pol0(3)",-1,1); gpol->SetParameters(5,0,0.05,0); p1delta->Fit("gpol"); p1delta->Draw(); Double_t amp=gpol->GetParameter(0); Double_t sigma=gpol->GetParameter(2); Double_t Nfitp=amp*sqrt(2*3.14159)*sigma/p1delta->GetBinWidth(1); sprintf (string,"No p=%.1f\n",Nfitp); printf ("string = %s",string); t1 = new TLatex(0.2,0.96,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); TCanvas *c7 = new TCanvas("c7","c7 omega",200,10,700,700); c7->SetBorderMode(0); c7->SetFillColor(0); c7->Divide(2,2); c7->cd(1); c7_1->SetGridx(); c7_1->SetGridy(); c7_1->SetBorderMode(0); c7_1->SetFillColor(0); omega_c1->SetTitle(""); // omega_c1->GetXaxis()->SetRangeUser(xmin,xmax); // omega_c1->GetYaxis()->SetRangeUser(ymin,ymax); omega_c1->GetXaxis()->SetTitleSize(0.05); omega_c1->GetYaxis()->SetTitleSize(0.05); omega_c1->GetYaxis()->SetTitleOffset(1.5); omega_c1->GetXaxis()->SetTitle("#omega 1combs"); // omega_c1->GetYaxis()->SetTitle("#Delta/p1"); omega_c1->GetXaxis()->SetNdivisions(5); omega_c1->GetYaxis()->SetNdivisions(5); omega_c1->SetMarkerColor(1); omega_c1->SetMarkerStyle(21); omega_c1->SetMarkerSize(markersize); gpol->SetParameters(20,0.785,0.03,5,0,0); omega_c1->Fit("gpol","","",0.5,2); omega_c1->Draw(); Double_t amp=gpol->GetParameter(0); Double_t sigma=gpol->GetParameter(2); Double_t Nomegas=amp*sqrt(2*3.14159)*sigma/omega_c1->GetBinWidth(1); sprintf (string,"No #omegas=%.1f\n",Nomegas); printf ("string = %s",string); t1 = new TLatex(0.2,0.96,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); sprintf (string,"(Measured #gammas)\n",cut); t1 = new TLatex(0.2,0.91,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); c7->cd(2); c7_2->SetGridx(); c7_2->SetGridy(); c7_2->SetBorderMode(0); c7_2->SetFillColor(0); omega_c2->SetTitle(""); // omega_c2->GetXaxis()->SetRangeUser(xmin,xmax); // omega_c2->GetYaxis()->SetRangeUser(ymin,ymax); omega_c2->GetXaxis()->SetTitleSize(0.05); omega_c2->GetYaxis()->SetTitleSize(0.05); omega_c2->GetYaxis()->SetTitleOffset(1.5); omega_c2->GetXaxis()->SetTitle("#omega 1combs, #Delta p cuts"); // omega_c2->GetYaxis()->SetTitle("#Delta/p1"); omega_c2->GetXaxis()->SetNdivisions(5); omega_c2->GetYaxis()->SetNdivisions(5); omega_c2->SetMarkerColor(1); omega_c2->SetMarkerStyle(21); omega_c2->SetMarkerSize(markersize); gpol->SetParameters(5,0.785,0.03,0,0,0); omega_c2->Fit("gpol","","",0.5,2); omega_c2->Draw(); Double_t amp=gpol->GetParameter(0); Double_t sigma=gpol->GetParameter(2); Double_t Nomegas=amp*sqrt(2*3.14159)*sigma/omega_c2->GetBinWidth(1); sprintf (string,"No #omegas=%.1f\n",Nomegas); printf ("string = %s",string); t1 = new TLatex(0.2,0.96,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); sprintf (string,"(#Delta p/p cut<%.1f)\n",cut); t1 = new TLatex(0.2,0.91,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); c7->cd(3); c7_3->SetGridx(); c7_3->SetGridy(); c7_3->SetBorderMode(0); c7_3->SetFillColor(0); omega_c3->SetTitle(""); // omega_c3->GetXaxis()->SetRangeUser(xmin,xmax); // omega_c3->GetYaxis()->SetRangeUser(ymin,ymax); omega_c3->GetXaxis()->SetTitleSize(0.05); omega_c3->GetYaxis()->SetTitleSize(0.05); omega_c3->GetYaxis()->SetTitleOffset(1.5); omega_c3->GetXaxis()->SetTitle("#omega 1combs, #pi^{0} gen"); // omega_c3->GetYaxis()->SetTitle("#Delta/p1"); omega_c3->GetXaxis()->SetNdivisions(5); omega_c3->GetYaxis()->SetNdivisions(5); omega_c3->SetMarkerColor(1); omega_c3->SetMarkerStyle(21); omega_c3->SetMarkerSize(markersize); gpol->SetParameters(20,0.785,0.03,5,0,0); omega_c3->Fit("gpol","","",0.5,1.5); omega_c3->Draw(); Double_t amp=gpol->GetParameter(0); Double_t sigma=gpol->GetParameter(2); Double_t Nomegas=amp*sqrt(2*3.14159)*sigma/omega_c3->GetBinWidth(1); sprintf (string,"amp=%f, sigma=%f, Nomega=%f\n",amp,sigma,Nomegas); sprintf (string,"No #omega=%.1f\n",Nomegas); printf ("string = %s",string); t1 = new TLatex(0.2,0.956,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); sprintf (string,"(Fraction=%.2f)\n",Nomegas/naccepted); t1 = new TLatex(0.2,0.91,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); c7->cd(4); c7_4->SetGridx(); c7_4->SetGridy(); c7_4->SetBorderMode(0); c7_4->SetFillColor(0); omega_c4->SetTitle(""); // omega_c4->GetXaxis()->SetRangeUser(xmin,xmax); // omega_c4->GetYaxis()->SetRangeUser(ymin,ymax); omega_c4->GetXaxis()->SetTitleSize(0.05); omega_c4->GetYaxis()->SetTitleSize(0.05); omega_c4->GetYaxis()->SetTitleOffset(1.5); omega_c4->GetXaxis()->SetTitle("#omega 1combs, #pi^{0} gen, #Delta p cuts"); // omega_c4->GetYaxis()->SetTitle("#Delta/p1"); omega_c4->GetXaxis()->SetNdivisions(5); omega_c4->GetYaxis()->SetNdivisions(5); omega_c4->SetMarkerColor(1); omega_c4->SetMarkerStyle(21); omega_c4->SetMarkerSize(markersize); gpol->SetParameters(5,0.75,0.03,0,0,0); omega_c4->Fit("gpol","","",0.5,1.5); omega_c4->Draw(); Double_t amp=gpol->GetParameter(0); Double_t sigma=gpol->GetParameter(2); Double_t Nomegas=amp*sqrt(2*3.14159)*sigma/omega_c4->GetBinWidth(1); sprintf (string,"No #omegas=%.1f\n",Nomegas); printf ("string = %s",string); t1 = new TLatex(0.2,0.96,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); sprintf (string,"(Gen #pi^{0}, #Delta p/p cut<%.1f)\n",cut); t1 = new TLatex(0.2,0.91,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); TCanvas *c8 = new TCanvas("c8","c8 omega",200,10,700,700); c8->SetBorderMode(0); c8->SetFillColor(0); c8->Divide(2,2); c8->cd(1); c8_1->SetGridx(); c8_1->SetGridy(); c8_1->SetBorderMode(0); c8_1->SetFillColor(0); egamma1->SetTitle(""); // egamma1->GetXaxis()->SetRangeUser(xmin,xmax); // egamma1->GetYaxis()->SetRangeUser(ymin,ymax); egamma1->GetXaxis()->SetTitleSize(0.05); egamma1->GetYaxis()->SetTitleSize(0.05); egamma1->GetYaxis()->SetTitleOffset(1.5); egamma1->GetXaxis()->SetTitle("E_{#gamma1} (GeV), n=2"); // egamma1->GetYaxis()->SetTitle(""); egamma1->GetXaxis()->SetNdivisions(5); egamma1->GetYaxis()->SetNdivisions(5); egamma1->SetMarkerColor(1); egamma1->SetMarkerStyle(21); egamma1->SetMarkerSize(markersize); gpol->SetParameters(20,0.785,0.03,5,0,0); //egamma1->Fit("gpol","","",0.5,2); egamma1->Draw(); /*Double_t amp=gpol->GetParameter(0); Double_t sigma=gpol->GetParameter(2); Double_t Nomegas=amp*sqrt(2*3.14159)*sigma/egamma1->GetBinWidth(1); sprintf (string,"No #omegas=%.1f\n",Nomegas); printf ("string = %s",string); t1 = new TLatex(0.2,0.96,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); sprintf (string,"(Measured #gammas)\n",cut); t1 = new TLatex(0.2,0.91,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw();*/ c8->cd(2); c8_2->SetGridx(); c8_2->SetGridy(); c8_2->SetBorderMode(0); c8_2->SetFillColor(0); egamma2->SetTitle(""); // egamma2->GetXaxis()->SetRangeUser(xmin,xmax); // egamma2->GetYaxis()->SetRangeUser(ymin,ymax); egamma2->GetXaxis()->SetTitleSize(0.05); egamma2->GetYaxis()->SetTitleSize(0.05); egamma2->GetYaxis()->SetTitleOffset(1.5); egamma2->GetXaxis()->SetTitle("E_{#gamma2} (GeV), n=2"); // egamma2->GetYaxis()->SetTitle(""); egamma2->GetXaxis()->SetNdivisions(5); egamma2->GetYaxis()->SetNdivisions(5); egamma2->SetMarkerColor(1); egamma2->SetMarkerStyle(21); egamma2->SetMarkerSize(markersize); gpol->SetParameters(20,0.785,0.03,5,0,0); //egamma2->Fit("gpol","","",0.5,2); egamma2->Draw(); /*Double_t amp=gpol->GetParameter(0); Double_t sigma=gpol->GetParameter(2); Double_t Nomegas=amp*sqrt(2*3.14159)*sigma/egamma2->GetBinWidth(1); sprintf (string,"No #omegas=%.1f\n",Nomegas); printf ("string = %s",string); t1 = new TLatex(0.2,0.96,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); sprintf (string,"(Measured #gammas)\n",cut); t1 = new TLatex(0.2,0.91,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw();*/ c8->cd(3); c8_3->SetGridx(); c8_3->SetGridy(); c8_3->SetBorderMode(0); c8_3->SetFillColor(0); epi0->SetTitle(""); // epi0->GetXaxis()->SetRangeUser(xmin,xmax); // epi0->GetYaxis()->SetRangeUser(ymin,ymax); epi0->GetXaxis()->SetTitleSize(0.05); epi0->GetYaxis()->SetTitleSize(0.05); epi0->GetYaxis()->SetTitleOffset(1.5); epi0->GetXaxis()->SetTitle("E_{#pi0} (GeV), n=2"); // epi0->GetYaxis()->SetTitle(""); epi0->GetXaxis()->SetNdivisions(5); epi0->GetYaxis()->SetNdivisions(5); epi0->SetMarkerColor(1); epi0->SetMarkerStyle(21); epi0->SetMarkerSize(markersize); gpol->SetParameters(20,0.785,0.03,5,0,0); //epi0->Fit("gpol","","",0.5,2); epi0->Draw(); /*Double_t amp=gpol->GetParameter(0); Double_t sigma=gpol->GetParameter(2); Double_t Nomegas=amp*sqrt(2*3.14159)*sigma/epi0->GetBinWidth(1); sprintf (string,"No #omegas=%.1f\n",Nomegas); printf ("string = %s",string); t1 = new TLatex(0.2,0.96,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); sprintf (string,"(Measured #gammas)\n",cut); t1 = new TLatex(0.2,0.91,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw();*/ c8->cd(4); c8_4->SetGridx(); c8_4->SetGridy(); c8_4->SetBorderMode(0); c8_4->SetFillColor(0); egamma12->SetTitle(""); // egamma12->GetXaxis()->SetRangeUser(xmin,xmax); // egamma12->GetYaxis()->SetRangeUser(ymin,ymax); egamma12->GetXaxis()->SetTitleSize(0.05); egamma12->GetYaxis()->SetTitleSize(0.05); egamma12->GetYaxis()->SetTitleOffset(1.5); egamma12->GetXaxis()->SetTitle("E_{#gamma1} (GeV), n=2"); egamma12->GetYaxis()->SetTitle("E_{#gamma2} (GeV), n=2"); egamma12->GetXaxis()->SetNdivisions(5); egamma12->GetYaxis()->SetNdivisions(5); egamma12->SetMarkerColor(1); egamma12->SetMarkerStyle(21); egamma12->SetMarkerSize(markersize); egamma12->Draw(); TCanvas *c9 = new TCanvas("c9","c9 omega",200,10,700,700); c9->SetBorderMode(0); c9->SetFillColor(0); c9->Divide(2,2); c9->cd(1); c9_1->SetGridx(); c9_1->SetGridy(); c9_1->SetBorderMode(0); c9_1->SetFillColor(0); ng_pip_pim->SetTitle(""); // ng_pip_pim->GetXaxis()->SetRangeUser(xmin,xmax); // ng_pip_pim->GetYaxis()->SetRangeUser(ymin,ymax); ng_pip_pim->GetXaxis()->SetTitleSize(0.05); ng_pip_pim->GetYaxis()->SetTitleSize(0.05); ng_pip_pim->GetYaxis()->SetTitleOffset(1.5); ng_pip_pim->GetXaxis()->SetTitle("Nphotons, N#pi^{+}=1, N#pi^{-}=1"); // ng_pip_pim->GetYaxis()->SetTit(""); ng_pip_pim->GetXaxis()->SetNdivisions(5); ng_pip_pim->SetMarkerColor(1); ng_pip_pim->SetMarkerStyle(21); ng_pip_pim->Draw(); c9->cd(2); c9_2->SetGridx(); c9_2->SetGridy(); c9_2->SetBorderMode(0); c9_2->SetFillColor(0); ng_pip->SetTitle(""); // ng_pip->GetXaxis()->SetRangeUser(xmin,xmax); // ng_pip->GetYaxis()->SetRangeUser(ymin,ymax); ng_pip->GetXaxis()->SetTitleSize(0.05); ng_pip->GetYaxis()->SetTitleSize(0.05); ng_pip->GetYaxis()->SetTitleOffset(1.5); ng_pip->GetXaxis()->SetTitle("Nphotons, N#pi^{+} >=1, Np=1"); // ng_pip->GetYaxis()->SetTit(""); ng_pip->GetXaxis()->SetNdivisions(5); ng_pip->SetMarkerColor(1); ng_pip->SetMarkerStyle(21); ng_pip->Draw(); c9->cd(3); c9_3->SetGridx(); c9_3->SetGridy(); c9_3->SetBorderMode(0); c9_3->SetFillColor(0); ng_pim->SetTitle(""); // ng_pim->GetXaxis()->SetRangeUser(xmin,xmax); // ng_pim->GetYaxis()->SetRangeUser(ymin,ymax); ng_pim->GetXaxis()->SetTitleSize(0.05); ng_pim->GetYaxis()->SetTitleSize(0.05); ng_pim->GetYaxis()->SetTitleOffset(1.5); ng_pim->GetXaxis()->SetTitle("Nphotons, N#pi^{- }>=1, Np=1"); // ng_pim->GetYaxis()->SetTit(""); ng_pim->GetXaxis()->SetNdivisions(5); ng_pim->SetMarkerColor(1); ng_pim->SetMarkerStyle(21); ng_pim->Draw(); c9->cd(4); c9_4->SetGridx(); c9_4->SetGridy(); c9_4->SetBorderMode(0); c9_4->SetFillColor(0); ng_p->SetTitle(""); // ng_p->GetXaxis()->SetRangeUser(xmin,xmax); // ng_p->GetYaxis()->SetRangeUser(ymin,ymax); ng_p->GetXaxis()->SetTitleSize(0.05); ng_p->GetYaxis()->SetTitleSize(0.05); ng_p->GetYaxis()->SetTitleOffset(1.5); ng_p->GetXaxis()->SetTitle("Nphotons, Np >=1"); // ng_p->GetYaxis()->SetTit(""); ng_p->GetXaxis()->SetNdivisions(5); ng_p->SetMarkerColor(1); ng_p->SetMarkerStyle(21); ng_p->Draw(); TCanvas *c10 = new TCanvas("c10","c10 omega",200,10,700,700); c10->SetBorderMode(0); c10->SetFillColor(0); c10->Divide(2,2); c10->cd(1); c10_1->SetGridx(); c10_1->SetGridy(); c10_1->SetBorderMode(0); c10_1->SetFillColor(0); pip1delta->Draw(); sprintf (string,"No #pi^{+}=%.1f\n",Nfitpip); printf ("string = %s",string); t1 = new TLatex(0.2,0.96,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); c10->cd(2); c10_2->SetGridx(); c10_2->SetGridy(); c10_2->SetBorderMode(0); c10_2->SetFillColor(0); pim1delta->Draw(); sprintf (string,"No #pi^{-}=%.1f\n",Nfitpim); printf ("string = %s",string); t1 = new TLatex(0.2,0.96,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); c10->cd(3); c10_3->SetGridx(); c10_3->SetGridy(); c10_3->SetBorderMode(0); c10_3->SetFillColor(0); p1delta->Draw(); sprintf (string,"No p=%.1f\n",Nfitp); printf ("string = %s",string); t1 = new TLatex(0.2,0.96,string); t1->SetTextColor(1); t1->SetNDC(); t1->Draw(); c10->cd(4); c10_4->SetGridx(); c10_4->SetGridy(); c10_4->SetBorderMode(0); c10_4->SetFillColor(0); p1diff->Draw(); sprintf(filename,"omega_c0.pdf"); c0->SaveAs(filename); sprintf(filename,"omega_c0.png"); c0->SaveAs(filename); sprintf(filename,"omega_c2.pdf"); c2->SaveAs(filename); sprintf(filename,"omega_c2.png"); c2->SaveAs(filename); sprintf(filename,"omega_c4.pdf"); c4->SaveAs(filename); sprintf(filename,"omega_c4.png"); c4->SaveAs(filename); sprintf(filename,"omega_c6.pdf"); c6->SaveAs(filename); sprintf(filename,"omega_c6.png"); c6->SaveAs(filename); sprintf(filename,"omega_c7.pdf"); c7->SaveAs(filename); sprintf(filename,"omega_c7.png"); c7->SaveAs(filename); sprintf(filename,"omega_c8.pdf"); c8->SaveAs(filename); sprintf(filename,"omega_c8.png"); c8->SaveAs(filename); sprintf(filename,"omega_c9.pdf"); c9->SaveAs(filename); sprintf(filename,"omega_c9.png"); c9->SaveAs(filename); sprintf(filename,"omega_c10.pdf"); c10->SaveAs(filename); sprintf(filename,"omega_c10.png"); c10->SaveAs(filename); sprintf(filename,"omega_c0.eps"); c0->SaveAs(filename); sprintf(filename,"omega_c7.eps"); c7->SaveAs(filename); sprintf(filename,"omega_c10.eps"); c10->SaveAs(filename); printf ("Number of accepted events =%d\n",naccepted); fclose(in); fclose(out); fclose(dump); } void Print4Vector(TLorentzVector *p,char string[256]) { TLorentzVector *p; char string[256]; // print vector printf("%s: E=%f, px=%f, py=%f, pz=%f, mass=%f\n",string,p->E(),p->Px(),p->Py(),p->Pz(),p->Mag()); // return 0; }