#include <G4TauMinus.hh>
Inheritance diagram for G4TauMinus:
Static Public Member Functions | |
static G4TauMinus * | Definition () |
static G4TauMinus * | TauMinusDefinition () |
static G4TauMinus * | TauMinus () |
Definition at line 50 of file G4TauMinus.hh.
G4TauMinus * G4TauMinus::Definition | ( | ) | [static] |
Definition at line 54 of file G4TauMinus.cc.
References G4ParticleTable::FindParticle(), G4ParticleDefinition::G4ParticleDefinition(), G4ParticleTable::GetParticleTable(), G4DecayTable::Insert(), ns, G4VDecayChannel::SetBR(), G4VDecayChannel::SetDaughter(), G4ParticleDefinition::SetDecayTable(), G4VDecayChannel::SetNumberOfDaughters(), G4VDecayChannel::SetParent(), and G4ParticleDefinition::SetPDGMagneticMoment().
Referenced by TauMinus(), and TauMinusDefinition().
00055 { 00056 if (theInstance !=0) return theInstance; 00057 const G4String name = "tau-"; 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 anInstance = new G4ParticleDefinition( 00073 name, 1.77682*GeV, 2.265e-9*MeV, -1.*eplus, 00074 1, 0, 0, 00075 0, 0, 0, 00076 "lepton", 1, 0, 15, 00077 false, 290.6e-6*ns, NULL, 00078 false, "tau" 00079 ); 00080 00081 // Bohr Magnetron 00082 G4double muB = -0.5*eplus*hbar_Planck/(1.77699*GeV/c_squared) ; 00083 00084 anInstance->SetPDGMagneticMoment( muB * 2. * 1.00116); 00085 00086 //create Decay Table 00087 G4DecayTable* table = new G4DecayTable(); 00088 00089 // create decay channels 00090 G4VDecayChannel* mode; 00091 // tau- -> mu- + anti_nu_mu + nu_tau 00092 mode = new G4TauLeptonicDecayChannel("tau-",0.1736,"mu-"); 00093 table->Insert(mode); 00094 // tau- -> e- + anti_nu_e + nu_tau 00095 mode = new G4TauLeptonicDecayChannel("tau-",0.1784,"e-"); 00096 table->Insert(mode); 00097 // tau- -> pi- + nu_tau 00098 mode = new G4PhaseSpaceDecayChannel("tau-",0.1106,2,"pi-","nu_tau"); 00099 table->Insert(mode); 00100 // tau- -> pi0 + pi- + nu_tau 00101 mode = new G4PhaseSpaceDecayChannel("tau-",0.2541,3,"pi0","pi-","nu_tau"); 00102 table->Insert(mode); 00103 // tau- -> pi0 + pi0 + pi- + nu_tau 00104 mode = new G4PhaseSpaceDecayChannel(); 00105 mode->SetParent("tau-"); 00106 mode->SetBR(0.0917); 00107 mode->SetNumberOfDaughters(4); 00108 mode->SetDaughter(0,"pi0"); 00109 mode->SetDaughter(1,"pi0"); 00110 mode->SetDaughter(2,"pi-"); 00111 mode->SetDaughter(3,"nu_tau"); 00112 table->Insert(mode); 00113 // tau- -> pi- + pi- + pi+ + nu_tau 00114 mode = new G4PhaseSpaceDecayChannel(); 00115 mode->SetParent("tau-"); 00116 mode->SetBR(0.0946); 00117 mode->SetNumberOfDaughters(4); 00118 mode->SetDaughter(0,"pi-"); 00119 mode->SetDaughter(1,"pi-"); 00120 mode->SetDaughter(2,"pi+"); 00121 mode->SetDaughter(3,"nu_tau"); 00122 table->Insert(mode); 00123 00124 anInstance->SetDecayTable(table); 00125 } 00126 theInstance = reinterpret_cast<G4TauMinus*>(anInstance); 00127 return theInstance; 00128 }
G4TauMinus * G4TauMinus::TauMinus | ( | ) | [static] |
Definition at line 135 of file G4TauMinus.cc.
References Definition().
Referenced by G4QCaptureAtRest::AtRestDoIt(), G4QPhotoNuclearPhysics::ConstructParticle(), G4QInelastic::GetMeanFreePath(), G4QCaptureAtRest::GetMeanLifeTime(), G4QPDGToG4Particle::GetParticleDefinition(), G4QInelastic::IsApplicable(), G4QElastic::IsApplicable(), G4QCaptureAtRest::IsApplicable(), G4QAtomicElectronScattering::IsApplicable(), G4QInelastic::PostStepDoIt(), and G4QAtomicElectronScattering::PostStepDoIt().
00136 { 00137 return Definition(); 00138 }
G4TauMinus * G4TauMinus::TauMinusDefinition | ( | ) | [static] |
Definition at line 130 of file G4TauMinus.cc.
References Definition().
Referenced by G4LeptonConstructor::ConstructTauLeptons(), and G4QPDGToG4Particle::DefineAllParticles().
00131 { 00132 return Definition(); 00133 }