310 likes | 439 Views
TFluka Implementation and Validation Status. Andreas Morsch ALICE Offline Week 21/2/2005. User/Transport Code Interface. Categories:. Geometry. Stepping. Configuration. FLUKA. Magnetic Field. Particle Source. Stacking. Implementation in trad. FORTRAN frameworks:
E N D
TFlukaImplementation and Validation Status Andreas Morsch ALICE Offline Week 21/2/2005
User/Transport Code Interface Categories: Geometry Stepping Configuration FLUKA Magnetic Field Particle Source Stacking Implementation in trad. FORTRAN frameworks: User routines / common blocks + text files (input cards)
TFluka TFluka TFluka TFluka TFluka TFluka TFluka TFluka TFluka TFluka TFlukaMCGeometry TGeoMCGeometry TFlukaScoringOption TFlukaConfigtOption TFlukaConfigOption TFlukaConfigtOption TFlukaScoringOption TFlukaConfigtOption TFlukaScoringOption TFlukaScoringOption Class Structure idnrwr g1wr g1rtwr conhwr inihwr jomiwr lkdbwr lkfxwr lkmgwr lkwr nrmlwr rgrpwr isvhwr magfld TVirtualMC eedraw endraw mgdraw sodraw usdraw source abscff dffcff queffc rflct rfrndx stupre stprf TFluka Physics Configuration Text Input Fluka Geometry Navigation FLUKA Fluka User Routines Stepping and Stacking
VMC Interface Layer TVirtualMCApplication TVirtualMCStack gSystem->Load("libGeom"); gSystem->Load("libTFluka"); new TFluka(“TFluka"); AliRun AliStack TVirtualMC AliMC TFluka ALICE Specific
Improvements since last Offline Week • Class design • Construction and writing of FLUKA input cards moved to TFlukaConfigOption • TFlukaConfigOption stores all cuts and process options for one material. • Before: one object per cut/process • Much easier to resolve dependences between cuts and processes. • Class TFlukaScoringOption for FLUKA specific scoring added (Barbara Dalena) • Dose, fluence, etc. scoring on user defined mesh.
Improvements since last Offline Week (cont.) • TFluka/TFlukaMCGeometry • Initialisation calling sequence exactly like in TGeant3 • This solved a problem with ITS digitisation. • Some energy deposition double countings corrected. • Resuming of transport of particle after interrupt for secondary tracking got its own signal code (40). • Track properties are stored at interrupt and restored when resuming.
Improvements since last Offline Week (cont.) • TFluka/TFlukaMCGeometry • Some missing methods implemented (most not used by ALICE) • ParticleMass(..), ParticleName(..), ParticleCharge(..), ParticleLifeTime(..), Gfpart(..), StopRun(), StopEvent(), StepProcess() • SetMaxStep(), MaxStep() implemented via FLUKA STEPSZ common block • Very important for TPC ionization loss simulation. • Stepping() called at Cerenkov production point. • Not provided by native FLUKA. Should be moved there. • Creation of peg files taking into account cuts on photon and electron energies • Creation of pemf file separated from writing of material definitions.
Improvements since last Offline Week (cont.) • TFlukaCerenkov • User defined reflectivity added • G3 behavior for metal/dielectric boundary • Important for T0 • TFlukaConfigOption • For neutron kinetic energy cut < 19.6 MeV we assume that low-energy neutron transport is requested and the cut is put back to 19.6 MeV which is the upper boundary of the last group.
G3/FLUKA: Differences in Stepping Behavior Sensitive Volume 2 1 Geant 3 1: entering 1: exiting 2: entering 2: exiting FLUKA 1: entering 1: disappeared 2: entering 2: exiting 1: entering 1:exiting 2 hits 3 hits
Organisation of the code TFluka fluka macro Fluka Config.C elasct.bin fluodt.dat input alice.pemf core alice .inp Sternheimer. dat neuxsc.bin nuclear.bin scripts runflukageo.sh tmp sigmapi.bin
Proposed Validation Process • Phase I • For each detector • Try to run full event • Crashes ? Error messages ? • By-eye inspection of results • Event display • Compare basic hit distributions G3/FLUKA • Validate consistency of the stack • Hit -> track relations • mother<-> daughter relations • Phase II • Physics Validation • Comparison to test beam data
Status • PHASE I • (Almost) finished for • HMPID (D. Stocco) • TPC (A. Abrahantes, E. Lopez, R. Diaz) • FMD (Ch. Holm) • ITS (M. Lopez) • T0 (Alla Maevskaya) • STRUCT = Absorber Simulation (A. M.) • PHASE II • ITS Testbeam (M. Lopez) • HMPID (G3 has been already tuned to reproduce test-beam data)
HMPID: 5 GeV Pions Geant3 FLUKA
TPC – Ionization Energy Loss STEP > 6 mm
Explanation DE (GeV) dx (cm) DE < 2 <Eion>: no fluctuations
How to solve this problem • Agreed with FLUKA authors • Short term: Implement G3 behavior for small DE. • Sample from Gaussian instead of discrete distribution. • Extent to DE = 0. • Long term: special effort for gases used in ALICE (Ne, Ar, ..). • Correct level structure and oscillator strengths.
ITS – SPD: Charge per Hit Fluka produces more hits !
T0 Alla Maevskaya
FMD • Only technical test • StepManager works as expected • Testing has lead to a correction of a small bug in TGeoVolume affecting divisions
Absorber simulations(MUON+SHIL+ABSO+...) Radial Hit Distribution
Absorber simulationsKinetic Energy of Secondaries Pions Protons Muons Electrons
Conclusions • TFluka testing well advanced • Good agreement with G3 and Testbeam • Some detectors still missing • TRD, PHOS, TOF