140 likes | 283 Views
Particles and Processes. Geant4 Japan Lecture Course Dec. 21 2000. Kobe Univ. H. Kurashige. Physics Processes in Geant4. Interactions between particles and materials Physics Process Track ・ Particle Material Management of these interactions Tracking. Particles in Geant4.
E N D
Particles and Processes Geant4 Japan Lecture Course Dec. 21 2000 Kobe Univ. H. Kurashige Geant4 Japan User Group Lecture Course
Physics Processes in Geant4 • Interactions between particles and materials • Physics Process • Track ・ Particle • Material • Management of these interactions • Tracking Geant4 Japan User Group Lecture Course
Particles in Geant4 • Three categories of particles from the view point of implementation • ordinary particles • shortlived particles • nucleus Geant4 Japan User Group Lecture Course
Particles: ordinary particles • Particles that can fly finite length • a) Stable particles • b) Long life (>10^-14sec) particles • Special Particles • a) Short life but need to decay in GEANT4 • b) K0 system • c) geantino/charged geantino • d) optical photon • Light Nuclei • Alpha, Deuteron, He3, Triton Geant4 Japan User Group Lecture Course
Particles : singleton • Ordinary particles are implemented as “singleton” • Each particle class type represents individual particle type. • Each class has only one static object. (singleton) • All particles will be created automatically by a compiler • You can easily to get a pointer to some particle type by using static methods such as G4Electron::Electron(); Geant4 Japan User Group Lecture Course
Particles: shortlived particles • G4VShortLivedPrticle class is a base class for particles with very short life time • Each “shortlived” particle is a “dynamic” object of derived classes of G4VShortLivedParticle • G4ShortLivedConstructor class creates all default “shortlived” particles • G4Quarks: 6Quarks/Anti-quarks • G4Gluons: gluon • G4DiQuarks: diquarks/anti-diquarks • G4ExcitedMesons: vector mesons • G4ExcitedBaryons: delta-resonaces Geant4 Japan User Group Lecture Course
Particle Related Classes • G4Track • has position, time and other information for tracking • (G4Step, G4VTouchable etc.) • G4DynamicParticle • has momentum, energy, polarization etc. • has dynamic mass, charge for ions • G4ParticleDefintion • has name, mass, charge, decay table etc. • has aprocess manager • has cut values Geant4 Japan User Group Lecture Course
Cut Value • each particle type has only one cut value in terms of range • Kinetic energy corresponding to the range cut is calculated for each material • In Geant3 cut value is defined in kinetic energy • The cut value is used only for production of secondaries • No “Tracking” Cut ! In Geant4 Geant4 Japan User Group Lecture Course
Physics Processes • 7 categories of physics processes standard electro-magnetic muons xrays optical lowenergy hadronic processes generator high_energy models photolepton_hadron low_energy cross_sections parameterisation neutron_hp stopping isotope_production decay radiative_decay transportation Geant4 Japan User Group Lecture Course
Processes and models • Process: • an interaction for a particle type • Cross-Section: GetPhysicalInteractionLength() • Reaction: DoIt() • Energy/Momentum/Position change • Secondary production • Model: • A reaction model for some energy range Geant4 Japan User Group Lecture Course
PhysicsList • All necessary processes (and models) should be registered // PionPlus pManager = G4PionPlus::PionPlus()->GetProcessManager(); // add process // Elastic Process theElasticModel = new G4LElastic(); theElasticProcess.RegisterMe(theElasticModel); pManager->AddDiscreteProcess(&theElasticProcess); Geant4 Japan User Group Lecture Course
theLEPionPlusModel = new G4LEPionPlusInelastic(); theHEPionPlusModel = new G4HEPionPlusInelastic(); thePionPlusInelastic.RegisterMe(theLEPionPlusModel); thePionPlusInelastic.RegisterMe(theHEPionPlusModel); pManager->AddDiscreteProcess(&thePionPlusInelastic); pManager->AddProcess(&thePionPlusIonisation, ordInActive,2, 2); pManager->AddProcess(&thePionPlusMult); pManager->SetProcessOrdering(&thePionPlusMult, idxAlongStep, 1); pManager->SetProcessOrdering(&thePionPlusMult, idxPostStep, 1); Geant4 Japan User Group Lecture Course
Tracking / Stepping • All Physics Processes have common interface to the Stepping Manager. Geant4 Japan User Group Lecture Course
Stepping 1. Propose Step Length: GetPhysicalInteractionLength • 2. Do “At Rest ” interaction: AtRestDoIt • annihilation at rest • 3. Do “Along Step ” interaction : AlongStepDoIt • transportation • energy loss • 4. Do “Post Step ” interaction : PostStepDoIt • delta ray • decay in flight Geant4 Japan User Group Lecture Course