Detector Description in LHCb Detector Description Workshop 22
Detector Description in LHCb Detector Description Workshop 22 May 2001 P. Mato / CERN 22/05/2001 LHCb Detector Description
Contents u Architecture u Technical Choices u Current Implementation Status u Plans 22/05/2001 LHCb Detector Description 2
Architecture u u u Sub-Architecture of Gaudi – Same principles – Transient/Persistent representations Focus on the “Physics Algorithm” Coherent access to “all” detector data – Geometry, Calibration, Slow Control, etc. Gaudi Architecture Application Manager Message Service Job. Options Service Event Data Service Other Services LHCb Detector Description Persistency Service Data Files Transient Event Store Algorithm Particle Prop. Service 22/05/2001 Converter Event Selector Detec. Data Service Transient Detector Store Persistency Service Data Files Histogram Service Transient Histogram Store Persistency Service Data Files 3
Logical Structure u u The basic object is a Detector Element – Identification – Navigation (tree-like) Det. Element as information center – Be able to answer any detector related question » E. g. global position of strip#, temperature of detector, absolute channel gain, etc. Det. Element * My. Detector – Placeholder for specific code » The specific answers will be coded by “Physicists” 22/05/2001 LHCb Detector Description 4
Algorithm Accessing Detector Data • Manages store • Synchronization updates begin. Event request Detector. Data Service request: get, update Persistency Service IDet. Element IGeometry. Info Geometry Info Algorithm Det. Element ICalibration IRead. Out reference Geometry Conversion Service Conditions DB Conversion Service Other DBs Read. Out Muon. Station Transient Detector Store 22/05/2001 Conversion Service LHCb Detector Description 5
Simplified Diagram (simplified) Data. Object Hierarchy IDetector. Element IGeometry. Info Geometry Info Detector. Element IRead. Out ICalibration Muon. Station Calibration Specific detector description questions from algorithms Detector Description 22/05/2001 Read. Out Association resolved on demand * ILVolume * LVolume Material ISolid IPVolume Solid. Box Geometry LHCb Detector Description Mixture Element * Isotope * Material 6
Interfacing with Geant 4 u We integrate Gaudi with Geant 4 by providing a number of “Gaudi Services” (Gi. Ga) u The Gi. Ga. Geom. Cnv. Svc is able to convert transient objects (Det. Elem, LVolume, Surfaces, etc. ) into G 4 geometry objects – The conversion do not require “user” code – Flexibility in mapping Gaudi model to Geant 4 model u Single source of Geometry information 22/05/2001 LHCb Detector Description 7
Geometry Visualization u Visualization is essential for developing the geometry – Applicable at the different data representations u Generic geometry information conversion to 3 D graphics data u Gaudi. Lab (Onx) 22/05/2001 Structure + Geometry Vis Display Cnv. Svc Transient Store Visual Cnv. Svc Display Giga Cnv. Svc G 4 Geometry LHCb Detector Description Visual Cnv. Svc Display 8
Conditions DB u Accessing detector conditions data (calibration, slow control, alignment, etc. ) should be the same as geometry data – Time validity period – Versioning u Detector geometry may simply be a concrete type of conditions data – Store it using the same DB implementation 22/05/2001 LHCb Detector Description 9
Persistency based on XML files u XML is used as persistent representation of the Structure, Geometry and Materials (eventually also Conditions) u Mapping each C++ class into an XML element – Inheritance emulation (Generic and Specific Detector Element) – Relationships using “Links” and symbolic names u Allow math expressions with parameters and physical units – Using expression evaluator (available in CLHEP) 22/05/2001 LHCb Detector Description 10
XML Converters u Capable of converting (one way for the time being) XML into C++ objects – Originally using SAX interface, re-implemented with DOM (Xerces-C) – Specific converters for specific “Det. Element” u Available Converters – Structure: Catalog, Det. Element – Geometry: LVolume, Surface, Solids (various shapes, boolean), PVolumes (parametric) – Materials: Isotope, Element, Mixture, Tabulated. Property 22/05/2001 LHCb Detector Description 11
XML Files u Separated XML files – By sub-detector and data type (structure, geometry, material) – Low coupling of developments u Versioning done using CVS u Possible migration to the “Conditions DB” 22/05/2001 <? xml version="1. 0" encoding="UTF-8" ? > <!DOCTYPE DDDB (View Source for full doctype. . . )> <DDDB version="3. 1"> <detelem name="LHCb" type="passive" class. ID="2"> <author>Radovan Chytracek</author> <version>0. 1</version> <geometryinfo lvname="/dd/Geometry/LHCb/lv. LHCb" /> <detelemref href=". . /Velo/structure. xml#Velo" /> <detelemref href=". . /Rich 1/structure. xml#Rich 1" /> <detelemref href=". . /Shield/structure. xml#Shield" /> <detelemref href=". . /Magnet/structure. xml#Magnet" /> <detelemref href=". . /Tracker/structure. xml#Tracker"/> <detelemref href=". . /Rich 2/structure. xml#Rich 2" /> <detelemref href=". . /Spd/structure. xml#Spd" /> <detelemref href=". . /Prs/structure. xml#Prs" /> <detelemref href=". . /Ecal/structure. xml#Ecal" /> <detelemref href=". . /Hcal/structure. xml#Hcal" /> <detelemref href=". . /Muon/structure. xml#Muon" /> </detelem> </DDDB> LHCb Detector Description 12
XML Detector Description Editor u Developed an graphical editor to “hide” XML to the end-users (physicists) – It understands our model (DTD) – It understands “links” and allow us to edit a web of XML files – Generic (possible to use another DTD) – Implemented in Java (portable) 22/05/2001 LHCb Detector Description 13
XMLEditor 22/05/2001 LHCb Detector Description 14
Status of LHCb Detector Description u The Det. Desc framework is functional (transient classes, XML DTD, XML converters, editor, etc) u Several sub-detectors are already describing their structure and geometry using the provided framework – Calorimeters (HCAL, ECAL, …), RICH, … u Other sub-detectors (+Magnet) coming soon u Visualization based on On. X (Gaudi. Lab) u Conversion to Geant 4 exists – Ready to start tests with G 4 in Gaudi 22/05/2001 LHCb Detector Description 15
Example u The complete LHCb detector geometry 22/05/2001 LHCb Detector Description 16
Example (2) u Detailed view of the VELO and RICH I 22/05/2001 LHCb Detector Description 17
Plans u Continue with the consolidation and deployment of the Det. Desc framework – Most of sub-detector code still needs to be developed. We will discover new use-cases. u Study the possibility of generating XML converters using data dictionary services u Integration with Conditions DB – Uniform access from Algorithms – Wish to format conditions data in XML 22/05/2001 LHCb Detector Description 18
- Slides: 18