/** * @file * @author Christian Simon * @since 2018-10-24 */ #include "CbmTofDef.h" #include "FairLogger.h" // --------------------------------------------------------------------------- std::map tof::PdgMap = { // Gauge bosons { 22, "#gamma"}, // leptons { 11, "e^{-}"}, {-11, "e^{+}"}, { 13, "#mu^{-}"}, {-13, "#mu^{+}"}, // mesons { 111, "#pi^{0}"}, { 211, "#pi^{+}"}, {-211, "#pi^{-}"}, { 221, "#eta"}, { 130, "#Kappa^{0}_{L}"}, { 310, "#Kappa^{0}_{S}"}, { 321, "#Kappa^{+}"}, {-321, "#Kappa^{-}"}, // baryons { 2112, "n"}, {-2112, "#bar{n}"}, { 2212, "p"}, {-2212, "#bar{p}"}, { 3112, "#Sigma^{-}"}, {-3112, "#Sigma^{+}"}, { 3122, "#Lambda"}, {-3122, "#bar{#Lambda}"}, { 3212, "#Sigma^{0}"}, {-3212, "#bar{#Sigma^{0}}"}, { 3222, "#Sigma^{+}"}, {-3222, "#Sigma^{-}"}, { 3312, "#Xi^{-}"}, {-3312, "#Xi^{+}"}, { 3322, "#Xi^{0}"}, {-3322, "#bar{#Xi^{0}}"}, { 3334, "#Omega^{-}"}, {-3334, "#Omega^{+}"}, // fragments {1000010020, "d"}, {1000010030, "t"}, {1000020040, "#alpha"}, // dummy { 0, "Geant"} }; // --------------------------------------------------------------------------- // --------------------------------------------------------------------------- std::map tof::MaterialMap = { {"RPCgas", "gas"}, {"RPCgas_noact", "gas"}, {"RPCglass", "glass"}, {"air", "air"}, {"aluminium", "box"}, {"carbon", "pcb"}, {"targetMaterial", "target"}, {"silicon", "diamond"}, {"Scintillator", "plastic"} }; // --------------------------------------------------------------------------- // --------------------------------------------------------------------------- std::map tof::ProcessMap = { {"Compton scattering", "Compton"}, {"Decay", "Decay"}, {"Delta ray", "Delta"}, {"Hadronic interaction", "Hadronic"}, {"Lepton pair production", "Pair"}, {"Photoelectric effect", "Photo"}, {"Positron annihilation", "Annil"}, {"Primary particle emission", "Primary"}, {"Bremstrahlung", "Brems"} }; // --------------------------------------------------------------------------- // --------------------------------------------------------------------------- void tof::GetPdgName(Int_t iPdgCode, const char*& cPdgName) { auto itPdg = tof::PdgMap.find(iPdgCode); if(itPdg != tof::PdgMap.end()) { cPdgName = itPdg->second; } else { cPdgName = "XXX"; LOG(ERROR)<<"unknown PDG code: "<second; } else { cMaterialName = "XXX"; LOG(ERROR)<<"unknown material: "<second; } else { cProcessName = "XXX"; LOG(ERROR)<<"unknown process: "<