The New ROOT Geometry Package

Slides:



Advertisements
Similar presentations
Virtual Monte Carlo I. Hrivnacova, IPN Orsay
Advertisements

Andreas Morsch CERN/ALICE 3rd LHC Computing WorkshopMarseille, September 30, 1999 Base Classes for Simulation The ALICE Simulation Strategy Andreas Morsch.
Blueprint RTAGs1 Coherent Software Framework a Proposal LCG meeting CERN- 11 June Ren é Brun ftp://root.cern.ch/root/blueprint.ppt.
Simulation Project Major achievements (past 6 months 2007)
Geant4-based Simulation Status and Plans Dhiman Chakraborty, Guilherme Lima, Jeremy McCormick, Vishnu Zutshi Calorimetry Working Group ALCPG 2004 Winter.
Muon alignment with Cosmics: Real and Monte Carlo data S.Vecchi, S.Pozzi INFN Ferrara 37th Software Week CERN June 2009.
Usage of ROOT geometry with GEANT4
Conditions DB in LHCb LCG Conditions DB Workshop 8-9 December 2003 P. Mato / CERN.
ALICE Simulation Framework Ivana Hrivnacova 1 and Andreas Morsch 2 1 NPI ASCR, Rez, Czech Republic 2 CERN, Geneva, Switzerland For the ALICE Collaboration.
CBM Software Workshop for Future Challenges in Tracking and Trigger Concepts, GSI, 9 June 2010 Volker Friese.
Andreas Morsch, CERN EP/AIP CHEP 2003 Simulation in ALICE Andreas Morsch For the ALICE Offline Project 2003 Conference for Computing in High Energy and.
The ALICE Simulation Strategy Andreas Morsch For the ALICE Offline Group Joint STAR/ALICE Offline Meeting Brookhaven National Laboratory, Upton, NY April.
FLUKA dose and fluence simulations for CBM experiment I.Kadenko, O.Bezshyyko, V.Pluyko, V.Shevchenko National Taras Shevchenko University of Kiev.
Virtual Monte Carlo and new geometry description in STAR Maxim Potekhin STAR Collaboration Meeting, BNL July 17, 2004 July 17, 2004.
The Virtual MonteCarlo D.Adamova 2, V.Berejnoi 1, R.Brun 1, F.Carminati 1, A.Fassó 1, E.Futo 1, I.Gonzalez 3, I.Hrivnacova 4, A.Morsch 1 1 CERN, Geneva;
STAR STAR VMC tracker V. Perevoztchikov Brookhaven National Laboratory,USA.
Geant4 in production: status and developments John Apostolakis (CERN) Makoto Asai (SLAC) for the Geant4 collaboration.
New software library of geometrical primitives for modelling of solids used in Monte Carlo detector simulations Marek Gayer, John Apostolakis, Gabriele.
Jump to first page The new ROOT geometry package Andrei Gheata - ALICE Institute of Space Sciences, Bucharest.
The CMS Simulation Software Julia Yarba, Fermilab on behalf of CMS Collaboration 22 m long, 15 m in diameter Over a million geometrical volumes Many complex.
CBM Software Meeting 1 CBM Simulation & Analysis Framework Geant3 / Gean4 configuration M. Al-Turany, D. Bertini.
VMC workshop1 Ideas for G4 navigation interface using ROOT geometry A.Gheata ALICE offline week, 30 May 05.
CBM ECAL simulation status Prokudin Mikhail ITEP.
Towards comparisons between TFluka and TGeant3 ( within CbmRoot Framework) Denis Bertini (IT-GSI) Antonin Maire (IPHC Strasbourg)
Detector Description in LHCb Detector Description Workshop 13 June 2002 S. Ponce, P. Mato / CERN.
Computing R&D and Milestones LHCb Plenary June 18th, 1998 These slides are on WWW at:
Claudio Grandi INFN-Bologna CHEP 2000Abstract B 029 Object Oriented simulation of the Level 1 Trigger system of a CMS muon chamber Claudio Grandi INFN-Bologna.
ECAL software development Yuri Kharlov IHEP Protvino.
STAR VMC project Maxim Potekhin for the STAR Collaboration VMC workshop at CERN Nov
STAR Simulation. Status and plans V. Perevoztchikov Brookhaven National Laboratory,USA.
ROOT Geometry PackageL1 The New ROOT Geometry Package ACAT2002 Moscow 24 June Ren é Brun, Andrei & Mihaela Gheata CERN.
RP Software Collaboration Meeting 7 Mars 2007 Hubert Niewiadomski TOTEM, CERN Brunel University.
MONTE CARLO TRANSPORT SIMULATION Panda Computing Week 2012, Torino.
New features in ROOT geometrical modeller for representing non-ideal geometries René Brun, Federico Carminati, Andrei Gheata, Mihaela Gheata CHEP’06,
A Short Course on Geant4 Simulation Toolkit Introduction
MAUS Status A. Dobbs CM43 29 th October Contents MAUS Overview Infrastructure Geometry and CDB Detector Updates CKOV EMR KL TOF Tracker Global Tracking.
Barthélémy von Haller CERN PH/AID For the ALICE Collaboration The ALICE data quality monitoring system.
LHCf Collaboration Meeting, Catania, 4-6 July 2009 MC comparison: Fluka vs Epics Oscar Adriani.
Status of TFluka: geometry and validation Andrei Gheata ALICE Off-line week, 21 Feb
LHCb Software Week 25/11/99 Gonzalo Gracia Abril 1 r Status of Geant4 in LHCb. r Ideas on how to populate the LHCb Detector Description Data Base (LHCb.
January 2009 offline detector review - 2 nd go 1 ● Offline – Geometry – Material budget – Simulation – Raw data – OCDB parameters – Reconstruction ● Calibration.
OD Tuning: SK-IV Roger Wendell TMC Meeting
Marian Ivanov, Anar Manafov
RHD-DoPET CNAO test beam result (may 2014)
GEANT4 for Future Linear Colliders
A Virtual Montecarlo (VMC) Application for AMS-01
Migration of reconstruction and analysis software to C++
Offline Software A. Dobbs CM43 30th October 2015.
ALICE analysis preservation
Status of geometrical modeler
Geant4-based Simulation Status and Plans
Recent performance improvements in ALICE simulation/digitization
Finalizing the CBM-MVD Geometry: CAD and Simulation
Status of Brunel team and next steps
AliRoot status and PDC’04
Markus Frank CERN/LHCb CHEP2013, Amsterdam, October 14th–18th 2013
Ideas for G4 navigation interface using ROOT geometry
(CMS GEANT4 simulation)
Mokka vs. LCDG4 Comparison
Detector Description in LHCb
Use of Geant4 in experiment interactive frameworks AliRoot
A Short Course on Geant4 Simulation Toolkit Introduction
Simulation Framework Subproject cern
Simulation and Physics
Mantis a framework and toolkit for Geant4 simulation in CMS
Marc Verderi GEANT4 collaboration meeting 01/10/2002
Based on a presentation of M.Verderi
G4 Workshop 2002 Detector Description Parallel Session
VMC/GeoGeometry status report 2/2/05
The new ATLAS Fast Calorimeter Simulation
Presentation transcript:

The New ROOT Geometry Package RTAG MC CERN 8 August René Brun, Andrei & Mihaela Gheata CERN ftp://root.cern.ch/root/rootgeom.ppt ROOT Geometry PackageL

Simulation tools Geant3 Geant4 Fluka created in 1981 Still used by the majority of experiments Geant4 A huge investment Slow penetration in experiments Fluka State of the art for hadronics and neutron physics R.Brun RTAG MC ROOT Geometry Package

Detector Geometry (way 1) Simulation program Geant4-based C++ classes Geant4 geometry Visualisation XML files Reconstruction program MySQL R.Brun RTAG MC ROOT Geometry Package

The Virtual MonteCarlo For example AliRoot in Alice This strategy facilitates migration or comparisons with a common input and a common output DAQ Online Geant3 Kinematics Geometry Geant4 Fluka TVirtualMC Geant3.tar.gz includes an upgraded Geant3 with a C++ interface Hits, Digits Geant4_mc.tar.gz includes the TVirtualMC <-->Geant4 interface classes R.Brun RTAG MC ROOT Geometry Package

Virtual MC example (with G3) { // Load basic libraries gSystem->Load("libPhysics"); gSystem->Load("libMC"); gSystem->Load("$(MCINSTALL)/lib/Linux-g++/libexample01"); // Load Geant3 libraries // … skipped // MC application Ex01MCApplication* appl = new Ex01MCApplication("Example01", "The example01 MC application"); appl->InitMC("g3Config.C"); appl->RunMC(1); } void Config() g3Config.C { cout << "Create geant3" << endl; new TGeant3("C++ Interface to Geant3"); } R.Brun RTAG MC ROOT Geometry Package

Virtual MC example (with G4) { // Load basic libraries gSystem->Load("libPhysics"); gSystem->Load("libMC"); gSystem->Load("$(MCINSTALL)/lib/Linux-g++/libexample01"); // Load Geant4 libraries // … skipped // MC application Ex01MCApplication* appl = new Ex01MCApplication("Example01", "The example01 MC application"); appl->InitMC("g4Config.C"); appl->RunMC(1); } void Config() { g4Config.C // RunConfiguration for Geant4 TG4RunConfiguration* runConfiguration = new TG4RunConfiguration(); // TGeant4 new TGeant4("TGeant4", "The Geant4 Monte Carlo", runConfiguration); } R.Brun RTAG MC ROOT Geometry Package

Detector Geometry (way 2) Modelling Visualisation Interactivity Where am I? Distance to boundary Closest boundary Persistency Simulation program Geant3-based Geant4-based Fluka-based C++ classes Geometry package MySQL Reconstruction program Visualisation R.Brun RTAG MC ROOT Geometry Package

The new ROOT Geometry package Was the request Nr 1 at ROOT FNAL workshop in June 2001 The package is being developed in collaboration with Alice (Andrei & Mihaela Gheata) Alpha release in July faster than Geant3 Import from Geant3 (eg 4 LHC detectors) Interfaces to Geant3,4, Fluka in view Demos on request R.Brun RTAG MC ROOT Geometry Package

The TGeo classes in html http://root. cern. ch/root/htmldoc/ClassIndex R.Brun RTAG MC ROOT Geometry Package

TGeoManager R.Brun RTAG MC ROOT Geometry Package

TGeoShape R.Brun RTAG MC ROOT Geometry Package

TGeoVolume R.Brun RTAG MC ROOT Geometry Package

TGeoNode R.Brun RTAG MC ROOT Geometry Package

Example R.Brun RTAG MC ROOT Geometry Package

The ROOT “detector” example R.Brun RTAG MC ROOT Geometry Package

Shooting random points R.Brun RTAG MC ROOT Geometry Package

Shooting random rays R.Brun RTAG MC ROOT Geometry Package

Automatic conversion from Geant3 Zebra memory Data structure JVOLUM JMATE,etc Root > .x mygeom.C Mygeom.c 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); mat = new TGeoMaterial("mat11","COPPER",63.54,29,8.96); Geant > RZ/File 21 mygeom.geom on Zebra RZ mygeom.geom g2root mygeom.geom mygeom.C R.Brun RTAG MC ROOT Geometry Package

generated automatically Example : gexam1 //-----------List of Volumes-------------- TGeoVolume *ECAL ; ECAL = gexam1-> MakeTube("ECAL","mat15",0,5.898013,12.35774); LEAK = gexam1->MakeTube("LEAK","mat15",0,5.898013,0.5617155); LATR = gexam1->MakeTube("LATR","mat15",5.617156,5.813,11.23); BLOC = gexam1->MakeTube("BLOC","mix21",0,5.617156,11.23431); //-----------List of Nodes-------------- gexam1->SetTopVolume(ECAL); ECAL->AddNode(LEAK,1,new TGeoTranslation(0,0,-11.79603)); ECAL->AddNode(LEAK,2,new TGeoTranslation(0,0,11.79603)); ECAL->AddNode(LATR,1,gGeoIdentity); ECAL->AddNode(BLOC,1,gGeoIdentity); TGeoVolume *RTUB = BLOC->Divide("RTUB",1,20,0,0.2808578); TGeoVolume *RING = RTUB->Divide("RING",3,20,-11.31,1.131); gexam1->CloseGeometry(); } void gexam1() { TGeoMaterial *mat; TGeoMixture *mix; TGeoManager *gexam1; 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); mat = new TGeoMaterial("mat11","COPPER",63.54,29,8.96); mat = new TGeoMaterial("mat13","LEAD",207.19,82,11.35); mat = new TGeoMaterial("mat14","URANIUM",238.03,92,18.95); mat = new TGeoMaterial("mat15","AIR",14.61,7.3,0.1205E-02); mat = new TGeoMaterial("mat16","VACUUM",0,0,0); mix = new TGeoMixture("mix21","BGO(COMPOUND)",3); mix->DefineElement(0,208.98,83,0.6710563); mix->DefineElement(1,72.59,32,0.1748205); mix->DefineElement(2,15.999,8,0.1541233); mix = new TGeoMixture("mix22","LEAD GLASS",6); mix->DefineElement(0,207.19,82,0.65994); mix->DefineElement(1,39.102,19,0.7990000E-02); mix->DefineElement(2,28.088,14,0.126676); mix->DefineElement(3,22.99,11,0.4007300E-02); mix->DefineElement(4,15.999,8,0.199281); mix->DefineElement(5,74.922,33,0.2004850E-02); gexam1.C code generated automatically by g2root R.Brun RTAG MC ROOT Geometry Package

Brahms 2649 nodes R.Brun RTAG MC ROOT Geometry Package

CMS 1.3 million nodes R.Brun RTAG MC ROOT Geometry Package

Atlas 29 million nodes R.Brun RTAG MC ROOT Geometry Package

Atlas R.Brun RTAG MC ROOT Geometry Package

Atlas R.Brun RTAG MC ROOT Geometry Package

Alice R.Brun RTAG MC ROOT Geometry Package

Alice 3 million nodes R.Brun RTAG MC ROOT Geometry Package

TGeo performance vs Geant3 Number gtmedi Root Geant3/ gtmedi Root Geant3/ nodes physics physics Root random random Root Gexam1 425 3.08 1.84 1.67 6.60 4.39 1.50 Gexam3 86 2.87 2.15 1.33 3.47 2.50 1.38 Gexam4 12781 2.51 2.20 1.14 12.09 11.18 1.08 Brahms 2649 5.82 3.04 1.91 4.17 1.93 2.16 Tesla 15370 6.56 5.58 1.17 12.95 7.15 1.81 CDF 24422 14.81 4.31 3.43 20.94 5.85 3.57 Minos_near 30988 30.93 20.99 1.47 21.57 13.70 1.57 BTeVEcal 52 1.57 1.08 1.45 1.78 0.73 2.43 BTeV 295310 45.27 25.88 1.75 197.06 26.83 7.34 CMSEcal 251713 5.60 1.81 3.09 5.69 1.74 3.27 CMS 1166310 33.57 8.76 3.83 39.09 24.98 1.56 LHCb 1533488 7.98 6.75 1.18 12.58 2.89 4.35 Alice 3080198 11.50 8.63 1.33 11.45 7.28 1.57 Atlas 29046966 8.90 9.94 0.89 32.48 23.39 1.38 R.Brun RTAG MC ROOT Geometry Package

BteV R.Brun RTAG MC ROOT Geometry Package

Validation Procedure Use one million points generated by Geant3. Compare G3 path vs TGeo found path (pictures for a CDF event) R.Brun RTAG MC ROOT Geometry Package

Validation Procedure Using points generated by Geant3 applications grecord.f --> mygeom.geom, mygeom.hbook Play-back these points in Geant3 using only the Geant3 geometry package. Compute g3path, snext, safety in myresults.hbook h2root myresults.hbook myresults.root Same operation with TGeo classes. Compare g3path with tgeopath, same for snext, safety Some discrepancies with Geant3 (see next) R.Brun RTAG MC ROOT Geometry Package

Validation Procedure Differences Geant3 TGeo Due to precision problems in Geant3, points recorded at the volume boundaries may be found on the other side by TGeo. When volumes declared MANY in Geant3 overlap and have sub-volumes also MANY, Geant3 is not always reporting the right answer. In general it does not matter, sometimes it does. In this exercise, we also found original errors in the detector description, eg wrong parameters. R.Brun RTAG MC ROOT Geometry Package

Status of the implementation - test of gtnext Visualization - best tool for checking the algorithms The "width" of the boundaries due to floating point limitations was determined for some shapes This diffusion effect is crucial for fixing stepping actions in order to trigger expected inside/ouside response of the modeler The diffusion was defined as the distance between extrapolated point from step and closest point that changes this in/out response. R.Brun RTAG MC ROOT Geometry Package

Status of the implementation Geant3 geometries - almost fully mapped (still not supporting multiple positioning for volumes having shapes with negative parameters which then are divided - quite seldom topology) "Where am I ?" - fully implemented Tested on a dozen of geometries, including all 4 LHC experiments Performance w.r.t GEANT3 - OK. The average gain factor ~1.5-2.0 , increasing for flat-like geometries Consistency vs. GEANT3 response reasonable : still few % differences, but fully understood Still scope for increasing speed, specially for cylindrical symmetries, where the current voxelization algorithm is not efficient enough. R.Brun RTAG MC ROOT Geometry Package

Status of the implementation - gtnext "Which is the next crossed boundary ?" - about 80% implemented, still a couple of weeks to work on it. Algorithms per shape improved w.r.t G3 for some shapes New functionalities added : normals to surfaces at crossing points, accurate distance to closest node, direction vector to closest point Features for stepping added : flags for entering and exiting R.Brun RTAG MC ROOT Geometry Package

Summary The new Geometry Package looks very promising. We have been able to model all existing large detectors. Performance is better than Geant3. We are planing to interface it via TVirtualMC to Geant3, Geant4 and Fluka. Alpha release with ROOT version 3.03/07 R.Brun RTAG MC ROOT Geometry Package