G4AdjointPositron Class Reference

#include <G4AdjointPositron.hh>

Inheritance diagram for G4AdjointPositron:

G4ParticleDefinition

Static Public Member Functions

static G4AdjointPositronDefinition ()
static G4AdjointPositronAdjointPositronDefinition ()
static G4AdjointPositronAdjointPositron ()

Detailed Description

Definition at line 54 of file G4AdjointPositron.hh.


Member Function Documentation

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 }


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:51:25 2013 for Geant4 by  doxygen 1.4.7