#include <G4KaonMinus.hh>
Inheritance diagram for G4KaonMinus:
Static Public Member Functions | |
static G4KaonMinus * | Definition () |
static G4KaonMinus * | KaonMinusDefinition () |
static G4KaonMinus * | KaonMinus () |
Definition at line 50 of file G4KaonMinus.hh.
G4KaonMinus * G4KaonMinus::Definition | ( | ) | [static] |
Definition at line 54 of file G4KaonMinus.cc.
References G4ParticleTable::FindParticle(), G4ParticleDefinition::G4ParticleDefinition(), G4ParticleTable::GetParticleTable(), G4DecayTable::Insert(), ns, and G4ParticleDefinition::SetDecayTable().
Referenced by KaonMinus(), KaonMinusDefinition(), 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- + anti_nu_mu 00087 mode[0] = new G4PhaseSpaceDecayChannel("kaon-",0.6355,2,"mu-","anti_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- + anti_nu_e (Ke3) 00095 mode[4] = new G4KL3DecayChannel("kaon-",0.0507,"pi0","e-","anti_nu_e"); 00096 // kaon- -> pi0 + mu- + anti_nu_mu (Kmu3) 00097 mode[5] = new G4KL3DecayChannel("kaon-",0.0335,"pi0","mu-","anti_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<G4KaonMinus*>(anInstance); 00105 return theInstance; 00106 }
G4KaonMinus * G4KaonMinus::KaonMinus | ( | ) | [static] |
Definition at line 113 of file G4KaonMinus.cc.
References Definition().
Referenced by G4LElastic::ApplyYourself(), G4QCaptureAtRest::AtRestDoIt(), G4StoppingHadronBuilder::Build(), G4PiKBuilder::Build(), G4LHEPStoppingHadronBuilder::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(), G4StoppingPhysics::ConstructProcess(), G4LHEPStoppingPhysics::ConstructProcess(), G4HadronicProcessStore::DumpHtml(), G4ChargeExchange::G4ChargeExchange(), G4ChargeExchangeProcess::G4ChargeExchangeProcess(), G4ComponentGGHadronNucleusXsc::G4ComponentGGHadronNucleusXsc(), G4FTFParameters::G4FTFParameters(), G4GlauberGribovCrossSection::G4GlauberGribovCrossSection(), G4HadronNucleonXsc::G4HadronNucleonXsc(), G4RPGInelastic::G4RPGInelastic(), G4KaonMinusField::GetField(), G4QHadronInelasticDataSet::GetIsoCrossSection(), G4QHadronElasticDataSet::GetIsoCrossSection(), G4QInelastic::GetMeanFreePath(), G4QElastic::GetMeanFreePath(), G4QPDGToG4Particle::GetParticleDefinition(), G4RKPropagation::Init(), G4hIonisation::InitialiseEnergyLossProcess(), G4QInelastic::IsApplicable(), G4QElastic::IsApplicable(), G4QCaptureAtRest::IsApplicable(), G4KaonMinusAbsorptionAtRest::IsApplicable(), G4QHadronInelasticDataSet::IsIsoApplicable(), G4QHadronElasticDataSet::IsIsoApplicable(), G4ChipsKaonMinusInelasticXS::IsIsoApplicable(), G4ChipsKaonMinusElasticXS::IsIsoApplicable(), G4QInelastic::PostStepDoIt(), G4QElastic::PostStepDoIt(), G4QDiffraction::PostStepDoIt(), G4QAtomicElectronScattering::PostStepDoIt(), G4ReactionDynamics::ProduceStrangeParticlePairs(), G4RPGStrangeProduction::ReactionStage(), and G4ee2KChargedModel::SampleSecondaries().
00114 { 00115 return Definition(); 00116 }
G4KaonMinus * G4KaonMinus::KaonMinusDefinition | ( | ) | [static] |
Definition at line 108 of file G4KaonMinus.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 }