4 #include "TMultiGraph.h"
5 #include "TGraphErrors.h"
14 TString excludes[10]={
"rho(1570)",
"f(1)(1510)",
"eta(1475)",
"f(2)(1430)",
"f(1)(1420)",
"eta(1405)",
"phi(1020)",
"f(0)(1500)",
"f(2)'(1525)"};
17 for(
unsigned int i=0;
i<9;++
i){
18 if(entry->
name().Contains(excludes[
i])){
20 cout <<
"Excluding " << entry->
name() << endl;
31 TFile* infile=TFile::Open(file,
"READ");
33 TTree* tree=(TTree*)infile->Get(
"pdg");
38 tree->SetBranchAddress(
"TPDGEntry",&entry);
41 TH1D* hm=
new TH1D(
"hm",
"mass",100,0,6);
50 unsigned int nentries=tree->GetEntries();
51 for(
unsigned int i=0;
i<nentries;++
i){
53 if(
cut(entry))
continue;
54 hm->Fill(entry->
mass()/1000);
57 if(entry->
P()==1)++nI0Pp;
58 else if(entry->
P()==-1)++nI0Pm;
61 else if(entry->
I()==1){
62 if(entry->
P()==1)++nI1Pp;
63 else if(entry->
P()==-1)++nI1Pm;
70 TGraphErrors* gRegge=
new TGraphErrors(n);
71 TGraphErrors* gReggeI0Pp=
new TGraphErrors(nI0Pp);
72 TGraphErrors* gReggeI0Pm=
new TGraphErrors(nI0Pm);
73 TGraphErrors* gReggeI1Pp=
new TGraphErrors(nI1Pp);
74 TGraphErrors* gReggeI1Pm=
new TGraphErrors(nI1Pm);
75 TMultiGraph* mg=
new TMultiGraph();
80 TLegend* leg=
new TLegend(0.58,0.15,0.88,0.4);
82 leg->AddEntry(gReggeI0Pp,
"I=0, P=+",
"P");
83 leg->AddEntry(gReggeI0Pm,
"I=0, P=-",
"P");
84 leg->AddEntry(gReggeI1Pp,
"I=1, P=+",
"P");
85 leg->AddEntry(gReggeI1Pm,
"I=1, P=-",
"P");
89 unsigned int counter=0;
96 for(
unsigned int i=0;
i<nentries;++
i){
98 if(
cut(entry))
continue;
100 gRegge->SetPoint(counter,entry->
J(),entry->
mass()*entry->
mass()*1E-6);
101 gRegge->SetPointError(counter,0,2.*entry->
mass()*1E-6*entry->
mass_er());
107 gReggeI0Pp->SetPoint(cI0Pp,entry->
J()-0.15,entry->
mass()*entry->
mass()*1E-6);
108 gReggeI0Pp->SetPointError(cI0Pp,0,2.*entry->
mass()*1E-6*entry->
mass_er());
111 else if(entry->
P()==-1){
112 gReggeI0Pm->SetPoint(cI0Pm,entry->
J()-0.05,entry->
mass()*entry->
mass()*1E-6);
113 gReggeI0Pm->SetPointError(cI0Pm,0,2.*entry->
mass()*1E-6*entry->
mass_er());
118 else if(entry->
I()==1){
120 gReggeI1Pp->SetPoint(cI1Pp,entry->
J()+0.05,entry->
mass()*entry->
mass()*1E-6);
121 gReggeI1Pp->SetPointError(cI1Pp,0,2.*entry->
mass()*1E-6*entry->
mass_er());
124 else if(entry->
P()==-1){
125 gReggeI1Pm->SetPoint(cI1Pm,entry->
J()+0.15,entry->
mass()*entry->
mass()*1E-6);
126 gReggeI1Pm->SetPointError(cI1Pm,0,2.*entry->
mass()*1E-6*entry->
mass_er());
135 gRegge->SetMarkerStyle(20);
138 gReggeI0Pp->SetMarkerStyle(24);
139 gReggeI0Pm->SetMarkerStyle(20);
140 gReggeI1Pp->SetMarkerStyle(30);
141 gReggeI1Pm->SetMarkerStyle(29);gReggeI1Pm->SetMarkerSize(1.5);
144 mg->GetXaxis()->SetTitle(
"J");
145 mg->GetYaxis()->SetTitle(
"m^{2} (GeV^{2}/c^{4})");