46 , fDrawSignificance(kFALSE)
52 const string& outputDir,
63 TFile* file =
new TFile(fileName.c_str());
66 fNofEvents = (Int_t)
H1(
"fh_event_number")->GetEntries();
67 cout <<
"File name = " << fileName << endl;
68 cout <<
"Number of events = " <<
fNofEvents << endl;
116 H1(ss.str())->Rebin(8 * nRebin);
122 return (TH1D*)
fHM->
H1(name);
132 return (TH2D*)
fHM->
H2(name);
140 if (h2->GetEntries() != 0) {
141 effTxt = Cbm::NumberToString<Double_t>(
142 ((Double_t) h1->GetEntries() / h2->GetEntries() * 100.), 1);
144 TText* t =
new TText(xPos, yPos, effTxt.c_str());
153 const string& option) {
154 Int_t nBins = s->GetNbinsX();
155 Double_t xmin = s->GetXaxis()->GetXmin();
156 Double_t xmax = s->GetXaxis()->GetXmax();
157 TH1D* hsig =
new TH1D(name.c_str(), name.c_str(), nBins, xmin, xmax);
158 hsig->GetXaxis()->SetTitle(s->GetXaxis()->GetTitle());
160 Double_t sumSignal = 0., sumBg = 0., significance = 0.;
163 if (option ==
"right") {
164 for (Int_t
i = 1;
i <= nBins;
i++) {
165 sumSignal = s->Integral(1,
i,
"width");
166 sumBg = bg->Integral(1,
i,
"width");
167 Double_t prov = TMath::Sqrt(sumSignal + sumBg);
169 significance = sumSignal / prov;
172 hsig->SetBinContent(
i, significance);
176 }
else if (option ==
"left") {
177 for (Int_t
i = nBins;
i >= 1;
i--) {
178 sumSignal = s->Integral(
i, nBins,
"width");
179 sumBg = bg->Integral(
i, nBins,
"width");
180 Double_t prov = TMath::Sqrt(sumSignal + sumBg);
182 significance = sumSignal / prov;
185 hsig->SetBinContent(
i, significance);
194 const string& title) {
200 Double_t delta = 0.1;
201 Int_t nStepsX = (Int_t)((xmax - xmin) / delta);
202 Int_t nStepsY = (Int_t)((ymax - ymin) / delta);
203 Int_t nBinsX = signal->GetNbinsX();
204 Int_t nBinsY = signal->GetNbinsY();
206 TH2D* hsig =
new TH2D(
207 name.c_str(), title.c_str(), nStepsX, xmin, xmax, nStepsY, ymin, ymax);
209 Double_t sumSignal = 0;
213 for (Double_t xcut = xmin; xcut <= xmax; xcut += delta, binX++) {
215 cout <<
"x " << xcut << endl;
216 for (Double_t ycut = ymin; ycut <= ymax; ycut += delta, binY++) {
219 for (Int_t ix = 1; ix <= nBinsX; ix++) {
220 for (Int_t iy = 1; iy <= nBinsY; iy++) {
221 Double_t xcenter = signal->GetXaxis()->GetBinCenter(ix);
222 Double_t ycenter = signal->GetYaxis()->GetBinCenter(iy);
223 Double_t val = -1 * (ycut / xcut) * xcenter + ycut;
225 if (!(xcenter < xcut && ycenter < val)) {
226 sumSignal += signal->GetBinContent(ix, iy);
227 sumBg += bg->GetBinContent(ix, iy);
231 Double_t prov = TMath::Sqrt(sumSignal + sumBg);
232 Double_t significance = 0.;
233 if (prov != 0) significance = sumSignal / prov;
234 hsig->SetBinContent(binX, binY, significance);
246 if (s->GetEntries() < 1)
return;
248 TH1D* sClone = (TH1D*) s->Clone();
249 sClone->Fit(
"gaus",
"Q");
251 Double_t mean = sClone->GetFunction(
"gaus")->GetParameter(
"Mean");
252 Double_t sigma = sClone->GetFunction(
"gaus")->GetParameter(
"Sigma");
254 Int_t minInd = s->FindBin(mean - 2. * sigma);
255 Int_t maxInd = s->FindBin(mean + 2. * sigma);
257 Double_t sumSignal = 0.;
259 for (Int_t
i = minInd + 1;
i <= maxInd - 1;
i++) {
260 sumSignal += s->GetBinContent(
i);
261 sumBg += bg->GetBinContent(
i);
266 fHM->
CreateCanvas(
"lmvm_signal_fitting",
"lmvm_signal_fitting", 600, 600);
315 "lmvm_signal_rapidity",
"lmvm_signal_rapidity", 750, 1000);
334 eff->GetZaxis()->SetTitle(
"Efficiency [%]");
336 eff->SetMaximum(10.);
345 fHM->
CreateCanvas(
"lmvm_pty_efficiency",
"lmvm_pty_efficiency", 1000, 1000);
354 "lmvm_pty_efficiency_ptcut",
"lmvm_pty_efficiency_ptcut", 600, 600);
360 "lmvm_signal_momentum_distribution",
388 DrawH1({
H1(
"fh_mc_mother_pdg"),
H1(
"fh_acc_mother_pdg")},
400 fHM->
CreateCanvas(
"mc_signal_mom_angle",
"mc_signal_mom_angle", 500, 500);
401 DrawH2(
H2(
"fh_mc_signal_mom_angle"));
405 TCanvas* c =
fHM->
CreateCanvas(
"lmvm_pmt_xy",
"lmvm_pmt_xy", 500, 1800);
424 vector<string> hLegend;
427 h.push_back(
H1(fullName));
428 h[
i]->SetLineWidth(2);
430 if (doScale)
h[
i]->Scale(1. /
h[
i]->Integral());
437 const string& sigOption,
443 (
"lmvm_" + hName).c_str(), (
"lmvm_" + hName).c_str(), w,
h);
449 if (cutValue != -999999.) {
450 TLine* cutLine =
new TLine(cutValue, 0.0, cutValue, 1.0);
451 cutLine->SetLineWidth(2);
459 H1(sName),
H1(bgName), hName +
"_significance", sigOption);
520 gStyle->SetPaintTextFormat(
"4.1f");
521 string labels[3] = {
"#gamma",
"#pi^{0}",
"oth"};
522 for (Int_t
i = 1;
i <= 3;
i++) {
523 h->GetYaxis()->SetBinLabel(
i, labels[
i - 1].c_str());
524 h->GetXaxis()->SetBinLabel(
i, labels[
i - 1].c_str());
529 h->Scale(100. /
h->Integral());
530 h->GetZaxis()->SetTitle(
"[%]");
533 h->GetZaxis()->SetTitle(
"Number of pairs/event x10^{3}");
536 h->GetXaxis()->SetLabelSize(0.1);
537 h->GetYaxis()->SetLabelSize(0.1);
545 "lmvm_bg_sources_pairs_epem_abs",
557 "lmvm_bg_sources_pairs_epem_percent",
587 "Pairs per event x10^{3}");
591 if (xCross == -999999. || yCross == -999999.)
return;
592 TLine* line1 =
new TLine(0., 0., xCross, 0.);
593 line1->SetLineWidth(2.);
595 TLine* line2 =
new TLine(0., 0., 0., yCross);
596 line2->SetLineWidth(2.);
598 TLine* line3 =
new TLine(xCross, 0., 0., yCross);
599 line3->SetLineWidth(2.);
608 (
"lmvm_" + hist).c_str(), (
"lmvm_" + hist).c_str(), 600, 900);
610 vector<TH1*> projX, projY;
654 (
"lmvm_" + hist +
"_signal").c_str(),
660 (
"lmvm_" + hist +
"_gamma").c_str(),
671 TH2D* xz =
H2(
"fh_vertex_el_gamma_xz_mc");
672 TH2D* yz =
H2(
"fh_vertex_el_gamma_yz_mc");
673 TH2D* xy =
H2(
"fh_vertex_el_gamma_xy_mc");
675 "lmvm_vertex_el_gamma_mc",
"lmvm_vertex_el_gamma_mc", 1200, 400);
679 xz->SetMinimum(1e-3);
683 yz->SetMinimum(1e-3);
687 xy->SetMinimum(1e-3);
692 "lmvm_vertex_el_gamma_z_mc",
"lmvm_vertex_el_gamma_z_mc", 600, 600);
693 TH1D* zProj = (TH1D*) xz->ProjectionX(
"fh_vertex_el_gamma_pz_mc")->Clone();
694 zProj->GetYaxis()->SetTitle(
"Counter per event");
695 zProj->GetXaxis()->SetRangeUser(-2., 17.);
699 "lmvm_vertex_el_gamma_z_ptcut",
"lmvm_vertex_el_gamma_z_ptcut", 600, 600);
700 TH1D* zProjPtCut = (TH1D*) (
H2(
"fh_vertex_el_gamma_xz_ptcut")
701 ->ProjectionX(
"fh_vertex_el_gamma_ptcut_pz")
703 zProjPtCut->GetYaxis()->SetTitle(
"Counter per event");
704 zProjPtCut->GetXaxis()->SetRangeUser(-2., 17.);
707 TH2D* xzZoom = (TH2D*) xz->Clone();
708 TH2D* yzZoom = (TH2D*) yz->Clone();
709 TH2D* xyZoom = (TH2D*) xy->Clone();
710 TCanvas* cZoom =
fHM->
CreateCanvas(
"lmvm_vertex_el_gamma_mc_target_zoom",
711 "lmvm_vertex_el_gamma_mc_target_zoom",
716 xzZoom->GetXaxis()->SetRangeUser(-1., 11.);
717 xzZoom->GetYaxis()->SetRangeUser(-10., 10.);
719 xzZoom->SetMinimum(1e-3);
722 yzZoom->GetXaxis()->SetRangeUser(-1., 11.);
723 yzZoom->GetYaxis()->SetRangeUser(-10., 10.);
725 yzZoom->SetMinimum(1e-3);
728 xyZoom->GetXaxis()->SetRangeUser(-20., 20.);
729 xyZoom->GetYaxis()->SetRangeUser(-20., 20.);
731 xyZoom->SetMinimum(1e-3);
735 "lmvm_vertex_el_gamma_rz_mc",
"lmvm_vertex_el_gamma_rz_mc", 600, 600);
736 DrawH2(
H2(
"fh_vertex_el_gamma_rz_mc"));
737 H2(
"fh_vertex_el_gamma_rz_mc")->SetMinimum(1e-3);
745 Double_t
min = 9999999999.;
746 TH1D* firstHisto = NULL;
747 TLegend* leg =
new TLegend(0.80, 0.32, 0.99, 0.99);
751 TH1D*
h =
H1(fullName);
752 if (
h == NULL ||
h->GetEntries() <= 0)
continue;
756 if (firstHisto == NULL) firstHisto =
h;
759 if (
min >
h->GetMinimum()) {
min =
h->GetMinimum(); }
761 if (
min <= 0.0)
min = 1e-9;
762 if (firstHisto != NULL) firstHisto->SetMinimum(
min);
764 leg->SetFillColor(kWhite);
767 gPad->SetGridx(
true);
768 gPad->SetGridy(
true);
773 TCanvas* c1 =
fHM->
CreateCanvas(
"lmvm_minv_for_each_analysis_step_s_bg",
774 "lmvm_minv_for_each_analysis_step_s_bg",
783 TCanvas* c2 =
fHM->
CreateCanvas(
"lmvm_minv_for_each_analysis_step_pi0_eta",
784 "lmvm_minv_for_each_analysis_step_pi0_eta",
794 "lmvm_minv_for_each_analysis_step_gamma",
805 TH1D* s = (TH1D*) s1->Clone();
806 TH1D* bg = (TH1D*) bg1->Clone();
807 TH1D* sbg = (TH1D*) bg->Clone();
809 sbg->SetMinimum(1e-8);
812 {sbg, bg, s}, {
"",
"",
""},
kLinear,
kLog,
false, 0, 0, 0, 0,
"Hist L");
813 s->SetFillColor(kRed);
814 s->SetLineColor(kBlack);
817 bg->SetFillColor(kYellow - 10);
818 bg->SetLineColor(kBlack);
821 sbg->SetFillColor(kBlue);
822 sbg->SetLineColor(kBlack);
823 sbg->SetLineWidth(1);
825 s->SetMarkerStyle(1);
826 bg->SetMarkerStyle(1);
827 sbg->SetMarkerStyle(1);
835 "lmvm_minv_both_s_and_bg",
"lmvm_minv_both_s_and_bg", 900, 900);
844 "lmvm_minv_both_s_and_bg_ptcut",
"lmvm_minv_both_s_and_bg_ptcut", 900, 900);
855 H1(ss.str())->GetXaxis()->SetRangeUser(0, 2.);
856 hists.push_back(
H1(ss.str()));
869 TLegend* legend =
new TLegend(0.78, 0.15, 0.99, 0.90);
871 hists[
i]->SetMinimum(1e-8);
879 legend->SetFillColor(kWhite);
915 "lmvm_minv_mismatches",
"lmvm_minv_mismatches", 900, 900);
925 "true match (e^{#pm})",
926 "true match (not e^{#pm})",
944 double trueMatchNotEl =
962 "true match (e^{#pm}) ("
964 "true match (not e^{#pm}) ("
978 double binWEl =
H1(
"fh_pi_mom_mc")->GetBinWidth(1);
981 H1(
"fh_pi_mom_mc")->Scale(1 / binWEl);
982 H1(
"fh_pi_mom_acc")->Scale(1 / binWEl);
983 H1(
"fh_pi_mom_rec")->Scale(1 / binWEl);
984 H1(
"fh_pi_mom_rec_only_sts")->Scale(1 / binWEl);
985 H1(
"fh_pi_mom_rec_sts_rich_trd")->Scale(1 / binWEl);
986 H1(
"fh_pi_mom_rec_sts_rich_trd_tof")->Scale(1 / binWEl);
987 H1(
"fh_pi_mom_mc")->SetMinimum(2);
993 H1(
"fh_pi_mom_rec_only_sts"),
994 H1(
"fh_pi_mom_rec_sts_rich_trd"),
995 H1(
"fh_pi_mom_rec_sts_rich_trd_tof")},
1007 H1(
"fh_pi_mom_rec_only_sts")->GetEntries() /
fNofEvents, 2)
1009 "Rec STS-RICH-TRD ("
1011 H1(
"fh_pi_mom_rec_sts_rich_trd")->GetEntries() /
fNofEvents, 2)
1013 "Rec STS-RICH-TRD-TOF ("
1015 H1(
"fh_pi_mom_rec_sts_rich_trd_tof")->GetEntries() /
fNofEvents, 2)
1026 double binWElPrim =
H1(
"fh_piprim_mom_mc")->GetBinWidth(1);
1028 H1(
"fh_piprim_mom_mc")->Scale(1 / binWElPrim);
1029 H1(
"fh_piprim_mom_acc")->Scale(1 / binWElPrim);
1030 H1(
"fh_piprim_mom_rec")->Scale(1 / binWElPrim);
1031 H1(
"fh_piprim_mom_rec_only_sts")->Scale(1 / binWElPrim);
1032 H1(
"fh_piprim_mom_rec_sts_rich_trd")->Scale(1 / binWElPrim);
1033 H1(
"fh_piprim_mom_rec_sts_rich_trd_tof")->Scale(1 / binWElPrim);
1034 H1(
"fh_piprim_mom_mc")->SetMinimum(2);
1036 {
H1(
"fh_piprim_mom_mc"),
1037 H1(
"fh_piprim_mom_acc"),
1038 H1(
"fh_piprim_mom_rec"),
1039 H1(
"fh_piprim_mom_rec_only_sts"),
1040 H1(
"fh_piprim_mom_rec_sts_rich_trd"),
1041 H1(
"fh_piprim_mom_rec_sts_rich_trd_tof")},
1056 H1(
"fh_piprim_mom_rec_only_sts")->GetEntries() /
fNofEvents, 2)
1058 "Rec STS-RICH-TRD ("
1060 H1(
"fh_piprim_mom_rec_sts_rich_trd")->GetEntries() /
fNofEvents, 2)
1062 "Rec STS-RICH-TRD-TOF ("
1064 H1(
"fh_piprim_mom_rec_sts_rich_trd_tof")->GetEntries() /
fNofEvents, 2)
1074 fHM->
CreateCanvas(
"lmvm_pi_mom_notacc",
"lmvm_pi_mom_notacc", 800, 800);
1075 TH1D* h1 = ((TH1D*)
H1(
"fh_pi_mom_mc")->Clone());
1076 h1->Add(
H1(
"fh_pi_mom_acc"), -1.);
1079 "lmvm_piprim_mom_notacc",
"lmvm_piprim_mom_notacc", 800, 800);
1080 TH1D* h2 = ((TH1D*)
H1(
"fh_piprim_mom_mc")->Clone());
1081 h2->Add(
H1(
"fh_piprim_mom_acc"), -1.);
1085 cout <<
"Number of primary pions minus at rapidity 2 = "
1086 <<
H1(
"fh_piprim_minus_rapidity_mc")
1087 ->GetBinContent(
H1(
"fh_piprim_minus_rapidity_mc")->FindFixBin(2))
1089 cout <<
"Number of primary pions minus at rapidity (1, 3) = "
1090 <<
H1(
"fh_piprim_minus_rapidity_mc")
1091 ->Integral(
H1(
"fh_piprim_minus_rapidity_mc")->FindFixBin(1),
1092 H1(
"fh_piprim_minus_rapidity_mc")->FindFixBin(3))
1095 cout <<
"Number of primary pions plus at rapidity 2 = "
1096 <<
H1(
"fh_piprim_plus_rapidity_mc")
1097 ->GetBinContent(
H1(
"fh_piprim_plus_rapidity_mc")->FindFixBin(2))
1099 cout <<
"Number of primary pions plus at rapidity (1, 3) = "
1100 <<
H1(
"fh_piprim_plus_rapidity_mc")
1101 ->Integral(
H1(
"fh_piprim_plus_rapidity_mc")->FindFixBin(1),
1102 H1(
"fh_piprim_plus_rapidity_mc")->FindFixBin(3))
1106 double binWRapidity =
H1(
"fh_piprim_minus_rapidity_mc")->GetBinWidth(1);
1107 H1(
"fh_pi_rapidity_mc")->Scale(1 / binWRapidity);
1108 H1(
"fh_piprim_minus_rapidity_mc")->Scale(1 / binWRapidity);
1109 H1(
"fh_piprim_plus_rapidity_mc")->Scale(1 / binWRapidity);
1110 H1(
"fh_pi0prim_rapidity_mc")->Scale(1 / binWRapidity);
1111 H1(
"fh_etaprim_rapidity_mc")->Scale(1 / binWRapidity);
1114 "lmvm_piprim_plus_rapidity",
"lmvm_piprim_plus_rapidity", 800, 800);
1115 DrawH1(
H1(
"fh_piprim_plus_rapidity_mc"));
1117 "lmvm_piprim_minus_rapidity",
"lmvm_piprim_minus_rapidity", 800, 800);
1118 DrawH1(
H1(
"fh_piprim_minus_rapidity_mc"));
1119 fHM->
CreateCanvas(
"lmvm_pi0prim_rapidity",
"lmvm_pi0prim_rapidity", 800, 800);
1120 DrawH1(
H1(
"fh_pi0prim_rapidity_mc"));
1121 fHM->
CreateCanvas(
"lmvm_etaprim_rapidity",
"lmvm_etaprim_rapidity", 800, 800);
1122 DrawH1(
H1(
"fh_etaprim_rapidity_mc"));
1128 H1(
"fh_nof_bg_tracks")
1129 ->SetBinContent(step - 2,
H1(
"fh_nof_bg_tracks")->GetBinContent(step));
1130 H1(
"fh_nof_el_tracks")
1131 ->SetBinContent(step - 2,
H1(
"fh_nof_el_tracks")->GetBinContent(step));
1133 H1(
"fh_nof_mismatches")
1134 ->SetBinContent(step - 2,
H1(
"fh_nof_mismatches")->GetBinContent(step));
1136 ->SetBinContent(step - 2,
H1(
"fh_nof_ghosts")->GetBinContent(step));
1138 int ny =
H2(
"fh_source_tracks")->GetYaxis()->GetNbins();
1139 for (
int y = 1;
y <= ny;
y++) {
1140 H2(
"fh_source_tracks")
1142 step - 2,
y,
H2(
"fh_source_tracks")->GetBinContent(step,
y));
1145 ny =
H2(
"fh_source_pairs")->GetYaxis()->GetNbins();
1146 for (
int y = 1;
y <= ny;
y++) {
1147 H2(
"fh_source_pairs")
1149 step - 2,
y,
H2(
"fh_source_pairs")->GetBinContent(step,
y));
1155 const string& histName,
1156 const vector<string>& yLabels,
1158 const string& zTitle) {
1163 string(canvasName +
"_abs").c_str(),
1166 TH2D* habs = (TH2D*)
H2(histName)->Clone();
1167 habs->SetStats(
false);
1169 habs->GetZaxis()->SetTitle(zTitle.c_str());
1170 habs->GetXaxis()->SetRange(
kReco + 1, rangeMax);
1171 habs->SetMarkerSize(1.4);
1175 string(canvasName +
"_percent").c_str(),
1178 TH2D* hperc = (TH2D*)
H2(histName)->Clone();
1179 hperc->SetStats(
false);
1180 Int_t nBinsX = hperc->GetNbinsX();
1181 Int_t nBinsY = hperc->GetNbinsY();
1182 for (Int_t
x = 1;
x <= nBinsX;
x++) {
1185 for (Int_t
y = 1;
y <= nBinsY;
y++) {
1186 nbg += habs->GetBinContent(
x,
y);
1188 Double_t sc = 100. / (nbg / scale);
1189 for (Int_t
y = 1;
y <= nBinsY;
y++) {
1190 Double_t val = sc * hperc->GetBinContent(
x,
y);
1191 hperc->SetBinContent(
x,
y, val);
1194 hperc->GetZaxis()->SetTitle(
"[%]");
1195 hperc->GetXaxis()->SetLabelSize(0.06);
1196 hperc->GetYaxis()->SetLabelSize(0.06);
1197 hperc->SetMarkerColor(kBlack);
1198 hperc->SetMarkerSize(1.8);
1199 hperc->GetXaxis()->SetRange(
kReco + 1, rangeMax);
1202 for (UInt_t
y = 1;
y <= yLabels.size();
y++) {
1203 hperc->GetYaxis()->SetBinLabel(
y, yLabels[
y - 1].c_str());
1204 habs->GetYaxis()->SetBinLabel(
y, yLabels[
y - 1].c_str());
1212 gStyle->SetPaintTextFormat(
"4.1f");
1217 fHM->
CreateCanvas(
"lmvm_nof_bg_tracks",
"lmvm_nof_bg_tracks", 600, 600);
1218 TH1D* hbg = (TH1D*)
H1(
"fh_nof_bg_tracks")->Clone();
1220 hbg->GetYaxis()->SetTitle(
"Tracks/event x10");
1221 hbg->GetXaxis()->SetRange(
kReco + 1, rangeMax);
1223 hbg->SetMarkerSize(2.);
1225 fHM->
CreateCanvas(
"lmvm_nof_el_tracks",
"lmvm_nof_el_tracks", 600, 600);
1226 TH1D* hel =
H1(
"fh_nof_el_tracks");
1227 hel->GetXaxis()->SetRange(
kReco + 1, rangeMax);
1231 TH1D* purity =
new TH1D(
"purity",
1232 "purity;Analysis steps;Purity",
1236 purity->Divide(
H1(
"fh_nof_bg_tracks"),
H1(
"fh_nof_el_tracks"));
1237 purity->GetXaxis()->SetRange(
kReco + 1, rangeMax);
1239 purity->SetMarkerSize(1.9);
1246 "lmvm_source_tracks_2d",
1248 {
"#gamma",
"#pi^{0}",
"#pi^{#pm}",
"p",
"K",
"e^{#pm}_{sec}",
"oth."},
1250 "Tracks per event x10^{2}");
1254 "fh_nof_topology_pairs_gamma",
"fh_nof_topology_pairs_gamma", 600, 600);
1255 TH1D* htopologyGamma = (TH1D*)
H1(
"fh_nof_topology_pairs_gamma")->Clone();
1256 htopologyGamma->Scale(1. / htopologyGamma->Integral());
1258 htopologyGamma->SetMarkerSize(1.);
1261 "fh_nof_topology_pairs_pi0",
"fh_nof_topology_pairs_pi0", 600, 600);
1262 TH1D* htopologyPi0 = (TH1D*)
H1(
"fh_nof_topology_pairs_pi0")->Clone();
1263 htopologyPi0->Scale(1. / htopologyPi0->Integral());
1265 htopologyPi0->SetMarkerSize(1.);
1269 gStyle->SetPaintTextFormat(
"4.1f");
1275 fHM->
CreateCanvas(
"lmvm_nof_mismatches",
"lmvm_nof_mismatches", 600, 600);
1278 TH1D* hmismatches = (TH1D*)
H1(
"fh_nof_mismatches")->Clone();
1279 hmismatches->Scale(10);
1280 hmismatches->GetYaxis()->SetTitle(
"Mismatch tracks/event x10");
1281 hmismatches->GetXaxis()->SetRange(
kReco + 1, rangeMax);
1284 hmismatches->SetMarkerSize(2.);
1287 TH1D* hmismatches_rich = (TH1D*)
H1(
"fh_nof_mismatches_rich")->Clone();
1288 hmismatches_rich->Scale(10);
1289 hmismatches_rich->GetYaxis()->SetTitle(
"Mismatch tracks (RICH)/event x10");
1290 hmismatches_rich->GetXaxis()->SetRange(
kReco + 1, rangeMax);
1292 hmismatches_rich->SetMarkerSize(2.);
1295 TH1D* hmismatches_trd = (TH1D*)
H1(
"fh_nof_mismatches_trd")->Clone();
1296 hmismatches_trd->Scale(10);
1297 hmismatches_trd->GetYaxis()->SetTitle(
"Mismatch tracks (TRD)/event x10");
1298 hmismatches_trd->GetXaxis()->SetRange(
kReco + 1, rangeMax);
1300 hmismatches_trd->SetMarkerSize(2.);
1303 TH1D* hmismatches_tof = (TH1D*)
H1(
"fh_nof_mismatches")->Clone();
1304 hmismatches_tof->Scale(10);
1305 hmismatches_tof->GetYaxis()->SetTitle(
"Mismatch tracks (TOF)/event x10");
1306 hmismatches_tof->GetXaxis()->SetRange(
kReco + 1, rangeMax);
1308 hmismatches_tof->SetMarkerSize(2.);
1312 TH1D* hghosts =
H1(
"fh_nof_ghosts");
1313 hghosts->GetXaxis()->SetRange(
kReco + 1, rangeMax);
1319 h->GetXaxis()->SetLabelSize(0.06);
1331 "lmvm_fh_signal_minv_pt",
"lmvm_fh_signal_minv_pt", 750, 1000);
1345 "lmvm_source_mom_mc_signal",
"lmvm_source_mom_mc_signal", 600, 600);
1346 DrawH1(
H1(
"fh_source_mom_mc_signal"));
1358 fHM->
CreateCanvas(
"lmvm_source_mom_ttcut",
"lmvm_source_mom_ttcut", 600, 600);
1362 TCanvas* c3 =
fHM->
CreateCanvas(
"lmvm_source_pt",
"lmvm_source_pt", 900, 900);
1370 fHM->
CreateCanvas(
"lmvm_source_pt_ttcut",
"lmvm_source_pt_ttcut", 600, 600);
1375 fHM->
CreateCanvas(
"lmvm_opening_angle",
"lmvm_opening_angle", 900, 900);
1385 "lmvm_opening_angle_ttcut",
"lmvm_opening_angle_ttcut", 600, 600);
1395 h1->GetXaxis()->SetLabelSize(0.06);
1396 h1->GetXaxis()->SetBinLabel(1,
"Correct");
1397 h1->GetXaxis()->SetBinLabel(2,
"Wrong");
1398 gPad->SetLogy(
false);
1403 h2->GetXaxis()->SetLabelSize(0.07);
1404 h2->GetXaxis()->SetBinLabel(1,
"Correct");
1405 h2->GetXaxis()->SetBinLabel(2,
"Wrong");
1406 gPad->SetLogy(
false);
1413 fHM->
CreateCanvas(
"lmvm_nofhits_mvd_sts",
"lmvm_nofhits_mvd_sts", 900, 450);