78 db->AddParticle(
"D",
"D", 1.876123928,
true, 0, 3,
"Core", 1000010020, 1000010020, 1000010020);
79 db->AddParticle(
"T",
"T", 2.809432115,
true, 0, 3,
"Core", 1000010030, 1000010030, 1000010030);
80 db->AddParticle(
"He3",
"He3", 2.809413523,
true, 0, 6,
"Core", 1000020030, 1000020030, 1000020030);
81 db->AddParticle(
"He4",
"He4", 3.728401326,
true, 0, 6,
"Core", 1000020040, 1000020040, 1000020040);
83 for (PidParticles iSort = (PidParticles)0; iSort != EndPidEnum; iSort = (PidParticles)(iSort + 1)) {
182 string type[] = {
"All",
"True",
"Fake",
"TrueOverAll",
"FakeOverAll"};
185 Int_t bins[] = {20, 20, 20, 20, 20};
187 string xTitle = (
i == 3 ||
i == 4) ?
"Ratio" :
"Number of hits";
188 string histName =
"hth_" + detName +
"_TrackHits_" + type[
i];
356 if (glTrack->GetBeta(1) > -999.0)
357 fHM->H2(
"Banana-plot TOF-400")->Fill(glTrack->
GetP(), glTrack->GetBeta(1));
359 if (glTrack->GetBeta(2) > -999.0)
360 fHM->H2(
"Banana-plot TOF-700")->Fill(glTrack->
GetP(), glTrack->GetBeta(2));
387 if ((glTrack->GetBeta(1) > -999.0)) {
393 if (indexTOF400 != -1) {
396 time = (hit->GetTimeStamp());
397 velocity = length * 1e+7 / time;
406 if ((mcParticle == 0) || (recoParticle == 0))
422 if (
abs(mcMass - recoMass) < 0.000001) {
425 fHM->H1(
"TOF-400 true_vs_P for " + mcName)->Fill(p);
426 fHM->H1(
"TOF-400 true_vs_NOfHits for " + mcName)->Fill(nOfHits);
427 fHM->H2(
"TOF-400 true rigidity-momentum for " + mcName)->Fill(p,
beta);
428 if (indexTOF400 != -1) {
429 fHM->H2(
"True velocity from P TOF-400 for " + mcName)->Fill(p, velocity);
430 fHM->H2(
"True time from P TOF-400 for " + mcName)->Fill(p, time);
431 fHM->H2(
"True mass^2 from P TOF-400 for " + mcName)->Fill(p, mass);
437 fHM->H1(
"TOF-400 false_vs_P for " + recoName)->Fill(p);
438 fHM->H1(
"TOF-400 false_vs_NOfHits for " + recoName)->Fill(nOfHits);
439 fHM->H2(
"TOF-400 false rigidity-momentum for " + recoName)->Fill(p,
beta);
440 if (indexTOF400 != -1) {
441 fHM->H2(
"False velocity from P TOF-400 for " + recoName)->Fill(p, velocity);
442 fHM->H2(
"False time from P TOF-400 for " + recoName)->Fill(p, time);
443 fHM->H2(
"False mass^2 from P TOF-400 for " + recoName)->Fill(p, mass);
449 fHM->H1(
"TOF-400 total_vs_P for " + mcName)->Fill(p);
450 fHM->H1(
"TOF-400 total_vs_NOfHits for " + mcName)->Fill(nOfHits);
451 fHM->H2(
"TOF-400 total rigidity-momentum for " + mcName)->Fill(p,
beta);
452 if (indexTOF400 != -1) {
453 fHM->H2(
"Total velocity from P TOF-400 for " + mcName)->Fill(p, velocity);
454 fHM->H2(
"Total time from P TOF-400 for " + mcName)->Fill(p, time);
455 fHM->H2(
"Total mass^2 from P TOF-400 for " + mcName)->Fill(p, mass);
462 if ((glTrack->GetBeta(2) > -999.0)) {
468 if (indexTOF700 != -1) {
471 time = (hit->GetTimeStamp());
472 velocity = length * 1e+7 / time;
481 if ((mcParticle == 0) || (recoParticle == 0))
495 if (
abs(mcMass - recoMass) < 0.000001) {
498 fHM->H1(
"TOF-700 true_vs_P for " + mcName)->Fill(p);
499 fHM->H1(
"TOF-700 true_vs_NOfHits for " + mcName)->Fill(nOfHits);
500 fHM->H2(
"TOF-700 true rigidity-momentum for " + mcName)->Fill(p,
beta);
501 if (indexTOF700 != -1) {
502 fHM->H2(
"True velocity from P TOF-700 for " + mcName)->Fill(p, velocity);
503 fHM->H2(
"True time from P TOF-700 for " + mcName)->Fill(p, time);
504 fHM->H2(
"True mass^2 from P TOF-700 for " + mcName)->Fill(p, mass);
510 fHM->H1(
"TOF-700 false_vs_P for " + recoName)->Fill(p);
511 fHM->H1(
"TOF-700 false_vs_NOfHits for " + recoName)->Fill(nOfHits);
512 fHM->H2(
"TOF-700 false rigidity-momentum for " + recoName)->Fill(p,
beta);
513 if (indexTOF700 != -1) {
514 fHM->H2(
"False velocity from P TOF-700 for " + recoName)->Fill(p, velocity);
515 fHM->H2(
"False time from P TOF-700 for " + recoName)->Fill(p, time);
516 fHM->H2(
"False mass^2 from P TOF-700 for " + recoName)->Fill(p, mass);
522 fHM->H1(
"TOF-700 total_vs_P for " + mcName)->Fill(p);
523 fHM->H1(
"TOF-700 total_vs_NOfHits for " + mcName)->Fill(nOfHits);
524 fHM->H2(
"TOF-700 total rigidity-momentum for " + (mcName))->Fill(p,
beta);
525 if (indexTOF700 != -1) {
526 fHM->H2(
"Total velocity from P TOF-700 for " + mcName)->Fill(p, velocity);
527 fHM->H2(
"Total time from P TOF-700 for " + mcName)->Fill(p, time);
528 fHM->H2(
"Total mass^2 from P TOF-700 for " + mcName)->Fill(p, mass);
void CreateH2(const string &name, const string &xTitle, const string &yTitle, const string &zTitle, Int_t nofBinsX, Double_t minBinX, Double_t maxBinX, Int_t nofBinsY, Double_t minBinY, Double_t maxBinY)