G4KaonPlus Class Reference

#include <G4KaonPlus.hh>

Inheritance diagram for G4KaonPlus:

G4ParticleDefinition

Static Public Member Functions

static G4KaonPlusDefinition ()
static G4KaonPlusKaonPlusDefinition ()
static G4KaonPlusKaonPlus ()

Detailed Description

Definition at line 50 of file G4KaonPlus.hh.


Member Function Documentation

G4KaonPlus * G4KaonPlus::Definition (  )  [static]

Definition at line 54 of file G4KaonPlus.cc.

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

Referenced by KaonPlus(), KaonPlusDefinition(), G4InuclElementaryParticle::makeDefinition(), and G4InuclElementaryParticle::type().

00055 {
00056   if (theInstance !=0) return theInstance;
00057   const G4String name = "kaon+";
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.493677*GeV, 5.317e-14*MeV,    +1.*eplus,
00075                     0,              -1,             0,
00076                     1,              +1,             0,
00077               "meson",               0,             0,         321,
00078                 false,       12.380*ns,          NULL,
00079                 false,       "kaon");
00080 
00081  //create Decay Table
00082   G4DecayTable* table = new G4DecayTable();
00083 
00084  // create decay channels
00085   G4VDecayChannel** mode = new G4VDecayChannel*[6];
00086   // kaon+ -> mu+ + nu_mu
00087   mode[0] = new G4PhaseSpaceDecayChannel("kaon+",0.6355,2,"mu+","nu_mu");
00088   // kaon+ -> pi+ + pi0
00089   mode[1] = new G4PhaseSpaceDecayChannel("kaon+",0.2066,2,"pi+","pi0");
00090   // kaon+ -> pi+ + pi+ + pi-
00091   mode[2] = new G4PhaseSpaceDecayChannel("kaon+",0.0559,3,"pi+","pi+","pi-");
00092   // kaon+ -> pi+ + pi0 + pi0
00093   mode[3] = new G4PhaseSpaceDecayChannel("kaon+",0.01761,3,"pi+","pi0","pi0");
00094   // kaon+ -> pi0 + e+ + nu_e (Ke3)
00095   mode[4] = new G4KL3DecayChannel("kaon+",0.0507,"pi0","e+","nu_e");
00096   // kaon+ -> pi0 + mu+ + nu_mu (Kmu3)
00097   mode[5] = new G4KL3DecayChannel("kaon+",0.0335,"pi0","mu+","nu_mu");
00098 
00099   for (G4int index=0; index <6; index++ ) table->Insert(mode[index]);
00100   delete [] mode;
00101 
00102    anInstance->SetDecayTable(table);
00103   }
00104   theInstance = reinterpret_cast<G4KaonPlus*>(anInstance);
00105   return theInstance;
00106 }

G4KaonPlus * G4KaonPlus::KaonPlus (  )  [static]

Definition at line 113 of file G4KaonPlus.cc.

References Definition().

Referenced by G4LElastic::ApplyYourself(), G4PiKBuilder::Build(), G4KaonBuilder::Build(), G4ChipsKaonBuilder::Build(), G4RPGInelastic::CalculateMomenta(), G4InelasticInteraction::CalculateMomenta(), HadronPhysicsShielding::ConstructProcess(), HadronPhysicsQGSP_FTFP_BERT_95::ConstructProcess(), HadronPhysicsQGSP_BERT_95::ConstructProcess(), HadronPhysicsFTFP_BERT_TRV::ConstructProcess(), HadronPhysicsFTFP_BERT_HP::ConstructProcess(), HadronPhysicsFTFP_BERT::ConstructProcess(), G4HadronicProcessStore::DumpHtml(), G4ChargeExchange::G4ChargeExchange(), G4ChargeExchangeProcess::G4ChargeExchangeProcess(), G4ComponentGGHadronNucleusXsc::G4ComponentGGHadronNucleusXsc(), G4ee2KChargedModel::G4ee2KChargedModel(), G4FTFParameters::G4FTFParameters(), G4GlauberGribovCrossSection::G4GlauberGribovCrossSection(), G4HadronNucleonXsc::G4HadronNucleonXsc(), G4RPGInelastic::G4RPGInelastic(), G4KaonPlusField::GetField(), G4QHadronInelasticDataSet::GetIsoCrossSection(), G4QHadronElasticDataSet::GetIsoCrossSection(), G4QInelastic::GetMeanFreePath(), G4QElastic::GetMeanFreePath(), G4QPDGToG4Particle::GetParticleDefinition(), G4RKPropagation::Init(), G4hIonisation::InitialiseEnergyLossProcess(), G4QInelastic::IsApplicable(), G4QElastic::IsApplicable(), G4QHadronInelasticDataSet::IsIsoApplicable(), G4QHadronElasticDataSet::IsIsoApplicable(), G4ChipsKaonPlusInelasticXS::IsIsoApplicable(), G4ChipsKaonPlusElasticXS::IsIsoApplicable(), G4LightMedia::KaonZeroShortExchange(), G4RPGInelastic::MarkLeadingStrangeParticle(), G4InelasticInteraction::MarkLeadingStrangeParticle(), G4QInelastic::PostStepDoIt(), G4QElastic::PostStepDoIt(), G4QDiffraction::PostStepDoIt(), G4QAtomicElectronScattering::PostStepDoIt(), G4ReactionDynamics::ProduceStrangeParticlePairs(), G4StringChipsParticleLevelInterface::Propagate(), G4RPGStrangeProduction::ReactionStage(), and G4ee2KChargedModel::SampleSecondaries().

00114 {
00115   return Definition();
00116 }

G4KaonPlus * G4KaonPlus::KaonPlusDefinition (  )  [static]

Definition at line 108 of file G4KaonPlus.cc.

References Definition().

Referenced by G4MesonConstructor::ConstructLightMesons(), G4QAtomicPhysics::ConstructParticle(), G4EmStandardPhysics_option4::ConstructParticle(), G4EmStandardPhysics_option3::ConstructParticle(), G4EmStandardPhysics_option2::ConstructParticle(), G4EmStandardPhysics_option1::ConstructParticle(), G4EmStandardPhysics::ConstructParticle(), G4EmPenelopePhysics::ConstructParticle(), G4EmLowEPPhysics::ConstructParticle(), G4EmLivermorePolarizedPhysics::ConstructParticle(), G4EmLivermorePhysics::ConstructParticle(), G4QPDGToG4Particle::DefineAllParticles(), G4ParticleTypeConverter::G4ParticleTypeConverter(), G4XPDGElastic::G4XPDGElastic(), G4XPDGTotal::G4XPDGTotal(), and G4StringChipsParticleLevelInterface::Propagate().

00109 {
00110   return Definition();
00111 }


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