Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:01:15

0001 #ifndef PARTICLE_ID_TRANSLATIONS_HH
0002 #define PARTICLE_ID_TRANSLATIONS_HH
0003 // ----------------------------------------------------------------------
0004 //
0005 // ParticleIDTranslations.hh
0006 // Author: Lynn Garren
0007 //
0008 // ..convert between various numbering implementations
0009 //
0010 // ----------------------------------------------------------------------
0011 
0012 #include <iostream>
0013 
0014 //! The HepPID namespace has independent particle ID translation methods
0015 
0016 ///
0017 /// \namespace HepPID
0018 /// The HepPID namespace contains a set of independent 
0019 /// particle ID translation methods
0020 ///
0021 namespace HepPID {
0022 
0023 // translate between generator ID's and standard numbering scheme
0024 
0025 // Herwig translations
0026 /// translate Herwig to PDG standard
0027 int   translateHerwigtoPDT( const int herwigID);
0028 /// translate PDG standard to Herwig
0029 int   translatePDTtoHerwig( const int pid );
0030 /// output the translation list
0031 void  writeHerwigTranslation( std::ostream & os );
0032 
0033 // Isajet translations
0034 /// translate Isajet to PDG standard
0035 int   translateIsajettoPDT( const int isajetID );
0036 /// translate PDG standard to Isajet
0037 int   translatePDTtoIsajet( const int pid );
0038 /// output the translation list
0039 void  writeIsajetTranslation( std::ostream & os );
0040 
0041 // Pythia translations
0042 /// translate Pythia to PDG standard
0043 int   translatePythiatoPDT( const int pythiaID );
0044 /// translate PDG standard to Pythia
0045 int   translatePDTtoPythia( const int pid );
0046 /// output the translation list
0047 void  writePythiaTranslation( std::ostream & os );
0048 
0049 // EvtGen translations
0050 /// translate EvtGen to PDG standard
0051 int   translateEvtGentoPDT( const int evtGenID );
0052 /// translate PDG standard to EvtGen
0053 int   translatePDTtoEvtGen( const int pid );
0054 /// output the translation list
0055 void  writeEvtGenTranslation( std::ostream & os );
0056 
0057 // PDG table translations (yes,there can be differences)
0058 /// translate PDG table to PDG standard
0059 int   translatePDGtabletoPDT( const int pdgID);
0060 /// translate PDG standard to PDG table
0061 int   translatePDTtoPDGtable( const int pid );
0062 /// output the translation list
0063 void  writePDGTranslation( std::ostream & os );
0064 
0065 // QQ translations
0066 /// translate QQ to PDG standard
0067 int   translateQQtoPDT( const int qqID);
0068 /// translate PDG standard to QQ
0069 int   translatePDTtoQQ( const int pid );
0070 /// QQ helper function
0071 int   translateQQbar( const int id );
0072 /// QQ helper function
0073 int   translateInverseQQbar( const int id );
0074 /// output the translation list
0075 void  writeQQTranslation( std::ostream & os );
0076 
0077 // Geant3 translations
0078 /// translate Geant3 to PDG standard
0079 int translateGeanttoPDT( const int geantID);
0080 /// translate PDG standard to Geant3
0081 int translatePDTtoGeant( const int pid );
0082 
0083 }  // namespace HepPID
0084 
0085 #endif // PARTICLE_ID_TRANSLATIONS_HH