// Macro gmnResults.C - plots the old world's data from kelly and the CLAS6 data seperately and plots // the published kelly fit and our kelly-like fit that includes the CLAS6 data. Include anticipated // data from the proposal. // // usage in root: // .x gmnResults.C // load and run this code. // // main method void gmnResultsJeopardy2020() { Int_t icounter; Float_t shifted; //***** anticipated data from CLAS12 for Aberico et al. parameterization. assuming 30 days. Int_t nlines_alberico=30; nlines_alberico=28; // plot fewer points. Double_t q2alberico[]={3.10606, 3.25758, 3.40909, 3.56061, 3.71212, 3.86364, 4.01515, 4.16667, 4.31818, 4.4697, 4.62121, 4.77273, 4.92424, 5.07578, 5.23017, 5.39262, 5.57201, 5.77014, 5.99772, 6.25522, 6.53272, 6.85344, 7.22916, 7.67916, 8.25416, 9.00538, 9.9316, 11.1316, 12.8316}; Double_t gmn_alberico[]={0.992476, 0.988565, 0.984808, 0.981203, 0.977747, 0.974435, 0.971261, 0.968221, 0.965308, 0.962516, 0.95984, 0.957274, 0.954812, 0.952449, 0.950138, 0.947806, 0.945342, 0.94275, 0.939927, 0.936919, 0.933878, 0.9306, 0.927052, 0.923168, 0.918708, 0.913597, 0.908202, 0.902372, 0.895772}; Double_t dgmn_alberico[]={0.00300487, 0.00301108, 0.00309541, 0.00323107, 0.00340578, 0.00361341, 0.00385086, 0.00411662, 0.00441019, 0.00473164, 0.0050815, 0.00546055, 0.00586982, 0.0063097, 0.00666787, 0.00697437, 0.00713902, 0.00765316, 0.00779095, 0.00860829, 0.00941163, 0.00992417, 0.0110116, 0.0119378, 0.0132153, 0.0153582, 0.01949, 0.0237314, 0.031576}; //***** anticipated data from Hall A e12-09-019 assuming 25 days from PAC35. Int_t nlines_quinn=7; Double_t q2quinn[]={3.5, 4.5, 6.0, 8.5, 10.0, 12.0, 13.5}; Double_t gmn_quinn[]={0.82, 0.82, 0.82, 0.82, 0.82, 0.82, 0.82, 0.82}; Double_t dgmn_quinn[]={0.014, 0.012, 0.016, 0.016, 0.018, 0.017, 0.025}; Double_t dsysgmn_alberico[]={0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03, 0.03}; Int_t nCLAS12band=2; //Double_t q2CLAS12band[]={3.4,13.8}; Double_t q2CLAS12band[]={3.4,10.8}; // for smaller Q2 range Double_t dsysgmnCLAS12band[]={0.03,0.027}; //***** Lachniet CLAS6 GMn data Int_t nlines_lachniet_gmn = 26; Double_t q22[] = {0.984848, 1.13636, 1.28788, 1.43939, 1.59091, 1.74242, 1.89394, 2.04545, 2.19697, 2.34848, 2.5, 2.65152, 2.80303, 2.95455, 3.10606, 3.25758, 3.40909, 3.56061, 3.71212, 3.86364, 4.01515, 4.16667, 4.31818, 4.4697, 4.62121, 4.77273}; Double_t gmn2[] = {0.995306, 1.00728, 1.03186, 1.02284, 1.01265, 1.0136, 1.01669, 1.00001, 0.991865, 1.0016, 1.02119, 1.03442, 1.00121, 0.995414, 1.00185, 0.977922, 0.996698, 0.991829, 0.974237, 0.979143, 1.02848, 0.919278, 0.907946, 0.990253, 1.10739, 1.09205}; Double_t dgmn2[] = {0.00800311, 0.00785473, 0.0072034, 0.00667009, 0.00653109, 0.00662985, 0.00635229, 0.00649555, 0.00712071, 0.00836382, 0.00985659, 0.0107656, 0.0113388, 0.0122915, 0.0142447, 0.0154287, 0.01718, 0.0184284, 0.0202512, 0.0230183, 0.0252436, 0.0264864, 0.029367, 0.038589, 0.0988585, 0.130194}; Double_t delta_sys_gmn_gd_lachniet[] = {0.0214045, 0.0245978, 0.0219763, 0.02001, 0.0194181, 0.0192848, 0.0193804, 0.0211262, 0.0211519, 0.021443, 0.0225447, 0.0221549, 0.0212338, 0.0212774, 0.0206032, 0.0197722, 0.020221, 0.0181868, 0.0184637, 0.0177399, 0.017951, 0.0172476, 0.0165242, 0.0168603, 0.0142526, 0.0142246}; // shift the systematic errors to fit the bar graph on the plot. int counter=0; for (counter=0; counterSetOptDate(0); TCanvas *c1 = new TCanvas("c1","Graph of GMn Data",20,1,900,600); c1->SetRightMargin(0.01); c1->SetLeftMargin(0.12); c1->SetBottomMargin(0.13); c1->SetTopMargin(0.01); c1->SetTickx(1); c1->SetTicky(1); c1->SetGridx(0); c1->SetGridy(0); // and the frame... TH1F *hr = c1->DrawFrame(0.04,0.4,15.0,1.24); hr->SetXTitle("Q^{2}(GeV^{2})"); hr->SetYTitle("G^{n}_{M}/#mu_{n}G_{D}"); hr->GetXaxis()->SetTitleOffset(1.0); hr->GetXaxis()->SetTitleSize(0.06); hr->GetXaxis()->SetLabelSize(0.06); hr->GetYaxis()->SetTitleOffset(0.9); hr->GetYaxis()->SetTitleSize(0.06); hr->GetYaxis()->SetLabelSize(0.06); // and plot Lachniet data. Int_t n2 = nlines_lachniet_gmn; TGraphErrors *gr2 = new TGraphErrors(n2,q22,gmn2,0,dgmn2); gr2->SetLineColor(2); gr2->SetLineWidth(2); gr2->SetMarkerColor(2); gr2->SetMarkerStyle(24); gr2->SetMarkerSize(0.8); gr2->Draw("P"); //***** plot anticipated data using alberico fit. Int_t n3 = nlines_alberico; n3=27; // plot fewer points. TGraphErrors *gr3 = new TGraphErrors(n3,q2alberico,gmn_alberico,0,dgmn_alberico); gr3->SetLineColor(1); gr3->SetLineWidth(2); gr3->SetMarkerColor(1); gr3->SetMarkerStyle(21); gr3->SetMarkerSize(0.8); gr3->Draw("p"); // labels TLatex *tex = new TLatex(); tex->SetTextSize(0.05); tex->DrawLatex(0.75,0.6,"Red - CLAS6"); tex->DrawLatex(0.75,0.545,"Green - Previous World Data"); tex->DrawLatex(0.75,0.49,"Black - CLAS12 anticipated"); tex->DrawLatex(0.75,0.435,"Bar graphs - systematic uncertainties"); tex->DrawLatex(7.5,1.15,"Anticipated"); tex->DrawLatex(7.5,1.09,"Statistical uncertainties only"); // arrow pointing at the stat uncertainties TArrow *arrow = new TArrow(10.5,1.07,9.3,0.951,0.03,"|>"); arrow->SetFillColor(1); arrow->SetFillStyle(1001); arrow->SetAngle(30); arrow->Draw(); // CLAS6 systematic uncertainty band. Int_t n1 = nlines_lachniet_gmn; Int_t nverts = n1+1; TGraph *band1 = new TGraph(nverts); for (icounter=0;icounterSetPoint(icounter,q22[icounter],delta_sys_gmn_gd_lachniet[icounter]); } band1->SetPoint(n1,4.77,0.72); band1->SetPoint(n1+1,0.98,0.72); band1->SetFillStyle(1001); band1->SetLineColor(1); band1->SetLineWidth(3); band1->SetFillColor(2); band1->Draw("f"); // CLAS12 anticipated systematic uncertainty band. float shiftscale = 0.65; n1 = nCLAS12band; nverts = n1+1; TGraph *band2 = new TGraph(nverts); for (icounter=0;icounterSetPoint(icounter,q2CLAS12band[icounter],shifted); } //band2->SetPoint(n1,13.8,shiftscale); band2->SetPoint(n1,10.8,shiftscale); band2->SetPoint(n1+1,3.4,shiftscale); band2->SetFillStyle(1001); band2->SetLineColor(1); band2->SetLineWidth(3); band2->SetFillColor(1); band2->Draw("f"); // combined GMn data from kelly. Int_t nlines_gmn = 30; Double_t q2[] = {0.071, 0.125, 0.359, 0.894, 0.235, 0.504, 0.652, 0.784, 0.111, 1.75, 2.50, 3.25, 4.00, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 2.5, 4.0, 6.0, 8.0, 10.0, 0.1, 0.193, 0.3, 0.4, 0.5, 0.6}; Double_t gmn[] = {0.990, 0.967, 0.989, 1.062, 0.962, 1.032, 1.037, 1.043, 0.957, 1.052, 1.014, 0.967, 0.923, 0.962, 0.959, 0.972, 0.984, 0.984, 1.010, 0.985, 0.945, 0.912, 0.71, 0.63, 0.9481, 0.9511, 0.9577, 0.9694, 0.9689, 0.9939}; Double_t dgmn[] = {0.013, 0.013, 0.014, 0.017, 0.009, 0.012, 0.012, 0.012, 0.016, 0.052, 0.044, 0.061, 0.081, 0.014, 0.013, 0.014, 0.011, 0.009, 0.013, 0.043, 0.046, 0.047, 0.12, 0.15, 0.027, 0.027, 0.056, 0.031, 0.027, 0.029}; // graph the old data. n1 = nlines_gmn; TGraphErrors *gr1 = new TGraphErrors(n1,q2,gmn,0,dgmn); gr1->SetLineColor(8); gr1->SetLineWidth(2); gr1->SetMarkerColor(8); gr1->SetMarkerStyle(25); gr1->SetMarkerSize(0.8); gr1->Draw("p"); // draw a line at reduced GMn = 1.0 TLine *l1 = new TLine(0.0,1.0,15.0,1.0); l1->Draw(); // redraw the data on top to make it easier to see. gr2->Draw("p"); // draw the E12-09-019 (Hall A) anticipated data. n1 = nlines_quinn; TGraphErrors *gr4 = new TGraphErrors(n1,q2quinn,gmn_quinn,0,dgmn_quinn); gr4->SetLineColor(4); gr4->SetLineWidth(2); gr4->SetMarkerColor(4); gr4->SetMarkerStyle(21); gr4->SetMarkerSize(0.8); //gr4->Draw("p"); // turn this plot off here // theory curves. // gerry miller 2 from his email. - curve in the GMn paper. Int_t nlines_miller2=56; Float_t q2_miller2[] = {0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1., 1.25, 1.5, 1.75, 2., 2.25, 2.5, 2.75, 3., 3.25, 3.5, 3.75, 4., 4.25, 4.5, 4.75, 5., 5.25, 5.5, 5.75, 6., 6.25, 6.5, 6.75, 7., 7.25, 7.5, 7.75, 8., 8.25, 8.5, 8.75, 9., 9.25, 9.5, 9.75, 10.}; // , 13.0 Float_t gmn_miller2[] = {0.9836, 0.9746, 0.9695, 0.9668, 0.9656, 0.9654, 0.9658, 0.9668, 0.968, 0.9695, 0.9711, 0.9728, 0.9745, 0.9762, 0.9779, 0.9796, 0.9812, 0.9828, 0.9842, 0.9857, 0.9917, 0.9958, 0.9983, 0.9994, 0.9991, 0.9976, 0.9951, 0.9919, 0.9881, 0.9839, 0.9793, 0.9745, 0.9695, 0.9643, 0.9589, 0.9532, 0.9473, 0.9412, 0.9349, 0.9285, 0.9219, 0.9152, 0.9085, 0.9018, 0.895, 0.8884, 0.8818, 0.8754, 0.8691, 0.8629, 0.8568, 0.851, 0.8453, 0.8397, 0.8343, 0.829};// ,0.75 // miller2 - curve in the GMn paper. n1 = nlines_miller2; TGraph *th11 = new TGraph(n1,q2_miller2, gmn_miller2); th11->SetLineColor(4); th11->SetLineWidth(1); th11->SetLineStyle(9); //th11->Draw("c"); // turn plot off and on here. // craig roberts 12/02/09 Int_t nlines_roberts=66; Float_t q2_roberts[] = {0., 0.2, 0.4, 0.6, 0.8, 1., 1.2, 1.4, 1.6, 1.8, 2., 2.2, 2.4, 2.6, 2.8, 3., 3.2, 3.4, 3.6, 3.8, 4., 4.2, 4.4, 4.6, 4.8, 5., 5.2, 5.4, 5.6, 5.8, 6., 6.2, 6.4, 6.6, 6.8, 7., 7.2, 7.4, 7.6, 7.8, 8., 8.2, 8.4, 8.6, 8.8, 9., 9.2, 9.4, 9.6, 9.8, 10., 10.2, 10.4, 10.6, 10.8, 11., 11.2, 11.4, 11.6, 11.8, 12., 12.2, 12.4, 12.6, 12.8, 13.}; Float_t gmn_roberts[] = {1., 1.03366, 1.05933, 1.07494, 1.08537, 1.09138, 1.09323, 1.09001, 1.08321, 1.07525, 1.06613, 1.05574, 1.04349, 1.03099, 1.01862, 1.00548, 0.99056, 0.975573, 0.961976, 0.948969, 0.934879, 0.919726, 0.905926, 0.894518, 0.88269, 0.869874, 0.857411, 0.846144, 0.834853, 0.822337, 0.809404, 0.797347, 0.786164, 0.775658, 0.76627, 0.756798, 0.747052, 0.737481, 0.728244, 0.719177, 0.710071, 0.701107, 0.69272, 0.684895, 0.67672, 0.667325, 0.659108, 0.652967, 0.646773, 0.639913, 0.632882, 0.625842, 0.61893, 0.612373, 0.606168, 0.60022, 0.594817, 0.589162, 0.582828, 0.576827, 0.571331, 0.56634, 0.561854, 0.557872, 0.554396, 0.551424}; // roberts/cloet plot. n1 = 55;//nlines_roberts; TGraph *th10 = new TGraph(n1,q2_roberts, gmn_roberts); th10->SetLineColor(4); th10->SetLineWidth(1); th10->SetLineStyle(7); th10->Draw("c"); // turn plot off and on here. // anatoly radyushkin. // another/better version of this curve after massaging with Mathematica. Int_t nlines_radyushkin=51; Float_t q2_radyushkin[] = {0.1, 0.3, 0.5, 0.7, 0.9, 1.1, 1.3, 1.5, 1.7, 1.9, 2.1, 2.3, 2.5, 2.7, 2.9, 3.1, 3.3, 3.5, 3.7, 3.9, 4.1, 4.3, 4.5, 4.7, 4.9, 5.1, 5.3, 5.5, 5.7, 5.9, 6.1, 6.3, 6.5, 6.7, 6.9, 7.1, 7.3, 7.5, 7.7, 7.9, 8.1, 8.3, 8.5, 8.7, 8.9, 9.1, 9.3, 9.5, 9.7, 9.9, 10.1};//,13.0 Float_t gmn_radyushkin[] = {0.9978, 0.999, 0.999, 0.996, 0.987, 0.9786, 0.9678, 0.957, 0.9462, 0.9354, 0.92532, 0.91596, 0.9066, 0.89724, 0.88788, 0.87888, 0.87024, 0.8616, 0.85296, 0.84432, 0.837, 0.831, 0.825, 0.819, 0.813, 0.807, 0.801, 0.795, 0.789, 0.783, 0.7776, 0.7728, 0.768, 0.7632, 0.7584, 0.7539, 0.7497, 0.7455, 0.7413, 0.7371, 0.73362, 0.73086, 0.7281, 0.72534, 0.72258, 0.7197, 0.7167, 0.7137, 0.7107, 0.7077,0.7047};// , 0.67 // radyushkin plot. n1 = nlines_radyushkin; TGraph *th1 = new TGraph(n1,q2_radyushkin, gmn_radyushkin); th1->SetLineColor(4); th1->SetLineStyle(3); th1->SetLineWidth(2); //th1->Draw("c"); // turn plot off and on here. // label theory curves. //tex->DrawLatex(10.0,0.84,"Miller"); //tex->DrawLatex(10.2,0.71,"Guidal et al."); tex->DrawLatex(11,0.58,"Cloet et al."); // leave these out. They make it crash if you run the macro a second time. // c1->ToggleEditor(); // c1->ToggleToolBar(); // gutsche et al. Int_t nlines_gutsche=100; Float_t q2_gutsche[]={0.05, 0.15, 0.25, 0.35, 0.45, 0.55, 0.65, 0.75, 0.85, 0.95, 1.05, 1.15, 1.25, 1.35, 1.45, 1.55, 1.65, 1.75, 1.85, 1.95, 2.05, 2.15, 2.25, 2.35, 2.45, 2.55, 2.65, 2.75, 2.85, 2.95, 3.05, 3.15, 3.25, 3.35, 3.45, 3.55, 3.65, 3.75, 3.85, 3.95, 4.05, 4.15, 4.25, 4.35, 4.45, 4.55, 4.65, 4.75, 4.85, 4.95, 5.05, 5.15, 5.25, 5.35, 5.45, 5.55, 5.65, 5.75, 5.85, 5.95, 6.05, 6.15, 6.25, 6.35, 6.45, 6.55, 6.65, 6.75, 6.85, 6.95, 7.05, 7.15, 7.25, 7.35, 7.45, 7.55, 7.65, 7.75, 7.85, 7.95, 8.05, 8.15, 8.25, 8.35, 8.45, 8.55, 8.65, 8.75, 8.85, 8.95, 9.05, 9.15, 9.25, 9.35, 9.45, 9.55, 9.65, 9.75, 9.85, 9.95}; Float_t gmn_gutsche[]={0.999542, 1.00091, 1.00189, 1.00155, 1.00245, 1.00279, 1.0035, 1.00423, 1.00423, 1.00423, 1.00423, 1.00423, 1.00431, 1.00462, 1.00467, 1.00467, 1.0045, 1.00394, 1.00338, 1.00263, 1.0017, 1.00036, 0.998825, 0.9977, 0.995763, 0.993666, 0.99164, 0.989692, 0.988059, 0.986425, 0.984718, 0.982467, 0.980272, 0.978046, 0.975373, 0.973172, 0.970876, 0.967906, 0.96506, 0.962491, 0.959679, 0.956804, 0.955107, 0.951718, 0.949224, 0.946825, 0.943988, 0.941096, 0.938245, 0.935375, 0.932494, 0.929612, 0.926928, 0.92435, 0.921772, 0.919072, 0.916321, 0.91357, 0.910817, 0.908058, 0.905299, 0.90254, 0.899765, 0.896941, 0.894116, 0.891292, 0.888741, 0.886219, 0.883697, 0.881174, 0.878627, 0.876075, 0.873523, 0.870971, 0.868419, 0.865966, 0.863548, 0.861129, 0.858767, 0.856597, 0.854428, 0.852124, 0.849558, 0.846992, 0.844454, 0.842031, 0.839607, 0.837209, 0.835194, 0.83318, 0.831102, 0.828726, 0.82635, 0.824149, 0.822273, 0.820397, 0.818233, 0.816058, 0.813884, 0.811811}; TGraph *th12 = new TGraph(nlines_gutsche,q2_gutsche, gmn_gutsche); th12->SetLineColor(4); th12->SetLineStyle(2); th12->SetLineWidth(2); th12->Draw("c"); tex->DrawLatex(10.0,0.78,"Gutsche et al."); // miller 2020 plots Int_t nlines_miller2020=100; Float_t q2_miller2020[] = {0.05, 0.15, 0.25, 0.35, 0.45, 0.55, 0.65, 0.75, 0.85, 0.95, 1.05, 1.15, 1.25, 1.35, 1.45, 1.55, 1.65, 1.75, 1.85, 1.95, 2.05, 2.15, 2.25, 2.35, 2.45, 2.55, 2.65, 2.75, 2.85, 2.95, 3.05, 3.15, 3.25, 3.35, 3.45, 3.55, 3.65, 3.75, 3.85, 3.95, 4.05, 4.15, 4.25, 4.35, 4.45, 4.55, 4.65, 4.75, 4.85, 4.95, 5.05, 5.15, 5.25, 5.35, 5.45, 5.55, 5.65, 5.75, 5.85, 5.95, 6.05, 6.15, 6.25, 6.35, 6.45, 6.55, 6.65, 6.75, 6.85, 6.95, 7.05, 7.15, 7.25, 7.35, 7.45, 7.55, 7.65, 7.75, 7.85, 7.95, 8.05, 8.15, 8.25, 8.35, 8.45, 8.55, 8.65, 8.75, 8.85, 8.95, 9.05, 9.15, 9.25, 9.35, 9.45, 9.55, 9.65, 9.75, 9.85, 9.95}; Float_t gmn_miller2020[] = {0.983985, 0.970246, 0.979228, 0.98769, 0.998372, 1.00884, 1.02003, 1.03032, 1.03583, 1.04277, 1.0476, 1.05083, 1.05301, 1.05421, 1.05417, 1.05508, 1.05367, 1.05323, 1.05137, 1.04854, 1.04613, 1.04245, 1.03778, 1.03325, 1.02882, 1.02441, 1.01993, 1.0167, 1.01291, 1.00662, 1.00148, 0.997365, 0.992794, 0.987998, 0.982448, 0.976683, 0.971587, 0.96685, 0.962473, 0.958457, 0.954244, 0.949235, 0.944216, 0.939188, 0.934717, 0.931007, 0.927438, 0.922777, 0.917644, 0.912394, 0.907556, 0.902769, 0.898301, 0.894304, 0.890635, 0.886946, 0.882785, 0.878491, 0.874065, 0.869506, 0.86517, 0.860844, 0.856519, 0.852301, 0.848301, 0.844421, 0.840661, 0.837022, 0.833502, 0.829725, 0.825932, 0.822151, 0.818232, 0.814159, 0.810336, 0.806763, 0.803453, 0.800763, 0.797959, 0.795041, 0.792007, 0.788859, 0.785595, 0.782199, 0.778654, 0.775187, 0.7718, 0.768491, 0.765277, 0.762131, 0.75905, 0.756035, 0.753084, 0.750198, 0.747378, 0.74451, 0.741471, 0.738417, 0.735351, 0.732271}; TGraph *th13 = new TGraph(nlines_miller2020,q2_miller2020, gmn_miller2020); th13->SetLineColor(4); th13->SetLineStyle(5); th13->SetLineWidth(2); th13->Draw("c"); tex->DrawLatex(10.0,0.71,"Miller et al."); } // end of class.