1 / 14

A Geometrical Modeller for HEP

A Geometrical Modeller for HEP. René Brun, Andrei Gheata, Mihaela Gheata. General introduction. Intended as a toolkit to provide geometrical description of an experiment, full navigation functionality and additional tools to ease-up building, checking and debugging a geometry.

lave
Download Presentation

A Geometrical Modeller for HEP

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. A Geometrical Modeller for HEP René Brun, Andrei Gheata, Mihaela Gheata CHEP03

  2. General introduction • Intended as a toolkit to provide geometrical description of an experiment, full navigation functionality and additional tools to ease-up building, checking and debugging a geometry. • Its development is a common ALICE/ ROOT effort that started 1.5 years ago. • Driven by ALICE specific needs related to the simulation/ reconstruction framework, it is however designed as an experiment-independent package. • This component is being integrated in a general Virtual Monte Carlo scheme enabling running transparently several simulation MC’s starting from the same user code (see talk of Ivana Hrivnacova) and using the same geometry. • Based on a GEANT-like architecture, it is able to map and confirmed to optimize the geometry performance of several HEP experiments. The gain in speed for navigation tasks ranges from 20% (ATLAS) to 800% (CDF) compared to G3 CHEP03

  3. Handling so many geometries in a single • framework can be painful ... Simulation program Geant3-based Geant4-based Fluka-based Other geometries... G3 geometry Monitoring C++ classes G4 geometry Geometry package FLUKA geometry Geometry, Calibration, Alignment DB Geometry, Calibration, Alignment DB Reconstruction program Visualization Event display Reconstruction geometry Why a new geometrical modeller • The idea would be to be able to provide a unique geometry description CHEP03

  4. Design overview • Based on some initial requirements • Provide basic navigation features : “Where am I?”, “How far from next boundary ?”, … • Map Geant3 geometries -> smooth transition • Scalability : we deal with big geometries • Performance : it rather be faster than existing modelers • Interactivity : should be at highest possible level - users should easily build, access and debug their geometry • GEANT-like flavor (CSG based on container-contained concept) • main elements : volumes and nodes • Extensible set of 16 primitives + composite (boolean) + parametrized shapes + support for “MANY” concept • Volumetric pixelized navigation • Make use of symmetries - divisions • Geometry checking interactive tool CHEP03

  5. Navigation features • These make the difference between a geometrical modeller and a transient store providing geometrical input for other applications. • Long way from implementing to validating/optimizing/ tuning these features => took most of the time • Luckily we had a gold mine of G3 geometries to test upon. • ''Where am I ?'' =>up to 2000% performance gain compared to GEANT3 • Computing the distance to next boundary =>up to 800% gain; • Safety =>computed when needed • Normals to crossed surfaces =>on demand(ongoing work) CHEP03

  6. Mygeom.C Root > .x mygeom.C Zebra memory Data structure JVOLUM JMATE,etc void gexam1() {TGeoMaterial *mat; TGeoMixture *mix; TGeoManager *gexam1 = new TGeoManager("gexam1", "gexam1.C"); //-----------List of Materials and Mixtures-------------- mat = new TGeoMaterial("mat9","ALUMINIUM", 26.98,13,2.7); mix = new TGeoMixture("mix10","IRON(COMPOUND)“ ,3); mix->DefineElement(0,55.847,26,0.703964); mix->DefineElement(1,58.71,28,0.9900000E-01); mix->DefineElement(2,51.998,24,0.197); Geant > RZ/File 21 mygeom.geom on Zebra RZ mygeom.geom g2root mygeom.geom mygeom.C Automatic conversion from G3 CHEP03

  7. Used one million points generated by Geant3 with full physics switched on Collecting samples & validation CHEP03

  8. Benchmarks & performance for “Where am I?” vs. GEANT3 CHEP03

  9. User interface & other features • Quite simple API : Material(), Volume(), Node(), Division(), … managed by a single class. • Browsable geometry with functionality in the context menus : ray-tracing, lego plots, weight estimation, geometry checking tool, … • Perspective geometry viewing allowing picking, zooming, animation. • ROOT I/O – size of geometry and time to load are very important during geometry design/testing CHEP03

  10. Detected Not detected Geometry checker • It has to be able to check (in reasonable time) for illegal extrusions/overlaps in the geometry definition. • Extrusions • Overlaps Detected Not detected No error-free geometry found…(up to 20K > 1mm) CHEP03

  11. Geant3.tar.gz includes an upgraded Geant3 with a C++ interface Geant4_mc.tar.gz includes the TVirtualMC <--> Geant4 interface classes G3 G3 transport VMC G4 G4 transport FLUKA transport FLUKA Virtual Geometrical Modeller Geometrical Modeller Visualisation Reconstruction The Virtual MC integration • Allows running several MC's starting from the same code and having the same geometry for simulation, reconstruction and event display User code CHEP03

  12. Conclusions • A new geometrical modeller able to represent a large number of HEP experiments is being developed by ALICE and ROOT teams. • This will provide an unique representation of ALICE geometry and will allow running transparently several MC’s starting from the same user-code. • Performance was the highest priority during the development and this is reflected by the benchmarks. • The code is available in ROOT and we welcome everybody to use it ! CHEP03

  13. Benchmarks & performance for “Where am I?” vs. G3 CHEP03

  14. Benchmarks & performance for “distance to next” vs. G3 CHEP03

More Related