00001 double beta(double x)
00002 {
00003 double gamma = ((91.1876**4)/(x**4))*(8/((1-((2*(91.1876**2))/(x**2)))**2));
00004 return (-gamma+2)/(2+gamma);
00005
00006 }
00007
00008 double R_L(double x)
00009 {
00010 double z = (91.1876*91.1876)/(x*x);
00011
00012 double a = ((3-16*z+20*z*z)/(sqrt(4*z-1)))*acos((3*z-1)/(2*z*sqrt(z)));
00013
00014 double b = ((1-z)/(2*z))*(2-13*z+15*z*z);
00015
00016 double c = 0.5*(3-10*z+4*z*z)*log(z);
00017
00018 return (a-b-c);
00019
00020 }
00021
00022
00023
00024 double R_T(double x)
00025 {
00026
00027 double y = (91.1876*91.1876)/(x*x);
00028
00029 double s = ((3*(1-8*y+20*y*y))/(sqrt(4*y-1)))*acos((3*y-1)/(2*y*sqrt(y)));
00030
00031 double t = ((1-y)/(2*y))*(2-13*y+47*y*y);
00032
00033 double u = 1.5*(1-6*y+4*y*y)*log(y);
00034
00035 return (s-t-u);
00036 }
00037
00038
00039
00040
00041
00042 void higgspolarization(char *filelistname)
00043
00044 {
00045 TString filename;
00046 TFile * f;
00047
00048
00049 ifstream filelist(filelistname);
00050 string line;
00051
00052
00053 const int n = 37;
00054
00055 double x[n],y[n],y1[n],y2[n],ex[n],ey[n],ey1[n],ey2[n],y3[n],ey3[n];
00056
00057
00058 int ipoint = 0;
00059
00060 filelist >> line;
00061 double higgsmass = 140;
00062
00063
00064
00065 while (!filelist.eof())
00066 {
00067 filename = line;
00068
00069
00070
00071 f = TFile::Open(filename);
00072
00073 TH1F * thish = (TH1F*) f->Get("Cosine1graph");
00074
00075 TF1 * f2 = (TF1*)thish->GetListOfFunctions()->At(0);
00076 TF1 * f3 = (TF1*)thish->GetListOfFunctions()->At(1);
00077 TF1 * f4 = (TF1*)thish->GetListOfFunctions()->At(2);
00078 TF1 *f5 = new TF1("f5","[0]*( ((-[1]-1)/([1]-3)) * (3/4)*(1-x**2) + (3/8)*((2*[1]-2)/([1]-3))*(1+x**2) )",-1,1);
00079
00080 f5->SetParNames("Normalization","Correct Tully Ratio");
00081 f5->SetParameter(1,0.5);
00082 f5->FixParameter(0,thish->Integral("bin width"));
00083 thish->Fit("f5","+L");
00084
00085 float alpha = f2->GetParameter("alpha");
00086 float alpha_error = f2->GetParError(1);
00087 float ratio = f3->GetParameter("R");
00088 float ratio_error = f3->GetParError(1);
00089 float tully_ratio = f4->GetParameter("tullyR");
00090 float tully_ratio_error = f4->GetParError(1);
00091 float correct_tratio = f5->GetParameter("Correct Tully Ratio");
00092 float correct_tratio_error = f5->GetParError(1);
00093
00094 f->Close();
00095
00096
00097
00098
00099 x[ipoint] = higgsmass;
00100 y[ipoint] = alpha;
00101 ey[ipoint] = alpha_error;
00102 y1[ipoint] = ratio;
00103 ey1[ipoint] = ratio_error;
00104 y2[ipoint] = tully_ratio;
00105 ey2[ipoint] = tully_ratio_error;
00106 y3[ipoint] = correct_tratio;
00107 ey3[ipoint] = correct_tratio_error;
00108
00109 ipoint++;
00110 higgsmass+=10;
00111
00112 filelist >> line;
00113
00114 }
00115
00116 TGraphErrors *gr1 = new TGraphErrors(n,x,y,ex,ey);
00117
00118 TGraphErrors *gr2 = new TGraphErrors(n,x,y1,ex,ey1);
00119 TF1 *f6 = new TF1("f6","((91.1876**4)/(x**4))*(8/((1-((2*(91.1876**2))/(x**2)))**2))",182.3752,500);
00120 TF1 *f8 = new TF1("f6","1/(-(R_L(x)/R_T(x))/(R_L(x)/R_T(x)-1))",100,182.3752);
00121
00122 TGraphErrors *gr3 = new TGraphErrors(n,x,y2,ex,ey2);
00123
00124 TGraphErrors *gr4 = new TGraphErrors(n,x,y3,ex,ey3);
00125 TF1 *f7 = new TF1("f7","beta(x)",150,500);
00126
00127 TCanvas *c1 = new TCanvas("c1","alpha",200,10,600,400);
00128
00129 gr1->SetLineColor(4);
00130 gr1->SetMarkerStyle(7);
00131 gr1->SetMarkerSize(3);
00132 gr1->SetMarkerColor(4);
00133 gr1->SetTitle("#alpha vs. Higgs mass for incorrect boost 1");
00134 gr1->GetXaxis()->SetTitle("Higgs Mass (GeV)");
00135 gr1->GetXaxis()->CenterTitle();
00136 gr1->GetYaxis()->SetTitle("#alpha");
00137 gr1->GetYaxis()->CenterTitle();
00138 gr1->Draw("AP");
00139
00140 TCanvas *c2 = new TCanvas("c2","Ratio",200,10,600,400);
00141
00142 c2->cd();
00143 gr2->SetLineColor(2);
00144 gr2->SetMarkerStyle(7);
00145 gr2->SetMarkerSize(3);
00146 gr2->SetMarkerColor(2);
00147 gr2->SetTitle("#Gamma_{T}/#Gamma_{L} vs. Higgs Mass (GeV) for incorrect boost 1");
00148 gr2->GetXaxis()->SetTitle("Higgs Mass (GeV)");
00149 gr2->GetXaxis()->CenterTitle();
00150 gr2->GetYaxis()->SetTitle("#Gamma_{T}/#Gamma_{L}");
00151 gr2->GetYaxis()->CenterTitle();
00152 gr2->Draw("AP");
00153 f6->Draw("CSAME");
00154 f8->Draw("CSAME");
00155
00156
00157
00158
00159
00160
00161
00162
00163
00164
00165 TCanvas *c4 = new TCanvas("c4","Correct Tully Ratio",200,10,600,400);
00166 c4->cd();
00167 gr4->SetMarkerStyle(7);
00168 gr4->SetMarkerSize(3);
00169 gr4->SetTitle("Tully Ratio for incorrect boost 1");
00170 gr4->GetXaxis()->SetTitle("Higgs Mass (GeV)");
00171 gr4->GetXaxis()->CenterTitle();
00172 gr4->GetYaxis()->SetTitle("R = #frac{L-T}{L+T}");
00173 gr4->GetYaxis()->CenterTitle();
00174 gr4->Draw("AP");
00175 f7->Draw("CSAME");
00176 }