100 likes | 117 Views
Detailed progress report on implementing GEANT4 Monte Carlo with ROOT native geometry for ALICE project. Overview of tools, interfaces, and integration steps. Future plans and conclusion.
E N D
GEANT4-ROOT navigation interface Andrei Gheata Alice offline week, 2 October 2006
Goals & status • Being able to run GEANT4 MC with a ROOT native geometry • In particular will allow us running AliRoot with G4 at full scale • Geometry conversions • Several tools to convert geometry descriptions from an unique source to different MC's • Most general tool: Virtual Geometry Model (VGM) • http://ivana.home.cern.ch/ivana/VGM.html • Not all features of a geometry can be ported to another – works just for the common denominator • Navigation based on a geometry foreign to MC proved possible • Not yet available for all MC’s GEANT4/ROOT navigation interface
ROOT-based navigation status G3 geom. VMC GEANT3 transport g2root TGeant3 TGeo TGeant3 ROOT geom. USER CODE Under development g4root VGM GEANT4 transport TGeant4 g3tog4 G4 geom. Flugg VGM FLUKA transport TFluka TGeant3 TGeo ROOT geom. GEANT4/ROOT navigation interface
Status of navigation interfaces • Navigation queries answered by different geometry • Consistent behavior • Navigation interfaces already existing for other transport MC's • GEANT3 navigation working with ROOT geometry – in production in ALICE (TGeant3TGeo interface) • FLUKA navigation based on ROOT geometry – validated with a set of FLUKA examples (TFlukaMCGeometry interface) • New navigation interface for GEANT4 – under development • TG4RootNavigator – class implementing G4 navigation with a ROOT native geometry GEANT4/ROOT navigation interface
TGeoNode G4Physical Volume TGeoVolume G4Logical Volume TGeoNode TGeoNode TGeoNode TGeoNode G4Physical Volume G4Physical Volume G4Physical Volume G4Physical Volume TGeoVolume G4Logical Volume TGeoVolume G4Logical Volume TGeoNode TGeoNode TGeoNode TGeoNode TGeoNode G4Physical Volume G4Physical Volume G4Physical Volume G4Physical Volume G4Physical Volume TGeoNode G4Physical Volume TGeoVolume TGeoVolume G4Logical Volume G4Logical Volume Implementation – Step 1 • Based on a ROOT geometry, provide to G4 something that ‘smells’ like a G4 geometry • TGeoShape => G4Solid (TG4RootSolid class) • Creation of a G4 logical hierarchy GEANT4/ROOT navigation interface
Implementation – Step 2 • TG4RootNavigator : public G4Navigator • Implements all navigation functionality needed by GEANT4 • Work almost finished at this level • Require few minor changes in GEANT4 • Some data members moved from “private” to “protected” • Some extra methods declared “virtual” GEANT4/ROOT navigation interface
Implementation – Step 3 • Plugging hybrid geometry into G4RunManager TG4RootDetectorConstruction : public G4VUserDetectorConstruction G4RunManager::SetUserInitialization(G4VUserDetectorConstruction *) • Adds in case of ALICE ~9MB in memory (including loading needed G4 libraries). Full ALICE TGeo geometry size ~17MB • Register G4RootNavigatorto G4TransportationManager G4TransportationManager::SetNavigatorForTracking(G4Navigator *) GEANT4/ROOT navigation interface
Integration with GEANT4 VMC • G4ROOT interface provides ONLY the navigation based on TGeo geometry • The interface with G4 physics, cuts, magnetic field management, … are inside G4 VMC • G4ROOT should become a client of G4 VMC • To be done after the interface validation GEANT4/ROOT navigation interface
Testing and validation • Modified G4 examples working with ROOT geometry • Comparations of results against native G4 • Running via GEANT4 VMC • Per detector, then full ALICE geometry • Optimizing the code • Implementing some G4 features natively in TGeo • “On boundary” flag • Normal computation - à la G4 (outwards solid) GEANT4/ROOT navigation interface
Conclusions • Alpha version of the interface to be tested during the coming weeks • ROOT native geometries plugged into few GEANT4 examples • Comparisons for consistency, optimizations to be done at a later stage • This will be most probably a client library for GEANT4 VMC which implements the rest of the interface to GEANT4 • Will allow performing full detector simulation using GEANT4 with the same geometry used for the other MC's • Collecting the mandatory changes to be discussed with GEANT4 team • Release in ROOT CVS hopefully together with the next G4 release GEANT4/ROOT navigation interface