TFluka Implementation and Status Andreas Morsch ALICE Offline

  • Slides: 21
Download presentation
TFluka Implementation and Status Andreas Morsch ALICE Offline Week 16/9/2004

TFluka Implementation and Status Andreas Morsch ALICE Offline Week 16/9/2004

User/Transport Code Interface n rat io g pin u ep St nfi g Co

User/Transport Code Interface n rat io g pin u ep St nfi g Co Geometry Stacking rt a P F i e ld e icl S rce u o n e tic M a g FLUKA Implementation in trad. FORTRAN frameworks: User routines / common blocks + text files (input cards)

Class Structure TVirtual. MC eedraw endraw mgdraw sodraw usdraw TFluka. MCGeometry TGeo. MCGeometry TFluka

Class Structure TVirtual. MC eedraw endraw mgdraw sodraw usdraw TFluka. MCGeometry TGeo. MCGeometry TFluka source abscff dffcff queffc rflct rfrndx stupre stprf Fluka User Routines TFluka. Configt. Option TFluka. Config. Option TFluka Text Input FLUKA idnrwr g 1 rtwr conhwr inihwr jomiwr lkdbwr lkfxwr lkmgwr lkwr nrmlwr rgrpwr isvhwr magfld Fluka Geometry Navigation TFluka. Cut. Option TFluka

VMC Interface Layer TVirtual. MCApplication TVirtual. MCStack TFluka Ali. Run Ali. Stack Ali. MC

VMC Interface Layer TVirtual. MCApplication TVirtual. MCStack TFluka Ali. Run Ali. Stack Ali. MC ALICE Specific

Geometry n Before: Flugg + Geant 4 ¡ ¡ n Very unstable Many crashes

Geometry n Before: Flugg + Geant 4 ¡ ¡ n Very unstable Many crashes Now ¡ ¡ ¡ TGeo (see A. Gheata’s presentation) TFluka. Cerenkov to store optical properties Magnetic field: magfld. cxx using TVirtual. MCApplication: : Field TGeo. Medium TFluka TGeo. Material TFluka. Cerenkov

Geometry/Materials n Material definition and assignment via FLUKA input cards ¡ ¡ n n

Geometry/Materials n Material definition and assignment via FLUKA input cards ¡ ¡ n n MATERIAL COMPOUND LOW-MAT ASSIGNMAT Automatic, on request, generation of PEMF file (alice. pemf) needed for simulation of electromagnetic processes. Fractional Z used by some detectors causes problems and will lead to un-precise or wrong simulation result ¡ Request to change this using corrections provides by Ernesto Lopez ¡ Provisional automatic run-time fixes help to make the program running n Not yet completed TFluka. MCGeometry alice. inp alice. pemf

Configuration n Using physics and cuts configuration is done via standard FLUKA formatted input

Configuration n Using physics and cuts configuration is done via standard FLUKA formatted input file. ¡ ¡ After initialisation input cards are added to a file corealice. inp to produce the input file alice. inp Since input cards cannot be produced on the flight during initialisation all user cuts and process switches are collected in two TObj. Arrays containing instances of TFluka. Cut. Option and TFluka. Config. Option.

Configuration n Some solutions and open problems ¡ ¡ ¡ HADR=0 implemented through THESHOLD

Configuration n Some solutions and open problems ¡ ¡ ¡ HADR=0 implemented through THESHOLD input card DCAY=0 not yet implemented Kinetic energy cut for n, charged hadrons, muons not yet possible material by material

Particle Sources n Primary particles ¡ n source() gets primary particles from TVirtual. MCStack

Particle Sources n Primary particles ¡ n source() gets primary particles from TVirtual. MCStack Secondary “User” Particles ¡ Before getting the next primary particle source() checks if there any unhandled secondary particles. If yes, they are put on the FLUKA stack.

Stepping n Fluka user routines rewritten in C++ ¡ ¡ Call TVirtual. MCApplication: :

Stepping n Fluka user routines rewritten in C++ ¡ ¡ Call TVirtual. MCApplication: : Stepping Pass stepping information to TFluka n n endraw ¡ ¡ n Interaction identified by icode mgdraw ¡ ¡ n Called for energy deposition event Handle Cerenkov quantum efficiency the G 3 way usdraw ¡ n current track ID, current region, process ID, . . . Normal step Signal track being resumed after secondary tracking bxdraw ¡ ¡ Boundary crossing Double step signaling exiting and entering

G 3/FLUKA: Differences in Stepping Behavior Sensitive Volume 2 1 Geant 3 1: entering

G 3/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

Stepping Actions n Stop. Track() implemented for ¡ Tracks in magnetic field n ¡

Stepping Actions n Stop. Track() implemented for ¡ Tracks in magnetic field n ¡ Cerenkov Photons n ¡ flag idisc in magfld() Setting absorption coefficient to BIG value for one step. Set. Max. Step() n n n Cannot be implemented Problem for TPC Find solution by increasing stepping precision in TPC sensitive volume ?

Decays n n Interfacing with TVirtual. Decayer not foreseen in the near future. However,

Decays n n Interfacing with TVirtual. Decayer not foreseen in the near future. However, especially the Force. Decay options are needed for signal production.

Stacking n FLUKA uses private stack during transport ¡ n Exception: Particles produced by

Stacking n FLUKA uses private stack during transport ¡ n Exception: Particles produced by user during stepping. Example: Feed-back photons TVirtual. MCStack acts as observer and mirrors FLUKA stack using the “hooks”: ¡ ¡ ¡ stupre. cxx for particles from electromag. int. stuprf. cxx for particles from hadronic int. crnkvp. cxx for Cerenkov Photons

Stacking n n For some processes (bremsstrahlung, deltaelectrons, . . . ), FLUKA interrupts

Stacking n n For some processes (bremsstrahlung, deltaelectrons, . . . ), FLUKA interrupts the tracking of the mother particle in order to follow the secondary first. However, Ali. Stack assumes that all daughter particles come in a continues series. For example first. Daughter = 5, last. Daughter = 8, means 5, 6, 7, 8 are daughter particles of the same mother. Ali. Stack: : Reorder. Kine() reorders the stack entries after tracking of each primary particle. New method TVirtual. MC: : Secondaries. Are. Ordered() used to communicate order of secondaries to TVirtual. Stack.

Organisation of the code TFluka macro fluka Fluka Config. C elasct. bin input alice.

Organisation of the code TFluka macro fluka Fluka Config. C elasct. bin input alice. pemf core alice. inp Stern heime r. dat fluodt. dat neuxsc. bin nuclear. bin scripts runfluka geo. sh tmp sigmapi. bin

Proposed Validation Process n Phase I ¡ For each detector n Try to run

Proposed Validation Process n Phase I ¡ For each detector n Try to run full event ¡ n By-eye inspection of results ¡ n n Event display Compare basic hit distributions G 3/FLUKA Validate consistency of the stack ¡ ¡ n Crashes ? Error messages ? Hit -> track relations mother<-> daughter relations Phase II ¡ ¡ Physics Validation Comparison to test beam data

Example TPC

Example TPC

HMPID: 5 Ge. V Pions Geant 3 FLUKA

HMPID: 5 Ge. V Pions Geant 3 FLUKA

HMPID: 5 Ge. V Pions

HMPID: 5 Ge. V Pions

Conclusions n Main stumbling blocks removed ¡ ¡ ¡ Flugg replaced by TGeo Automatic

Conclusions n Main stumbling blocks removed ¡ ¡ ¡ Flugg replaced by TGeo Automatic pem-file generation Consequences of transport order n n Stack reordering Track resuming signaled to user TFluka is ready for detailed testing Consolidation of TGeo-FLUKA interface ¡ see next talk