#ifndef ___PID_CONVERTERS___ #define ___PID_CONVERTERS___ //###########################HELPERS FOR PID ############################# Bool_t isPion (Int_t pdg) { return (pdg == 211 || pdg == -211 || pdg == 111) ? kTRUE : kFALSE ; } // pi+,pi-,pi0 Bool_t isRho (Int_t pdg) { return (pdg == 213 || pdg == -213 || pdg == 113) ? kTRUE : kFALSE ; } // rho+, rho-, rho0 Bool_t isRhoReco(Int_t pdg) { return (pdg == 41 || pdg == 42 || pdg == 43) ? kTRUE : kFALSE ; } // rho0,rho+,rho- Int_t geantRho(Int_t pdg) { if (pdg == 113) return 41; else if(pdg == 213) return 42; else if(pdg ==-213) return 43; else return -1; }; Int_t rhoCharge(Int_t pdg) { if (pdg == 113) return 0; else if(pdg == 213) return 1; else if(pdg ==-213) return -1; else return 0; }; Int_t createSourceID(Int_t mId,vector& d) { //---------------------------------------------------- // creating the sourceID for this decay (Using Geant IDs) UInt_t ndau = d.size(); if(mId > 20 && ndau > 3) { ndau = 3; cout<<"createSourceID() : sourceID needed truncation from ndaughter = "< 4) { ndau = 4; cout<<"createSourceID() : sourceID needed truncation from ndaughter = "< geant3 are handled // In case of Error 0 is returned and set to geantID TParticlePDG* pdg = PDG.GetParticle(pdgID); if(!pdg){ return pdgID + 10000000; cerr <<"ERROR : mapPdgPIDtoGeant3() : Particle not available in TDatabasePDG (in output id = pdgID + 10000000)"<K0S else if ( pdgID == 113 ){ geantID = 41;} // rho0 else if ( pdgID == 213 ){ geantID = 42;} // rho+ else if ( pdgID == -213 ){ geantID = 43;} // rho- else if ( pdgID == 223 ){ geantID = 52;} // omega else if ( pdgID == 331 ){ geantID = 53;} // eta' else if ( pdgID == 333 ){ geantID = 55;} // phi else if ( pdgID == 2114 ){ geantID = 34;} // D0 else if ( pdgID == 2224 ){ geantID = 35;} // D++ else if ( pdgID == 2214 ){ geantID = 36;} // D+ else if ( pdgID == 1114 ){ geantID = 37;} // D- //--------------------Additional particle rarely seen in output ------------------------ else if ( pdgID == -12 || pdgID == -14 || pdgID == 14 || pdgID == -16 || pdgID == 16 ){ geantID = 4;} // nu_e_bar,nu_mu_bar,nu_mu,nu_tau_bar,nu_tau_bar --> nu_e else { TString msg = PDG.GetParticle(pdgID)->GetName(); cerr<<"ERROR : mapMissingPIDtoGeant3(): unknow PID "<Rndm()<0.5)? 10 : 16; } } return geantID; } Int_t ConvertUrQMDtoPDG(Int_t ityp, Int_t ichg) { // convert UrQmd tp PDG pids //code from urqmd2u of UniGen Int_t id; if (ityp >= 0) id = 1000 * (ichg + 2) + ityp; else id = -1000 * (ichg + 2) + ityp; Int_t idnum=0; ; if (id==1017) idnum = 1114; else if (id==1018 ) idnum = 31114; else if (id==1019 ) idnum = 1112; else if (id==1020 ) idnum = 11114; else if (id==1021 ) idnum = 11112; else if (id==1022 ) idnum = 1116; else if (id==1023 ) idnum = 21112; else if (id==1024 ) idnum = 21114; else if (id==1025 ) idnum = 11116; else if (id==1026 ) idnum = 1118; else if (id==1040 ) idnum = 3112; else if (id==1041 ) idnum = 3114; else if (id==1042 ) idnum = 13112; else if (id==1043 ) idnum = 13114; else if (id==1044 ) idnum = 23112; else if (id==1045 ) idnum = 3116; else if (id==1046 ) idnum = 13116; else if (id==1047 ) idnum = 23114; else if (id==1048 ) idnum = 3118; else if (id==1049 ) idnum = 3312; else if (id==1050 ) idnum = 3314; else if (id==1051 ) idnum = 23314; else if (id==1052 ) idnum = 13314; else if (id==1053 ) idnum = 33314; else if (id==1054 ) idnum = 13316; else if (id==1055 ) idnum = 3334; else if (id==1101 ) idnum = -211; else if (id==1104 ) idnum = -213; else if (id==1111 ) idnum = -9000211; else if (id==1114 ) idnum = -20213; else if (id==1118 ) idnum = -215; else if (id==1122 ) idnum = -10213; else if (id==1126 ) idnum = -100213; else if (id==1130 ) idnum = -30213; else if (id==2001 ) idnum = 2112; else if (id==2002 ) idnum = 12112; else if (id==2003 ) idnum = 1214; else if (id==2004 ) idnum = 22112; else if (id==2005 ) idnum = 32112; else if (id==2006 ) idnum = 2116; else if (id==2007 ) idnum = 12116; else if (id==2008 ) idnum = 21214; else if (id==2009 ) idnum = 42112; else if (id==2010 ) idnum = 31214; else if (id==2011 ) idnum = 41214; else if (id==2012 ) idnum = 12118; else if (id==2013 ) idnum = 52114; else if (id==2016 ) idnum = 100012110; else if (id==2017 ) idnum = 2114; else if (id==2018 ) idnum = 32114; else if (id==2019 ) idnum = 1212; else if (id==2020 ) idnum = 12114; else if (id==2021 ) idnum = 11212; else if (id==2022 ) idnum = 1216; else if (id==2023 ) idnum = 21212; else if (id==2024 ) idnum = 22114; else if (id==2025 ) idnum = 11216; else if (id==2026 ) idnum = 2118; else if (id==2027 ) idnum = 3122; else if (id==2028 ) idnum = 13122; else if (id==2029 ) idnum = 3124; else if (id==2030 ) idnum = 23122; else if (id==2031 ) idnum = 33122; else if (id==2032 ) idnum = 13124; else if (id==2033 ) idnum = 43122; else if (id==2034 ) idnum = 53122; else if (id==2035 ) idnum = 3126; else if (id==2036 ) idnum = 13126; else if (id==2037 ) idnum = 23124; else if (id==2038 ) idnum = 3128; else if (id==2039 ) idnum = 23126; else if (id==2040 ) idnum = 3212; else if (id==2041 ) idnum = 3214; else if (id==2042 ) idnum = 13212; else if (id==2043 ) idnum = 13214; else if (id==2044 ) idnum = 23212; else if (id==2045 ) idnum = 3216; else if (id==2046 ) idnum = 13216; else if (id==2047 ) idnum = 23214; else if (id==2048 ) idnum = 3218; else if (id==2049 ) idnum = 3322; else if (id==2050 ) idnum = 3324; else if (id==2051 ) idnum = 23324; else if (id==2052 ) idnum = 13324; else if (id==2053 ) idnum = 33324; else if (id==2054 ) idnum = 13326; else if (id==2100 ) idnum = 22; else if (id==2101 ) idnum = 111; else if (id==2102 ) idnum = 221; else if (id==2103 ) idnum = 223; else if (id==2104 ) idnum = 113; else if (id==2105 ) idnum = 9000221; else if (id==2106 ) idnum = 311; else if (id==2107 ) idnum = 331; else if (id==2108 ) idnum = 313; else if (id==2109 ) idnum = 333; else if (id==2110 ) idnum = 333; else if (id==2111 ) idnum = 9000111; else if (id==2112 ) idnum = 10221; else if (id==2113 ) idnum = 20313; else if (id==2114 ) idnum = 20113; else if (id==2115 ) idnum = 20223; else if (id==2116 ) idnum = 20333; else if (id==2117 ) idnum = 315; else if (id==2118 ) idnum = 115; else if (id==2119 ) idnum = 225; else if (id==2120 ) idnum = 335; else if (id==2121 ) idnum = 10313; else if (id==2122 ) idnum = 10113; else if (id==2123 ) idnum = 10223; else if (id==2124 ) idnum = 10333; else if (id==2125 ) idnum = 100313; else if (id==2126 ) idnum = 100113; else if (id==2127 ) idnum = 100223; else if (id==2128 ) idnum = 100333; else if (id==2129 ) idnum = 30313; else if (id==2130 ) idnum = 30113; else if (id==2131 ) idnum = 30223; else if (id==2132 ) idnum = 337; else if (id==3001 ) idnum = 2212; else if (id==3002 ) idnum = 12212; else if (id==3003 ) idnum = 2124; else if (id==3004 ) idnum = 22212; else if (id==3005 ) idnum = 32212; else if (id==3006 ) idnum = 2216; else if (id==3007 ) idnum = 12216; else if (id==3008 ) idnum = 22124; else if (id==3009 ) idnum = 42212; else if (id==3010 ) idnum = 32124; else if (id==3011 ) idnum = 42124; else if (id==3012 ) idnum = 12218; else if (id==3013 ) idnum = 52214; else if (id==3016 ) idnum = 100012210; else if (id==3017 ) idnum = 2214; else if (id==3018 ) idnum = 32214; else if (id==3019 ) idnum = 2122; else if (id==3020 ) idnum = 12214; else if (id==3021 ) idnum = 12122; else if (id==3022 ) idnum = 2126; else if (id==3023 ) idnum = 22122; else if (id==3024 ) idnum = 22214; else if (id==3025 ) idnum = 12126; else if (id==3026 ) idnum = 2218; else if (id==3040 ) idnum = 3222; else if (id==3041 ) idnum = 3224; else if (id==3042 ) idnum = 13222; else if (id==3043 ) idnum = 13224; else if (id==3044 ) idnum = 23222; else if (id==3045 ) idnum = 3226; else if (id==3046 ) idnum = 13226; else if (id==3047 ) idnum = 23224; else if (id==3048 ) idnum = 3228; else if (id==3101 ) idnum = 211; else if (id==3104 ) idnum = 213; else if (id==3106 ) idnum = 321; else if (id==3108 ) idnum = 323; else if (id==3110 ) idnum = 10321; else if (id==3111 ) idnum = 9000211; else if (id==3113 ) idnum = 20323; else if (id==3114 ) idnum = 20213; else if (id==3117 ) idnum = 325; else if (id==3118 ) idnum = 215; else if (id==3121 ) idnum = 10323; else if (id==3122 ) idnum = 10213; else if (id==3125 ) idnum = 100323; else if (id==3126 ) idnum = 100213; else if (id==3129 ) idnum = 30323; else if (id==3130 ) idnum = 30213; else if (id==4017 ) idnum = 2224; else if (id==4018 ) idnum = 32224; else if (id==4019 ) idnum = 2222; else if (id==4020 ) idnum = 12224; else if (id==4021 ) idnum = 12222; else if (id==4022 ) idnum = 2226; else if (id==4023 ) idnum = 22222; else if (id==4024 ) idnum = 22224; else if (id==4025 ) idnum = 12226; else if (id==4026 ) idnum = 2228; else if (id==-3055) idnum = -3334; else if (id==-3054) idnum = -13316; else if (id==-3053) idnum = -33314; else if (id==-3052) idnum = -13314; else if (id==-3051) idnum = -23314; else if (id==-3050) idnum = -3314; else if (id==-3049) idnum = -3312; else if (id==-3048) idnum = -3118; else if (id==-3047) idnum = -23114; else if (id==-3046) idnum = -13116; else if (id==-3045) idnum = -3116; else if (id==-3044) idnum = -23112; else if (id==-3043) idnum = -13114; else if (id==-3042) idnum = -13112; else if (id==-3041) idnum = -3114; else if (id==-3040) idnum = -3112; else if (id==-3026) idnum = -1118; else if (id==-3025) idnum = -11116; else if (id==-3024) idnum = -21114; else if (id==-3023) idnum = -21112; else if (id==-3022) idnum = -1116; else if (id==-3021) idnum = -11112; else if (id==-3020) idnum = -11114; else if (id==-3019) idnum = -1112; else if (id==-3018) idnum = -31114; else if (id==-3017) idnum = -1114; else if (id==-2129) idnum = -30313; else if (id==-2125) idnum = -100313; else if (id==-2121) idnum = -10313; else if (id==-2117) idnum = -315; else if (id==-2113) idnum = -20313; else if (id==-2110) idnum = -10311; else if (id==-2108) idnum = -313; else if (id==-2106) idnum = -311; else if (id==-2055) idnum = -3334; else if (id==-2054) idnum = -13326; else if (id==-2053) idnum = -33324; else if (id==-2052) idnum = -13324; else if (id==-2051) idnum = -23324; else if (id==-2050) idnum = -3324; else if (id==-2049) idnum = -3322; else if (id==-2048) idnum = -3218; else if (id==-2047) idnum = -23214; else if (id==-2046) idnum = -13216; else if (id==-2045) idnum = -3216; else if (id==-2044) idnum = -23212; else if (id==-2043) idnum = -13214; else if (id==-2042) idnum = -13212; else if (id==-2041) idnum = -3214; else if (id==-2040) idnum = -3212; else if (id==-2039) idnum = -23126; else if (id==-2038) idnum = -3128; else if (id==-2037) idnum = -23124; else if (id==-2036) idnum = -13126; else if (id==-2035) idnum = -3126; else if (id==-2034) idnum = -53122; else if (id==-2033) idnum = -43122; else if (id==-2032) idnum = -13124; else if (id==-2031) idnum = -33122; else if (id==-2030) idnum = -23122; else if (id==-2029) idnum = -3124; else if (id==-2028) idnum = -13122; else if (id==-2027) idnum = -3122; else if (id==-2026) idnum = -2118; else if (id==-2025) idnum = -11216; else if (id==-2024) idnum = -22114; else if (id==-2023) idnum = -21212; else if (id==-2022) idnum = -1216; else if (id==-2021) idnum = -11212; else if (id==-2020) idnum = -12114; else if (id==-2019) idnum = -1212; else if (id==-2018) idnum = -32114; else if (id==-2017) idnum = -2114; else if (id==-2016) idnum = -100012110; else if (id==-2013) idnum = -52114; else if (id==-2012) idnum = -12118; else if (id==-2011) idnum = -41214; else if (id==-2010) idnum = -31214; else if (id==-2009) idnum = -42112; else if (id==-2008) idnum = -21214; else if (id==-2007) idnum = -12116; else if (id==-2006) idnum = -2116; else if (id==-2005) idnum = -32112; else if (id==-2004) idnum = -22112; else if (id==-2003) idnum = -1214; else if (id==-2002) idnum = -12112; else if (id==-2001) idnum = -2112; else if (id==-1129) idnum = -30323; else if (id==-1125) idnum = -100323; else if (id==-1121) idnum = -10323; else if (id==-1117) idnum = -325; else if (id==-1113) idnum = -20323; else if (id==-1110) idnum = -10321; else if (id==-1108) idnum = -323; else if (id==-1106) idnum = -321; else if (id==-1048) idnum = -3228; else if (id==-1047) idnum = -23224; else if (id==-1046) idnum = -13226; else if (id==-1045) idnum = -3226; else if (id==-1044) idnum = -23222; else if (id==-1043) idnum = -13224; else if (id==-1042) idnum = -13222; else if (id==-1041) idnum = -3224; else if (id==-1040) idnum = -3222; else if (id==-1026) idnum = -2218; else if (id==-1025) idnum = -12126; else if (id==-1024) idnum = -22214; else if (id==-1023) idnum = -22122; else if (id==-1022) idnum = -2126; else if (id==-1021) idnum = -12122; else if (id==-1020) idnum = -12214; else if (id==-1019) idnum = -2122; else if (id==-1018) idnum = -32214; else if (id==-1017) idnum = -2214; else if (id==-1016) idnum = -100012210; else if (id==-1013) idnum = -52214; else if (id==-1012) idnum = -12218; else if (id==-1011) idnum = -42124; else if (id==-1010) idnum = -32124; else if (id==-1009) idnum = -42212; else if (id==-1008) idnum = -22124; else if (id==-1007) idnum = -12216; else if (id==-1006) idnum = -2216; else if (id==-1005) idnum = -32212; else if (id==-1004) idnum = -22212; else if (id==-1003) idnum = -2124; else if (id==-1002) idnum = -12212; else if (id==-1001) idnum = -2212; else if (id==-26 ) idnum = -2228; else if (id==-25 ) idnum = -12226; else if (id==-24 ) idnum = -22224; else if (id==-23 ) idnum = -22222; else if (id==-22 ) idnum = -2226; else if (id==-21 ) idnum = -12222; else if (id==-20 ) idnum = -12224; else if (id==-19 ) idnum = -2222; else if (id==-18 ) idnum = -32224; else if (id==-17 ) idnum = -2224; else cerr <<"ERROR: ConvertUrQMDtoPDG() : undefined id number: "<