#include <G4AdjointPositron.hh>
Inheritance diagram for G4AdjointPositron:
Static Public Member Functions | |
static G4AdjointPositron * | Definition () |
static G4AdjointPositron * | AdjointPositronDefinition () |
static G4AdjointPositron * | AdjointPositron () |
Definition at line 54 of file G4AdjointPositron.hh.
G4AdjointPositron * G4AdjointPositron::AdjointPositron | ( | ) | [static] |
Definition at line 99 of file G4AdjointPositron.cc.
References Definition().
Referenced by G4VEmAdjointModel::DefineCurrentMaterial().
00100 { 00101 return Definition(); 00102 }
G4AdjointPositron * G4AdjointPositron::AdjointPositronDefinition | ( | ) | [static] |
Definition at line 94 of file G4AdjointPositron.cc.
References Definition().
00095 { 00096 return Definition(); 00097 }
G4AdjointPositron * G4AdjointPositron::Definition | ( | ) | [static] |
Definition at line 50 of file G4AdjointPositron.cc.
References G4ParticleTable::FindParticle(), G4ParticleDefinition::G4ParticleDefinition(), G4ParticleTable::GetParticleTable(), and G4ParticleDefinition::SetPDGMagneticMoment().
Referenced by AdjointPositron(), and AdjointPositronDefinition().
00051 { 00052 00053 if (theInstance !=0) return theInstance; 00054 const G4String name = "adj_e+"; 00055 // search in particle table] 00056 G4ParticleTable* pTable = G4ParticleTable::GetParticleTable(); 00057 G4ParticleDefinition* anInstance = pTable->FindParticle(name); 00058 if (anInstance ==0) 00059 { 00060 00061 // create particle 00062 // 00063 // Arguments for constructor are as follows 00064 // name mass width charge 00065 // 2*spin parity C-conjugation 00066 // 2*Isospin 2*Isospin3 G-parity 00067 // type lepton number baryon number PDG encoding 00068 // stable lifetime decay table 00069 // shortlived subType anti_encoding 00070 00071 // use constants in CLHEP 00072 // static const double electron_mass_c2 = 0.51099906 * MeV; 00073 00074 // NOTE : electric charge and magnetic moment is opposite 00075 // compared with real positron, because adjoint particles 00076 // are used to back-trace 00077 anInstance = new G4ParticleDefinition( 00078 name, electron_mass_c2, 0.0*MeV, -1.*eplus, 00079 1, 0, 0, 00080 0, 0, 0, 00081 "adjoint", -1, 0, -10000011, 00082 true, -1.0, NULL, 00083 false, "adj_lepton" 00084 ); 00085 // Bohr Magnetron 00086 G4double muB = -0.5*eplus*hbar_Planck/(electron_mass_c2/c_squared) ; 00087 anInstance->SetPDGMagneticMoment( muB * 2.* 1.0011596521859 ); 00088 00089 } 00090 theInstance = reinterpret_cast<G4AdjointPositron*>(anInstance); 00091 return theInstance; 00092 }