G4PionZero Class Reference

#include <G4PionZero.hh>

Inheritance diagram for G4PionZero:

G4ParticleDefinition

Static Public Member Functions

static G4PionZeroDefinition ()
static G4PionZeroPionZeroDefinition ()
static G4PionZeroPionZero ()

Detailed Description

Definition at line 50 of file G4PionZero.hh.


Member Function Documentation

G4PionZero * G4PionZero::Definition (  )  [static]

Definition at line 54 of file G4PionZero.cc.

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

Referenced by G4InuclElementaryParticle::makeDefinition(), PionZero(), PionZeroDefinition(), and G4InuclElementaryParticle::type().

00055 {
00056   if (theInstance !=0) return theInstance;
00057   const G4String name = "pi0";
00058   // search in particle table]
00059   G4ParticleTable* pTable = G4ParticleTable::GetParticleTable();
00060   G4ParticleDefinition* anInstance = pTable->FindParticle(name);
00061   if (anInstance ==0)
00062   {
00063   // create particle
00064   //
00065   //    Arguments for constructor are as follows
00066   //               name             mass          width         charge
00067   //             2*spin           parity  C-conjugation
00068   //          2*Isospin       2*Isospin3       G-parity
00069   //               type    lepton number  baryon number   PDG encoding
00070   //             stable         lifetime    decay table
00071   //             shortlived      subType    anti_encoding
00072 
00073    anInstance = new G4ParticleDefinition(
00074                  name,   0.1349766*GeV,   7.8e-06*MeV,         0.0,
00075                     0,              -1,            +1,
00076                     2,               0,            -1,
00077               "meson",               0,             0,         111,
00078                 false,       8.4e-8*ns,          NULL,
00079                 false,            "pi",          111);
00080 
00081  //create Decay Table
00082   G4DecayTable* table = new G4DecayTable();
00083 
00084   // create a decay channel
00085   G4VDecayChannel* mode;
00086   // pi0 -> gamma + gamma
00087   mode = new G4PhaseSpaceDecayChannel("pi0",0.988,2,"gamma","gamma");
00088   table->Insert(mode);
00089   // pi0 -> gamma + e+ + e-
00090   mode = new G4DalitzDecayChannel("pi0",0.012,"e-","e+");
00091   table->Insert(mode);
00092 
00093    anInstance->SetDecayTable(table);
00094   }
00095   theInstance = reinterpret_cast<G4PionZero*>(anInstance);
00096   return theInstance;
00097 }

G4PionZero * G4PionZero::PionZero (  )  [static]

Definition at line 104 of file G4PionZero.cc.

References Definition().

Referenced by G4KaonMinusAbsorptionAtRest::AtRestDoIt(), G4HadLeadBias::Bias(), G4ChargeExchange::G4ChargeExchange(), G4ChargeExchangeProcess::G4ChargeExchangeProcess(), G4ComponentGGHadronNucleusXsc::G4ComponentGGHadronNucleusXsc(), G4eeTo3PiModel::G4eeTo3PiModel(), G4eeToPGammaModel::G4eeToPGammaModel(), G4GlauberGribovCrossSection::G4GlauberGribovCrossSection(), G4HadronNucleonXsc::G4HadronNucleonXsc(), G4RPGInelastic::G4RPGInelastic(), G4ReactionDynamics::GenerateXandPt(), G4PionZeroField::GetField(), G4QPDGToG4Particle::GetParticleDefinition(), G4RKPropagation::Init(), G4LightMedia::PionPlusExchange(), G4QLowEnergy::PostStepDoIt(), G4QDiffraction::PostStepDoIt(), G4RPGTwoCluster::ReactionStage(), G4RPGPionSuppression::ReactionStage(), G4RPGFragmentation::ReactionStage(), G4RPGReaction::Rotate(), G4eeTo3PiModel::SampleSecondaries(), G4RPGInelastic::SetUpPions(), G4InelasticInteraction::SetUpPions(), G4ReactionDynamics::SuppressChargedPions(), G4ReactionDynamics::TwoCluster(), and G4Absorber::WillBeAbsorbed().

00105 {
00106   return Definition();
00107 }

G4PionZero * G4PionZero::PionZeroDefinition (  )  [static]

Definition at line 99 of file G4PionZero.cc.

References Definition().

Referenced by G4AblaEvaporation::BreakItUp(), G4MesonConstructor::ConstructLightMesons(), G4QPDGToG4Particle::DefineAllParticles(), and G4ParticleTypeConverter::G4ParticleTypeConverter().

00100 {
00101   return Definition();
00102 }


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