#include <G4PDGCodeChecker.hh>
Public Member Functions | |
G4PDGCodeChecker () | |
~G4PDGCodeChecker () | |
G4int | CheckPDGCode (G4int code, G4String type) |
G4int | GetQuarkContent (G4int flavor) const |
G4int | GetAntiQuarkContent (G4int flavor) const |
G4bool | IsAntiParticle () const |
G4int | GetQuarkFlavor (G4int idx) const |
G4int | GetSpin () const |
G4int | GetExotic () const |
G4int | GetRadial () const |
G4int | GetMultiplet () const |
G4bool | CheckCharge (G4double charge) const |
G4int | GetVerboseLevel () const |
void | SetVerboseLevel (G4int verbose) |
Protected Types | |
NumberOfQuarkFlavor = 8 | |
enum | { NumberOfQuarkFlavor = 8 } |
Definition at line 44 of file G4PDGCodeChecker.hh.
anonymous enum [protected] |
G4PDGCodeChecker::G4PDGCodeChecker | ( | ) |
Definition at line 45 of file G4PDGCodeChecker.cc.
References NumberOfQuarkFlavor.
00046 :code(0),theParticleType(""), 00047 higherSpin(0), 00048 exotic(0),radial(0),multiplet(0), 00049 quark1(0),quark2(0),quark3(0),spin(0) 00050 { 00051 verboseLevel = 1; 00052 // clear QuarkContents 00053 G4int flavor; 00054 for (flavor=0; flavor<NumberOfQuarkFlavor; flavor++){ 00055 theQuarkContent[flavor] =0; 00056 theAntiQuarkContent[flavor] =0; 00057 } 00058 }
G4PDGCodeChecker::~G4PDGCodeChecker | ( | ) | [inline] |
Definition at line 353 of file G4PDGCodeChecker.cc.
References G4cout, G4endl, and NumberOfQuarkFlavor.
Referenced by G4ParticleDefinition::FillQuarkContents().
00354 { 00355 // check charge 00356 G4double totalCharge = 0.0; 00357 for (G4int flavor= 0; flavor<NumberOfQuarkFlavor-1; flavor+=2){ 00358 totalCharge += (-1./3.)*eplus*theQuarkContent[flavor]; 00359 totalCharge += 1./3.*eplus*theAntiQuarkContent[flavor]; 00360 totalCharge += 2./3.*eplus*theQuarkContent[flavor+1]; 00361 totalCharge += (-2./3.)*eplus*theAntiQuarkContent[flavor+1]; 00362 } 00363 00364 if (std::fabs(totalCharge-thePDGCharge)>0.1*eplus) { 00365 #ifdef G4VERBOSE 00366 if (verboseLevel>0) { 00367 G4cout << " G4PDGCodeChecker::CheckCharge : "; 00368 G4cout << " illegal electric charge " << thePDGCharge/eplus; 00369 G4cout << " PDG code=" << code <<G4endl; 00370 } 00371 #endif 00372 return false; 00373 } 00374 return true; 00375 }
Definition at line 61 of file G4PDGCodeChecker.cc.
References NumberOfQuarkFlavor.
Referenced by G4ParticleDefinition::FillQuarkContents().
00063 { 00064 code = PDGcode; 00065 theParticleType = particleType; 00066 00067 // clear QuarkContents 00068 G4int flavor; 00069 for (flavor=0; flavor<NumberOfQuarkFlavor; flavor++){ 00070 theQuarkContent[flavor] =0; 00071 theAntiQuarkContent[flavor] =0; 00072 } 00073 00074 // check code for nuclei 00075 if ((theParticleType == "nucleus")||(theParticleType == "anti_nucleus")) { 00076 return CheckForNuclei(); 00077 } 00078 00079 // get each digit number 00080 GetDigits(code); 00081 00082 // check code 00083 if (theParticleType =="quarks") { 00084 return CheckForQuarks(); 00085 00086 } else if (theParticleType =="diquarks") { 00087 return CheckForDiQuarks(); 00088 00089 } else if (theParticleType =="gluons") { 00090 // gluons 00091 // do not care about 00092 return code; 00093 00094 } else if (theParticleType == "meson") { 00095 return CheckForMesons(); 00096 00097 } else if (theParticleType == "baryon"){ 00098 return CheckForBaryons(); 00099 00100 00101 } 00102 // No check 00103 return code; 00104 }
Definition at line 119 of file G4PDGCodeChecker.hh.
References NumberOfQuarkFlavor.
Referenced by G4ParticleDefinition::FillQuarkContents().
00120 { 00121 G4int value = 0; 00122 if ((flavor>=0)&&(flavor<NumberOfQuarkFlavor)) { 00123 value = theAntiQuarkContent[flavor]; 00124 } 00125 return value; 00126 }
G4int G4PDGCodeChecker::GetExotic | ( | ) | const [inline] |
G4int G4PDGCodeChecker::GetMultiplet | ( | ) | const [inline] |
Definition at line 109 of file G4PDGCodeChecker.hh.
References NumberOfQuarkFlavor.
Referenced by G4ParticleDefinition::FillQuarkContents().
00110 { 00111 G4int value = 0; 00112 if ((flavor>=0)&&(flavor<NumberOfQuarkFlavor)) { 00113 value = theQuarkContent[flavor]; 00114 } 00115 return value; 00116 }
Definition at line 130 of file G4PDGCodeChecker.hh.
00131 { 00132 G4int value; 00133 if (idx ==0) value = quark1; 00134 else if (idx ==1) value = quark2; 00135 else if (idx ==2) value = quark3; 00136 else value = -1; 00137 return value; 00138 }
G4int G4PDGCodeChecker::GetRadial | ( | ) | const [inline] |
G4int G4PDGCodeChecker::GetSpin | ( | ) | const [inline] |
Definition at line 159 of file G4PDGCodeChecker.hh.
Referenced by G4ParticleDefinition::FillQuarkContents().
G4int G4PDGCodeChecker::GetVerboseLevel | ( | ) | const [inline] |
G4bool G4PDGCodeChecker::IsAntiParticle | ( | ) | const [inline] |
void G4PDGCodeChecker::SetVerboseLevel | ( | G4int | verbose | ) | [inline] |
Definition at line 171 of file G4PDGCodeChecker.hh.
Referenced by G4ParticleDefinition::FillQuarkContents().