LHCb Simulation Tutorial CERN, 21 st -22 nd February 2012 01 10 100 111 01 1 01 01 00 01 01 010 10 11 01 00 B 00 l e Detector Simulation and Geant4.

Slides:



Advertisements
Similar presentations
The Geant4 Kernel: Status and Recent Developments John Apostolakis, Gabriele Cosmo – CERN / PH Makoto Asai – SLAC On behalf the Geant4 collaboration April.
Advertisements

Use of G EANT 4 in CMS AIHENP’99 Crete, April 1999 Véronique Lefébure CERN EP/CMC.
2003 by Jim X. Chen: Introduction to Modeling Jim X. Chen George Mason University.
25/03/2003Simulation Application for the LHCb Experiment CHEP March 2003 Presented by: W. Pokorski / CERN Authors: I. Belyaev, Ph. Charpentier,
LHCb Simulation Tutorial CERN, 21 st -22 nd February B 00 l e How to pass a detector geometry to.
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
Using ROOT geometry for FVTX reconstruction Zhengyun You Peking University Los Alamos National Lab Jan 22, 2007.
Gaudi Framework Tutorial, April Introduction.
In the G4/ROOT hierarchy there are three conceptual layers: - G4VSolid: shape, size - G4VSolid: shape, size - G4LogicalVolume: material, MF, sensitivity,
TECH 104 – Technical Graphics Communication Week 13: 3D Modeling Basics.
Geometry Detector geometry A detector geometry in Geant4 is made of a number of volumes. The largest volume is called the World volume. It must contain.
Conditions DB in LHCb LCG Conditions DB Workshop 8-9 December 2003 P. Mato / CERN.
Alignment Strategy for ATLAS: Detector Description and Database Issues
Nick Brook Current status Future Collaboration Plans Future UK plans.
Updating JUPITER framework using XML interface Kobe University Susumu Kishimoto.
Gaudi Framework Tutorial, XML The persistent world.
ALICE Simulation Framework Ivana Hrivnacova 1 and Andreas Morsch 2 1 NPI ASCR, Rez, Czech Republic 2 CERN, Geneva, Switzerland For the ALICE Collaboration.
XML in Atlas: from generic to parametric detector description Stan Bentvelsen NIKHEF Amsterdam XML workshop, CERN, May 22.
LHCb Software Week November 2003 Gennady Kuznetsov Production Manager Tools (New Architecture)
Darmstadt, 15. November 2015 Tobias Stockmanns, FZ Jülich1 A STEP to ROOT converter for the FairRoot framework ALICE-FAIR Computing Meeting, GSI,
Visual Computing Geometric Modelling 1 INFO410 & INFO350 S2 2015
CHEP /21/03 Detector Description Framework in LHCb Sébastien Ponce CERN.
The GeoModel Toolkit for Detector Description Joe Boudreau Vakho Tsulaia University of Pittsburgh CHEP’04 Interlaken.
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.
Detector Description in LHCb (Extended Version) Detector Description Workshop 4 July 2002 S. Ponce - CERN.
CHEP /21/03 Detector Description Framework in LHCb Sébastien Ponce CERN.
Detector Description in LHCb Detector Description Workshop 13 June 2002 S. Ponce, P. Mato / CERN.
LHCb Simulation Tutorial CERN, 21 st -22 nd February B 00 l e Detector Simulation Examples.
23/2/2000Status of GAUDI 1 P. Mato / CERN Computing meeting, LHCb Week 23 February 2000.
Rack Wizard LECC 2003 Frank Glege. LECC Frank Glege - CERN2/12 Content CMS databases - overview The equipment database The Rack Wizard.
IT / API 1 CERN 1-Feb-16 GBLIB: classes to deal with geometrical data Evgueni Tcherniaev IT / API CLHEP workshop, January.
General requirements for BES III offline & EF selection software Weidong Li.
CERN Tutorial, February Introduction to Gaudi.
The LHCb simulation application, Gauss: design, evolution and experience M. Clemencic (CERN), G. Corti (CERN), S. Easo (RAL), C. Jones (Cambridge), S.
Gloria Corti, CERN Credits to Chris Jones, Wouter Hulsbergen, Sajan Easo, Dima Popov Computing Workshop Online/Databases/Detector Description Session Paris.
GDML “Geometry Description Markup Language” by Daniele Francesco Kruse University of Rome “Tor Vergata” European Organization for Nuclear Research.
Marco Cattaneo, 6-Apr Issues identified in sub-detector OO software reviews Calorimeters:18th February Tracking:24th March Rich:31st March.
LHCb Simulation Tutorial CERN, 21 st -22 nd February B 00 l e Detector Simulation Examples.
Detector Description (Overview) C.Cheshkov. 25/9/2006Detector Description (C.Cheshkov)OutlineTerminology Overview on: Detector geometry implementation.
Geometry 3 I.Hrivnacova IPN, Orsay Most slides thanks to M. Asai, SLAC Cours Paris June 2007.
M.Frank, CERN/LHCb Persistency Workshop, Dec, 2004 Distributed Databases in LHCb  Main databases in LHCb Online / Offline and their clients  The cross.
Xml News Slide 1 S. Ponce, 21 June 2001 Detector description language news.
New features in ROOT geometrical modeller for representing non-ideal geometries René Brun, Federico Carminati, Andrei Gheata, Mihaela Gheata CHEP’06,
TECH 104 – Technical Graphics Communication Week 12: 3D Modeling Basics.
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.
JUNO Offline Geometry Management
Interaction with the Geant4 kernel
A C++ generic model for the GLAST Geometric Description
Interaction with the Geant4 kernel
GAUSS - GEANT4 based simulation for LHCb
LHCb Software Tutorial
Markus Frank CERN/LHCb CHEP2013, Amsterdam, October 14th–18th 2013
HEP detector description supporting the full experiment life cycle
Marco Cattaneo, CERN February 2000
XML in LHCb Detector Description Framework Radovan Chytracek CERN
SW Architecture SG meeting 22 July 1999 P. Mato, CERN
LHCb Detector Description Framework Radovan Chytracek CERN Switzerland
Various News From Detector Description
Detector Description in LHCb
Hierarchical Modeling & Constructive Solid Geometry
GAUSS - GEANT4 based simulation for LHCb
Simulation and Physics
Geant4 in HARP V.Ivanchenko For the HARP Collaboration
Detector Geometry Description
Use of GEANT4 in CMS The OSCAR Project
GAUDI Detector Description News Radovan Chytracek 5/1/2019
Detector description News
Planning next release of GAUDI
LHCb Detector Description Framework Radovan Chytracek CERN Switzerland
Presentation transcript:

LHCb Simulation Tutorial CERN, 21 st -22 nd February B 00 l e Detector Simulation and Geant4

Detector Simulation Introductions to Gauss and GEANT4 in previous lectures Goal: To simulate the performance of the real detector Simulation involves: Creating the Geometry and material descriptions in the Database Implementing any further attributes and physics processes as appropriate Particle transport using particles from the ‘generators’, hits creation Collect the hits and convert hits into the classes of the LHCb event model Simulation of the Digitization One may also reconstruct the simulated data and do further analysis 2 Simulation Tutorial - Feb. 2012

Outline: Lecture1 General Overview of detector Description Concept of Volumes and Detector Elements Geometry visualization Considerations for Design 3 Simulation Tutorial - Feb. 2012

Detector Description Architecture Sub-Architecture of Gaudi Same principles Transient/Persistent representations Focus on the “Physics Algorithm” Access to Detector Transient Store Coherent access to “all” detector data Geometry, Calibration, Slow Control, etc. Converter Algorithm Event Data Service Persistency Service Data Files Algorithm Transient Event Store Detec. Data Service Persistency Service Data Files Transient Detector Store Message Service JobOptions Service Particle Prop. Service Other Services Histogram Service Persistency Service Data Files Transient Histogram Store Application Manager Converter Event Selector Gaudi Architecture Geant4 Service (GiGa) Simulation Tutorial - Feb

Detector Description Logical Structure : Gaudi (LHCb) Breakdown of detectors Identification Geometry Structure : Gaudi(LHCb) and GEANT4 Hierarchy of geometrical volumes LogicalVolumes (unplaced dimensioned shape) PhysicalVolumes (placed volume) Other detector data : Gaudi (LHCb) Calibration, Alignment, Readout maps, Slow control, etc. Simulation Tutorial - Feb

Two Hierarchies DetElement LHCb Detector DescriptionGeometry DetElement LHCb DetElement Tracking DetElement Calo DetElement HCAL DetElement ECAL DetElement Module2 DetElement Module1 LVolume Experiment PVolume LVolume ECAL LVolume HCAL LVolume RICH PVolume LVolume HCALModule Logical structureGeometry structure Simulation Tutorial - Feb

 Logical Volume: Contains the info of the Shape and Material of a Volume  Physical Volume : Contains the info of the Logical Volume and the Physical location and orientation of a Volume.  Logical Volume also has (a ) the information regarding which other physical volumes are contained in that Volume. (b ) the graphics attributes needed for visualization. ( c ) user defined parameters needed for tracking, electromagnetic field. ( d ) flags to indicate if the volume is a sensitive detector ( to create hits) More info: LHCb  The syntax for creating these objects in the DB : Definition in DTD files, Examples from existing DB Volumes 7 Simulation Tutorial - Feb. 2012

Shapes: LHCb CSG (Constructed Solid Geometry) Solids, BREPS (Boundary Represented Solids), Tessellated Solids CSG Solids: Simple shapes,. Easy to use and gives better performance compared to other Types. A subset of those in GEANT4 is available in LHCb. These are the ones we use in LHCb Examples: (G4)Box, (G4)Tubs, (G4) Cons, G4(Trd), (G4)Sphere etc. BREPS: Volumes defined by the description of their boundaries Tessellated Solids: Volumes defined by a number of facets. Useful for importing complex shapes created by CAD systems. More Info: Boolean operations: Combination of two solids. (Subtraction, intersection,union etc). For performance reasons unions are avoided in general. Also Boolean operations with disjoint solids or those that share the surfaces to be avoided. This tutorial: CSG solids, Boolean operations. Use shapes available in LHCb. Shapes: Attributes to Volumes 8 Simulation Tutorial - Feb. 2012

Logical Structure The basic object is a Detector Element Identification Navigation (tree-like) DetectorElement is an information center Be able to answer any detector related question E.g. global position of strip#, temperature of detector, absolute channel gain, etc. Placeholder for specific code The specific answers can be coded by “Physicists” DetectorElement objects are shared by all Algorithms DetElement * MyDetector Simulation Tutorial - Feb

Transient Detector Store Algorithm Accessing Detector Data Geometry DetectorData Service Algorithm Manages store Synchronization updates DetElement Geometry Info IGeometryInfo Calibration ReadOut IReadOut ICalibration IDetElement MuonStation request request: get, update reference beginEvent Conditions DB Other DBs Persistency Service Conversion Service Conversion Service Conversion Service More about detector elements in the later part of the lecture Simulation Tutorial - Feb

Geo.StreamItems += ["/dd/Structure/LHCb/BeforeMagnetRegion/Velo“] Geo.StreamItems += ["/dd/Structure/LHCb/BeforeMagnetRegion/Rich1“] Geo.StreamItems += ["/dd/Geometry/BeforeMagnetRegion/Rich1/Rich1Surfaces“]... list of detectors (trees) to convert Geant4 Persistency Service geo DB Transient Detector Store GiGa Service GiGa Geometry Conversion Service “Geo” (Gaudi Algorithm) Converters and Service GiGaGeo G4 geometry G4 geometry The list controllable for default LHCb detector via a simple Gauss configuration condition DB LHCb Geometry and Geant4 Geometry - 11 Simulation Tutorial - Feb. 2012

Geant4 Persistency Service Data Files Transient Event Store Persistency Service Data Files Transient Detector Store GiGa Service G4 Hits G4 Kine Kine ‘Convertion’ Algorithms Action Hits ‘Conversion’ Algorithms G4 Geom GiGaGeom Conversion Service Embedded Geant4, Geant4 control and Configuration GiGa (a) Gauss (Gaudi) Event Loop controlled by Gaudi Dynamic loading of physics (sub-)lists The same Data base is used for all applications (Gauss, Boole, Brunel etc ). Detector Data Transfer and GiGa - 12 Simulation Tutorial - Feb. 2012

Transient Store Organization Standard Gaudi Transient Store “Catalogs” of Logical Volumes and Materials “Structure” as a tree All elements identified with names of the form: /xxx/yyy/zzzz Simulation Tutorial - Feb

Persistency based on XML files XML is used as persistent representation of the Structure, Geometry and Materials Why XML? Instead of inventing our own format use a standard one (extendible) Many available Parsers and Tools Considered as Strategic technology a decade ago. Simulation Tutorial - Feb

The data is accessed from an SQLITE or ORACLE database when running the applications. Data created is converted into these formats during DB updates. The DB creation is normally done by creating text files which are in XML format. One can also run from a ‘DB slice’ which is in XML format. The tags to use in these XML files are defined in the ‘DTD’ files. One needs to create the DB using the syntax specified by the DTD files. In this tutorial, few examples of this, would be discussed. GDML: new technology similar to XML, to interface with Geant4 directly But no data access by Gaudi (LHCb) Algorithms Data Base technology: data access and creation Simulation Tutorial - Feb. 2012

The LHCb Detector XML/DTD Divided into 3 main parts structure geometry material  All these defined by the DTD files Simulation Tutorial - Feb

Some Examples of XML Expressions evaluator – units & functions known 12.2*mm +.17*m / tan (34*degree) parameter : a kind of macro References : element + “ref” Simulation Tutorial - Feb

<box name="TutorialExampleSSBBasicBox" sizeX="TexSSBXSize" sizeY="TexSSBYSize" sizeZ="TexSSBZSize" /> This Logical Volume has also the Visualization attribute (color) Example of a Volume : Small Simple Box (SSB) 18 Simulation Tutorial - Feb. 2012

19 <box name="TutorialExampleSSBTypeAWithSubBox" sizeX="TexSSBXSize" sizeY="TexSSBYSize" sizeZ="TexSSBZSize" /> <tubs name="TutorialSSBTypeAHoleCyl" sizeZ="TexSSBZHoleLargeZSize" outerRadius="TexSSBZHoleRadius" /> <posXYZ x="TexSSBZHoleAXLocation" y="TexSSBZHoleAYLocation" /> Example of a Boolean Solid: SSB with a hole Simulation Tutorial - Feb. 2012

Geometry Elements :Examples DDDB : the root catalog : a list logvol : logical volume physvol : physical volume paramphysvol(2D)(3D) : replication of physical volumes tabproperty : tabulated properties <logvol material=“…” name=“…”> <physvol logvol=“…” name=“…”/> <physvol logvol=“…” name=“…”/> <logvol material=“…” name=“…”> <physvol logvol=“…” name=“…”/> <physvol logvol=“…” name=“…”/> Simulation Tutorial - Feb

Geometry Elements(2) posXYZ, posRPhiZ, posRThPhi : translations rotXYZ, rotAxis : rotations transformation : composition of transformations box, trd, trap, cons, tub, sphere union, intersection, subtraction : boolean solids surface <box name="box3“ sizeX="1*m“ sizeY="1*m“ sizeZ="15*cm"/> <tubs name="tub2“ outerRadius="15*cm“ sizeZ="25*cm"/> <box name="box3“ sizeX="1*m“ sizeY="1*m“ sizeZ="15*cm"/> <tubs name="tub2“ outerRadius="15*cm“ sizeZ="25*cm"/> Simulation Tutorial - Feb

Material Elements: Examples materials : the root catalog : a list tabproperty : tabulated properties atom isotope element : a mixture of isotopes material : mixtures of elements or materials <isotope A="11*g/mole“ name="Bor_11“ …/> <element name="Boron“ symbol="B“ …> <isotoperef href="#Bor_10“ fractionmass="0.20"/> <isotoperef href="#Bor_11“ fractionmass="0.80"/> <element name="Oxygen“ symbol="O“ …> <atom A="16*g/mole“ Zeff="8.0000"/> <component name="Carbon“ natoms="1"/> <component name="Oxygen“ natoms="2"/> <isotope A="11*g/mole“ name="Bor_11“ …/> <element name="Boron“ symbol="B“ …> <isotoperef href="#Bor_10“ fractionmass="0.20"/> <isotoperef href="#Bor_11“ fractionmass="0.80"/> <element name="Oxygen“ symbol="O“ …> <atom A="16*g/mole“ Zeff="8.0000"/> <component name="Carbon“ natoms="1"/> <component name="Oxygen“ natoms="2"/> Simulation Tutorial - Feb

Structure Elements:Examples DDDB : the root catalog : a list detelem : a detector element geometryInfo : connection to the geometry userParameter(Vector) : hook for adding parameters specific : hook for extending the DTD <geometryinfo lvname=“…” npath=“…” support=“…”/> <userParameter comment=“…” name=“…” type="string"> … … <geometryinfo lvname=“…” npath=“…” support=“…”/> <userParameter comment=“…” name=“…” type="string"> … … Simulation Tutorial - Feb

First find what all parts need to be simulated. Discuss the design with colleagues. When designing: Everything should be made as simple as possible, but not simpler. A. Einstein Check with graphics to see what you created is OK. Test for overlaps Run particles through to see if it gives the hits as intended Test with full b-event simulation Create the detector elements as needed. Write events out and then run through the reconstruction for verification. Designing the DB 24 Simulation Tutorial - Feb. 2012

Particle Transport In LHCb, the transport is done using the Transport service. In Geant4, this is done using the G4TransportManager with the help of G4Navigator.  The overlap checks are done using these.  In Geant4 the transport is done through steps. 25 Simulation Tutorial - Feb. 2012

G4Step: Contains the transient information of a step. This includes the G4StepPoint for the PreStepPoint and PostStepPoint, which contain the information of the coordinates of these points and of the volumes containing them. It also stores the change in track properties between these points. G4Track: Keeps the track info at the end of a step. (It has the info of the previous step until the completion of the AlongStepDoIt for the current step. It is also updated after the PostStepDoIt. G4Trajectory : Contains the G4TrajectoryPoints along the entire trajectory of a particle. The first point being the original vertex and the others are appended at every step. This has fewer information than the transient G4Step. The user can add extra info to this with the G4VUserTrackInformation. Particle Transport in Simulation 26 Simulation Tutorial - Feb. 2012

 To probe the particle transport and other features:  UserSteppingAction: At the end of a step  UserTrackingAction: At the beginning and end of a track  UserEventAction: At the beginning and end of an Event  UserRunAction : At the beginning and end of a Run  These are available in Gauss via the GiGa Interface. Examples of using UserSteppingAction in this tutorial Particle Transport in Simulation Simulation Tutorial - Feb

Summary The concept of Volumes and detector elements are introduced  Brief introduction to particle transport made.  Practical examples and exercises in the next part. 28 Simulation Tutorial - Feb. 2012

Extra slides 29 Simulation Tutorial - Feb. 2012

30 Particle source:  Particle Gun : Particle(s) properties defined by the user  B-Events from Pythia Managing Particle Transport : One can specify which all physics processes each particle is subjected to. Normally this is all taken care of, in a standard way. eg: Use a ‘Physics list.’ The transport of the particles happens depending on the physics specifications. Every particle has G4Transportation as a ‘process’ Particle Transport happens in steps. The length and direction of each step is defined by the physics processes acting at that step: AlongStepProcess, PostStepProcess, AtRestProcess Particles through the detector: Simulation Simulation Tutorial - Feb. 2012