1 / 17

ALICE Report on the Use of VMC

This report provides an introduction to the concept of Virtual Monte Carlo (VMC) and its implementation in the ALICE software project. It discusses the separation of VMC and ALICE-specific code, the use of VMC in generator interfaces and ROOT, and the contributions made by ALICE to VMC. The report also includes details on the implementation of TGeant3, TFluka, and Pythia6 in VMC, as well as the future plans for VMC.

mblaine
Download Presentation

ALICE Report on the Use of VMC

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ALICE Report on theUse of VMC Andreas Morsch CERN Virtual MC Workshop CERN 29/11/2004

  2. Introduction • The concept of the Virtual Monte Carlo (VMC) has been gradually developed by the ALICE software project • First implemented as a specific wrapper to GEANT3, TGeant3, to allow smooth migration from FORTRAN based simulation to a C++ framework avoiding the parallel development of two framework. • The requirement to reuse the user simulation code when ALICE moves from GEANT3 to FLUKA or GEANT4 based simulation lead to an abstraction of TGeant3. • Separation of VMC and ALICE specific code allowed to move the interface to ROOT and to make it available to non-ALICE users. • The ALICE simulation framework is bases on VMC, generator interfaces and ROOT • ALICE still contributes to VMC. Recently mainly through the implementation of TFluka.

  3. AliRoot Modules G4 G3 FLUKA ISAJET AliEn  gLite AliRoot Virtual MC AliReconstruction HIJING AliSimulation EVGEN MEVSIM STEER PYTHIA6 PDF PMD EMCAL TRD ITS PHOS TOF ZDC RICH HBTP STRUCT CRT START FMD MUON TPC RALICE PROOF ESD AliAnalysis ROOT

  4. G3 G3 transport User Code G4 VMC G4 transport FLUKA transport FLUKA Reconstruction Virtual Geometrical Modeller Geometrical Modeller Visualisation VMC + TGeo

  5. Event Generator Interfaces External Generators Event cocktails Parameterization Libraries

  6. TVirtualMCApplication TVirtualMCStack TVirtualMCDecayer AliMC AliStack AliDecayerPythia ALICE Specific Implementations of VMC Components

  7. TVirtualMC TVirtualMCDecayer AliRun TVirtualMCApplication AliDecayer AliDecayerPythia TVirtualMCStack AliRunLoader AliStack AliMC AliGenerator I/O VMC in AliRoot

  8. Initialisation AliMC AliModule TVirtualMC AliRun TV..MCApplic.. Init() InitMC() Init () Gcvolu Gcpos AliMaterial AliMedium AddParticles() ConstructGeometry() CreateGeometry() InitGeometry() Init() BuildPhysics()

  9. Simulation Run AliMC TVirtualMC AliGenerator AliRun TV..MCApplic.. AliModule Run() ProcessRun() BeginEvent() GeneratePrimaries() Generate() PreTrack() Field() TrackPosition() TrackMomentum() TrackTime() IsTrackEntering() . . Stepping() StepManager() PostTrack()

  10. AliStack • Implemented as TClonesArray of TParticles • Mother-daughter relation via indices • PurifyKine() • Keep only particles along direct genealogical line between flagged secondary (e.g. secondary producing hit) and primary particle. • ReorderKine() • Reorder daughter particles of the same mother into continuous sequence. Needed for TFluka.

  11. AliMCDecayerPythia • Implemented using Pythia6 routine py1ent • Possibility to force certain predefined decay-modes • dimuon • smilileptonic • D->Kp .... • Used by • TGeant3 for decays of particles with finite lifetime but unknown decay modes • Generators like AliGenParam to decay short-lived resonances

  12. AliGenerator AliStack AliGenParam AliGenLib AliDecayer VMC components and Generators

  13. Run Time Configuration { new TGeant3("C++ Interface to Geant3"); TVirtualMCDecayer *decayer = new AliDecayerPythia(); decayer->SetForceDecay(kAll); decayer->Init(); gMC->SetExternalDecayer(decayer); gMC->SetProcess("DCAY",1); gMC->SetProcess("PAIR",1); gMC->SetProcess("COMP",1); gMC->SetProcess("PHOT",1); . . .

  14. Virtual Monte Carlo:Status and Plans • TGeant3 • Used in production • TGeant4 • Used for Geant4 physics validation • TFluka • Implemented • Testing ongoing (in collaboration with Cuban institute (CEADEN)) • Next PDC with TFluka

  15. TFluka TFluka TFluka TFluka TFluka TFluka TFlukaMCGeometry TGeoMCGeometry TFlukaConfigtOption TFlukaConfigtOption TFlukaConfigtOption TFlukaConfigOption TFluka Implementation 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 Text Input Fluka Geometry Navigation FLUKA Fluka User Routines

  16. HMPID: 5 GeV Pions Geant3 FLUKA

  17. More ... ... in Andrei Gheata’s presentation

More Related