G4KaonZero Class Reference

#include <G4KaonZero.hh>

Inheritance diagram for G4KaonZero:

G4ParticleDefinition

Static Public Member Functions

static G4KaonZeroDefinition ()
static G4KaonZeroKaonZeroDefinition ()
static G4KaonZeroKaonZero ()

Detailed Description

Definition at line 50 of file G4KaonZero.hh.


Member Function Documentation

G4KaonZero * G4KaonZero::Definition (  )  [static]

Definition at line 53 of file G4KaonZero.cc.

References G4ParticleTable::FindParticle(), G4ParticleDefinition::G4ParticleDefinition(), G4ParticleTable::GetParticleTable(), G4DecayTable::Insert(), and G4ParticleDefinition::SetDecayTable().

Referenced by KaonZero(), KaonZeroDefinition(), G4InuclElementaryParticle::makeDefinition(), and G4InuclElementaryParticle::type().

00054 {
00055   if (theInstance !=0) return theInstance;
00056   const G4String name = "kaon0";
00057   // search in particle table]
00058   G4ParticleTable* pTable = G4ParticleTable::GetParticleTable();
00059   G4ParticleDefinition* anInstance = pTable->FindParticle(name);
00060   if (anInstance ==0)
00061   {
00062   // create particle
00063   //
00064   //    Arguments for constructor are as follows
00065   //               name             mass          width         charge
00066   //             2*spin           parity  C-conjugation
00067   //          2*Isospin       2*Isospin3       G-parity
00068   //               type    lepton number  baryon number   PDG encoding
00069   //             stable         lifetime    decay table
00070   //             shortlived      subType    anti_encoding
00071 
00072    anInstance = new G4ParticleDefinition(
00073                  name,    0.497614*GeV,       0.0*MeV,         0.0,
00074                     0,              -1,             0,
00075                     1,              -1,             0,
00076               "meson",               0,             0,         311,
00077                 false,             0.0,          NULL,
00078                 false,       "kaon");
00079 
00080  //create Decay Table
00081   G4DecayTable* table = new G4DecayTable();
00082 
00083  // create decay channels
00084   G4VDecayChannel** mode = new G4VDecayChannel*[2];
00085   // kaon0 -> Kaon0L
00086   mode[0] = new G4PhaseSpaceDecayChannel("kaon0",0.500,1,"kaon0L");
00087   // kaon0 -> Kaon0S
00088   mode[1] = new G4PhaseSpaceDecayChannel("kaon0",0.500,1,"kaon0S");
00089 
00090   for (G4int index=0; index <2; index++ ) table->Insert(mode[index]);
00091   delete [] mode;
00092 
00093    anInstance->SetDecayTable(table);
00094   }
00095   theInstance = reinterpret_cast<G4KaonZero*>(anInstance);
00096   return theInstance;
00097 }

G4KaonZero * G4KaonZero::KaonZero (  )  [static]

Definition at line 104 of file G4KaonZero.cc.

References Definition().

Referenced by G4KineticTrack::G4KineticTrack(), G4RPGInelastic::G4RPGInelastic(), G4KaonZeroField::GetField(), G4QHadronInelasticDataSet::GetIsoCrossSection(), G4QHadronElasticDataSet::GetIsoCrossSection(), G4QInelastic::GetMeanFreePath(), G4QPDGToG4Particle::GetParticleDefinition(), G4RKPropagation::Init(), G4ChipsKaonZeroInelasticXS::IsIsoApplicable(), G4ChipsKaonZeroElasticXS::IsIsoApplicable(), G4QInelastic::PostStepDoIt(), and G4StringChipsParticleLevelInterface::Propagate().

00105 {
00106   return Definition();
00107 }

G4KaonZero * G4KaonZero::KaonZeroDefinition (  )  [static]

Definition at line 99 of file G4KaonZero.cc.

References Definition().

Referenced by G4MesonConstructor::ConstructLightMesons(), G4QPDGToG4Particle::DefineAllParticles(), G4ParticleTypeConverter::G4ParticleTypeConverter(), and G4StringChipsParticleLevelInterface::Propagate().

00100 {
00101   return Definition();
00102 }


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