Primary Particle Generation

Slides:



Advertisements
Similar presentations
Primary Particle KOI, Tatsumi Geant4 V9.4 Geant4 Tutorial at Texas A&M 11-Jan
Advertisements

山下智弘 JST CREST/ 神戸大学 Borrowing especially from presentations of M. Asai(SLAC) Geant4 Japan Oct, RCNS, based on Geant4 9.0.p01.
Geant4 v9.2p02 Particle Gun Makoto Asai (SLAC) Geant4 Tutorial Course.
Geant4 v9.2p02 Primary Particle Makoto Asai (SLAC) Geant4 Tutorial Course.
Primary particle generation Makoto Asai (SLAC) Geant4 Users CERN Nov. 12 th, 2002.
Makoto Asai (SLAC) Geant4 Users SLAC Feb. 18 th, 2002 Getting Started.
Event Generators Norman Graf (SLAC) May 20, 2003 May 20, 2003.
Primary particle generation Makoto Asai (SLAC) Geant4 Users SLAC Feb. 18 th, 2002.
Makoto Asai (SLAC) Geant4 Users CERN Nov. 15 th, 2002 Customizing Run Management.
Geant4 v9.4 Primary Particle Makoto Asai (SLAC) Geant4 Tutorial Course.
Makoto Asai (SLAC) Geant4 Users CERN Nov. 11 th, 2002 Getting Started.
Makoto Asai (SLAC) Geant4 Users SLAC Feb. 18 th, 2002 Getting Started.
Geant4 v9.3p01 Primary Particle Makoto Asai (SLAC) Geant4 Tutorial Course.
14 Overview of Geant4 Examples 2 nd Finnish Geant4 Workshop 6-7 June 2005 Dennis Wright (SLAC)
Primary particle generation Makoto Asai (SLAC) Geant4 Users SLAC Feb. 18 th, 2002.
Primary Particle Makoto Asai (SLAC) Geant4 Tutorial Course Geant4 v8.2p01.
17-19 Oct, 2007Geant4 Japan Oct, 2007Geant4 Japan Oct, 2007Geant4 Japan 2007 Geant4 Japan.
Introduction to Geant4 Makoto Asai (SLAC) Geant4 Tutorial Course the 2nd Finnish Geant4 Workshop June , Helsinki Institute of Physics June 2005,
A stable interface to read and write IAEA phase-space files in Geant4 M. A. Cortés-Giraldo 1, R. Capote 2, J. M. Quesada 1 1 Dep. Física Atómica, Molecular.
14 Overview of Geant4 Examples Geant4 Tutorial 8-10 March 2004 Dennis Wright (SLAC)
Primary particle Geant4 tutorial Paris, 4-8 June 2007 Giovanni Santin ESA / ESTEC Rhea System SA With material from previous tutorials by Makoto Asai.
Tuesday, Nov 9th 9:30-12:30 –Visualization attributes –Physics processes 14:00-17:00 –Kinematics and event generation (from yesterday) Particle gun –Boolean.
1 Primary particles Geant4 User's Tutorial CERN, February 2010 Talk from previous tutorial by Giovanni Santin Ecole Geant4, Annecy 2008.
Maria Grazia Pia Detector Response Acknowledgements: A. Lechner, J. Apostolakis, M. Asai, G. Cosmo, A. Howard.
Primary particle Giovanni Santin ESA / ESTEC and RheaTech Ltd On behalf of the Geant4 collaboration Ecole Geant4 Annecy, and Nov 2008 With.
User Application Toolkit + User application toolkit Geant4 is a toolkit –i.e. you cannot “run” it out of the box –You must write.
User Application Luciano Pandola INFN-LNGS Partially based on a presentation by Maria Grazia Pia (INFN-Ge)
17-19 Oct, 2007Geant4 Japan Oct, 2007Geant4 Japan Oct, 2007Geant4 Japan 2007 Geant4 Collaboration.
Alex Howard - Event Biasing Geant4 Users - Lisbon Event biasing and Variance Reduction - Geometrical Alex Howard, CERN Geant4 Users Workshop, Lisbon.
Generating Primary Particles Each Geant4 Event starts with generation of one or multiple primary particles It is up to the user to define primary particle.
G4GeneralParticleSource Class: Developed by ESA as the space radiation environment is often quite complex in energy and angular distribution, and requires.
Maria Grazia Pia INFN Genova Salamanca, July 2002
CBM Software Meeting 1 CBM Simulation & Analysis Framework Geant3 / Gean4 configuration M. Al-Turany, D. Bertini.
Basics of Primary Particle Generation and Tracking Makoto Asai (SLAC) Geant4 Tutorial CERN May 25-27, 2005 May 2005, Geant4 v7.0p01.
Run and Event G4Run and G4RunManager In Geant4, the Run is the largest unit of simulation and it consist of a series of events Within a Run, the detector.
Makoto Asai (SLAC) Getting Started MGP: added class diagram of basic user application.
Geant4 Training 2003 Primary Particle Generation The full set of lecture notes of this Geant4 Course is available at
Introduction to Geant4 Makoto Asai (SLAC) Geant4 Tutorial Course the 2nd Finnish Geant4 Workshop June , Helsinki Institute of Physics June 2005,
STAR Simulation. Status and plans V. Perevoztchikov Brookhaven National Laboratory,USA.
1 Exercises 0 Go inside the “hadrontherapy” directory: cd hadrontherapy Copy the Hadrontherapy example to your home folder: cp –r $G4INSTALL/examples/advanced/hadrontherapy.
GPS General Particle Source
Interaction with the Geant4 kernel
The Generator Phase in Gauss
EvtGen Miniworkshop, Patrick Robbe LAL Orsay, 21 Jan 2005
Patrick Robbe, LAL Orsay, 13 May 2004
StdHepC++ L. Garren Presented by M. Fischler
Interaction with the Geant4 kernel
User Documents and Examples I
Basics of a user application
(CMS GEANT4 simulation)
Geant4:User Actions and Analysis
Primary Particle Generation
Makoto Asai (SLAC) Geant4 Users CERN Nov. 11th, 2002
Physics I: Physics Lists
Read-out and detector response
Higgs Factory Backgrounds
G4GeneralParticleSource Class:
User Application
User Application
Mantis a framework and toolkit for Geant4 simulation in CMS
User Application
The full set of lecture notes of this Geant4 Course is available at
Customizing Run Management
The full set of lecture notes of this Geant4 Course is available at
Kernel Author: Makoto Asai.
Primary particle Makoto Asai (SLAC Computing Services)
The full set of lecture notes of this Geant4 Course is available at
Decay Process Makoto Asai (SLAC)
Physics event timing Use Pythia to generate hadronic decays at 125 GeV
Simulation in Experiments searching for rare events
Presentation transcript:

Primary Particle Generation http://cern.ch/geant4

Contents Primary vertex and primary particle Primary generator What is What is available G4VUserPrimaryGeneratorAction How to use it 1

Primary Vertices and Primary Particles Primary vertices and primary particles must be stored in an event (G4Event) before it is processed. Need instances of: G4PrimaryVertex particle starting point in space, time can add user information as well G4PrimaryParticle initial momentum, polarization of particle to be propagated also PDG code linked list of daughters for decay chains These classes do not depend on G4ParticleDefinition or G4Track Primary particles may not necessarily be particles which can be tracked by Geant 1

Primary Generator All primary generators must be derived from G4VPrimaryGenerator and implement its single pure virtual method GeneratePrimaryVertex() this is where the primary vertex and primary particle are added to the event Geant4 provides some implementations of G4VPrimaryGenerator: G4HEPEvtInterface G4HEPMCInterface G4GeneralParticleSource G4ParticleGun 1

Interfaces to HEPEvt and HepMC Concrete implementations of G4VPrimaryGenerator good examples of experiment-specific primary generator implementation G4HEPEvtInterface interface to /HEPEVT/ common block which many FORTRAN HEP physics generators (e.g. Pythia-Jetset) are compliant with uses ASCII file input see novice example N04 G4HepMCInterface interface to HepMC class, which a few new (C++) HEP physics generators are compliant with uses ASCII file input or direct linking to generator through HepMC 1

General Particle Source G4GeneralParticleSource is another concrete implementation of G4VPrimaryGenerator Primary vertex is randomly chosen on surface of a given volume useful for radioactive sources pre-defined energy spectra (power law, etc.) available Capable of event biasing (variance reduction) can enhance certain particle types bias the vertex point distribution bias energy and/or direction Especially suitable for space and medical applications see advanced examples: x-ray telescope, underground physics 1

Particle Gun G4ParticleGun is an implementation of G4VPrimaryGenerator which is used to simulate a beam of particles see novice example N02 It shoots a primary particle of a certain energy and direction from a given point at a given time methods available to customize your particle gun set particle type set energy, momentum set polarization set charge number of particles shot at one time 1

G4VUserPrimaryGeneratorAction (1) This is one of the mandatory user action classes used to control the generation of primaries this class itself should not generate primaries – instead use GeneratePrimaryVertex() method of primary generator Geant4 developers are frequently asked to implement “particle shot guns” or “particle machine guns” such fancy weapons can easily be implemented by the user with set methods in G4ParticleGun repeated use of G4ParticleGun in a single event random sampling of particle type and direction additional primary generators (described earlier) 1

G4VUserPrimaryGeneratorAction (2) Constructor instantiate primary generator(s) set default items (particle, energy, etc.) GeneratePrimaries() method: randomize particle-by-particle values assign them to primary generator(s) invoke GeneratePrimaryVertex() method of primary generator(s) 1

G4VUserPrimaryGeneratorAction (3) void MyPrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) { G4ParticleDefinition* particle; G4int i = (int)(5.*G4UniformRand()); switch(i) { case 0: particle = positron; break; ...... } gun->SetParticleDefinition(particle); 1

G4VUserPrimaryGeneratorAction (4) G4double pp = momentum + (G4UniformRand() - 0.5)*sigmaMomentum; G4double mass = particle->GetPDGMass(); G4double kineticE = sqrt(pp*pp + mass*mass) – mass; gun->SetParticleEnergy(kineticE); G4double angle = (G4UniformRand() - 0.5) * sigmaAngle; gun->SetParticleMomentumDirection (G4ThreeVector(sin(angle), 0., cos(angle)); gun->GeneratePrimaryVertex(anEvent); } Repeat the above as many times as desired per event 1