#include <G4KaonZeroLong.hh>
Inheritance diagram for G4KaonZeroLong:
Static Public Member Functions | |
static G4KaonZeroLong * | Definition () |
static G4KaonZeroLong * | KaonZeroLongDefinition () |
static G4KaonZeroLong * | KaonZeroLong () |
Definition at line 50 of file G4KaonZeroLong.hh.
G4KaonZeroLong * G4KaonZeroLong::Definition | ( | ) | [static] |
Definition at line 56 of file G4KaonZeroLong.cc.
References G4ParticleTable::FindParticle(), G4ParticleDefinition::G4ParticleDefinition(), G4ParticleTable::GetParticleTable(), G4DecayTable::Insert(), ns, and G4ParticleDefinition::SetDecayTable().
Referenced by KaonZeroLong(), KaonZeroLongDefinition(), G4CascadeInterface::makeDynamicParticle(), and G4InuclElementaryParticle::type().
00057 { 00058 if (theInstance !=0) return theInstance; 00059 const G4String name = "kaon0L"; 00060 // search in particle table] 00061 G4ParticleTable* pTable = G4ParticleTable::GetParticleTable(); 00062 G4ParticleDefinition* anInstance = pTable->FindParticle(name); 00063 if (anInstance ==0) 00064 { 00065 // create particle 00066 // 00067 // Arguments for constructor are as follows 00068 // name mass width charge 00069 // 2*spin parity C-conjugation 00070 // 2*Isospin 2*Isospin3 G-parity 00071 // type lepton number baryon number PDG encoding 00072 // stable lifetime decay table 00073 // shortlived subType anti_encoding 00074 00075 anInstance = new G4ParticleDefinition( 00076 name, 0.497614*GeV, 1.287e-14*MeV, 0.0, 00077 0, -1, 0, 00078 1, 0, 0, 00079 "meson", 0, 0, 130, 00080 false, 51.16*ns, NULL, 00081 false, "kaon", 130); 00082 00083 //create Decay Table 00084 G4DecayTable* table = new G4DecayTable(); 00085 00086 // create decay channels 00087 G4VDecayChannel** mode = new G4VDecayChannel*[6]; 00088 // kaon0L -> pi0 + pi0 + pi0 00089 mode[0] = new G4PhaseSpaceDecayChannel("kaon0L",0.1952,3,"pi0","pi0","pi0"); 00090 // kaon0L -> pi0 + pi+ + pi- 00091 mode[1] = new G4PhaseSpaceDecayChannel("kaon0L",0.1254,3,"pi0","pi+","pi-"); 00092 // kaon0L -> pi- + e+ + nu_e (Ke3) 00093 mode[2] = new G4KL3DecayChannel("kaon0L",0.2027,"pi-","e+","nu_e"); 00094 // kaon0L -> pi+ + e- + anti_nu_e (Ke3) 00095 mode[3] = new G4KL3DecayChannel("kaon0L",0.2027,"pi+","e-","anti_nu_e"); 00096 // kaon0L -> pi- + mu+ + nu_mu (Kmu3) 00097 mode[4] = new G4KL3DecayChannel("kaon0L",0.1352,"pi-","mu+","nu_mu"); 00098 // kaon0L -> pi+ + mu- + anti_nu_mu (Kmu3) 00099 mode[5] = new G4KL3DecayChannel("kaon0L",0.1352,"pi+","mu-","anti_nu_mu"); 00100 00101 for (G4int index=0; index <6; index++ ) table->Insert(mode[index]); 00102 delete [] mode; 00103 00104 anInstance->SetDecayTable(table); 00105 } 00106 theInstance = reinterpret_cast<G4KaonZeroLong*>(anInstance); 00107 return theInstance; 00108 }
G4KaonZeroLong * G4KaonZeroLong::KaonZeroLong | ( | ) | [static] |
Definition at line 115 of file G4KaonZeroLong.cc.
References Definition().
Referenced by G4LElastic::ApplyYourself(), G4QCaptureAtRest::AtRestDoIt(), 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(), G4ChargeExchange::G4ChargeExchange(), G4ChargeExchangeProcess::G4ChargeExchangeProcess(), G4ComponentGGHadronNucleusXsc::G4ComponentGGHadronNucleusXsc(), G4ee2KNeutralModel::G4ee2KNeutralModel(), G4GlauberGribovCrossSection::G4GlauberGribovCrossSection(), G4HadronNucleonXsc::G4HadronNucleonXsc(), G4KineticTrack::G4KineticTrack(), G4QHadronInelasticDataSet::GetIsoCrossSection(), G4QHadronElasticDataSet::GetIsoCrossSection(), G4QInelastic::GetMeanFreePath(), G4QElastic::GetMeanFreePath(), G4QPDGToG4Particle::GetParticleDefinition(), G4QInelastic::IsApplicable(), G4QElastic::IsApplicable(), G4QHadronInelasticDataSet::IsIsoApplicable(), G4QHadronElasticDataSet::IsIsoApplicable(), G4ChipsKaonZeroInelasticXS::IsIsoApplicable(), G4ChipsKaonZeroElasticXS::IsIsoApplicable(), G4LightMedia::KaonPlusExchange(), G4LightMedia::KaonZeroShortExchange(), G4QInelastic::PostStepDoIt(), G4QElastic::PostStepDoIt(), G4QDiffraction::PostStepDoIt(), G4QAtomicElectronScattering::PostStepDoIt(), G4ReactionDynamics::ProduceStrangeParticlePairs(), G4RPGStrangeProduction::ReactionStage(), G4ee2KNeutralModel::SampleSecondaries(), G4RPGInelastic::SetUpChange(), and G4InelasticInteraction::SetUpChange().
00116 { 00117 return Definition(); 00118 }
G4KaonZeroLong * G4KaonZeroLong::KaonZeroLongDefinition | ( | ) | [static] |
Definition at line 110 of file G4KaonZeroLong.cc.
References Definition().
Referenced by G4MesonConstructor::ConstructLightMesons(), G4QPDGToG4Particle::DefineAllParticles(), and G4ParticleTypeConverter::G4ParticleTypeConverter().
00111 { 00112 return Definition(); 00113 }