1 / 18

Detector Description in LHCb

Explore the architecture, technical choices, and status of the LHCb detector. Learn about detector data management and interfacing with Geant4. Visualize the geometry and access conditions data. Dive into persistency using XML files.

hbarela
Download Presentation

Detector Description in LHCb

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. Detector Description in LHCb Detector Description Workshop 22 May 2001 P. Mato / CERN

  2. Contents • Architecture • Technical Choices • Current Implementation Status • Plans LHCb Detector Description

  3. Converter Converter Application Manager Converter Event Selector Transient Event Store Data Files Message Service Persistency Service Event Data Service JobOptions Service Algorithm Algorithm Algorithm Data Files Transient Detector Store Particle Prop. Service Persistency Service Detec. Data Service Other Services Data Files Transient Histogram Store Persistency Service Histogram Service Architecture • 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 LHCb Detector Description

  4. Logical Structure • The basic object is a Detector Element • Identification • Navigation (tree-like) • DetElement as 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 will be coded by “Physicists” DetElement * MyDetector LHCb Detector Description

  5. ReadOut DetElement MuonStation Algorithm Accessing Detector Data • Manages store • Synchronization updates beginEvent DetectorData Service Persistency Service request request: get, update Transient Detector Store Geometry Conversion Service IDetElement IGeometryInfo GeometryInfo Algorithm ICalibration Conditions DB Calibration Conversion Service IReadOut reference Other DBs Conversion Service LHCb Detector Description

  6. Material Solid DataObject PVolume LVolume Element Mixture Solid Solid ReadOut SolidBox Isotope MuonStation DetectorElement Calibration Simplified Diagram (simplified) Association resolved on demand Hierarchy * IDetectorElement IGeometryInfo GeometryInfo ILVolume IReadOut * IMaterial ISolid IPVolume ICalibration * * Specific detector description questions from algorithms Detector Description Geometry Material LHCb Detector Description

  7. Interfacing with Geant4 • We integrate Gaudi with Geant4 by providing a number of “Gaudi Services” (GiGa) • The GiGaGeomCnvSvc is able to convert transient objects (DetElem, LVolume, Surfaces, etc.) into G4 geometry objects • The conversion do not require “user” code • Flexibility in mapping Gaudi model to Geant4 model • Single source of Geometry information LHCb Detector Description

  8. Geometry Visualization • Visualization is essential for developing the geometry • Applicable at the different data representations • Generic geometry information conversion to 3D graphics data • GaudiLab (Onx) Structure+ Geometry Vis Display CnvSvc Transient Store Visual CnvSvc Display Giga CnvSvc G4 Geometry Visual CnvSvc Display LHCb Detector Description

  9. Conditions DB • Accessing detector conditions data (calibration, slow control, alignment, etc.) should be the same as geometry data • Time validity period • Versioning • Detector geometry may simply be a concrete type of conditions data • Store it using the same DB implementation LHCb Detector Description

  10. Persistency based on XML files • XML is used as persistent representation of the Structure, Geometry and Materials (eventually also Conditions) • Mapping each C++ class into an XML element • Inheritance emulation (Generic and Specific Detector Element) • Relationships using “Links” and symbolic names • Allow math expressions with parameters and physical units • Using expression evaluator (available in CLHEP) LHCb Detector Description

  11. XML Converters • 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 “DetElement” • Available Converters • Structure: Catalog, DetElement • Geometry: LVolume, Surface, Solids (various shapes, boolean), PVolumes (parametric) • Materials: Isotope, Element, Mixture, TabulatedProperty LHCb Detector Description

  12. XML Files • Separated XML files • By sub-detector and data type (structure, geometry, material) • Low coupling of developments • Versioning done using CVS • Possible migration to the “Conditions DB” <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE DDDB (View Source for full doctype...)> <DDDB version="3.1"> <detelem name="LHCb" type="passive" classID="2"> <author>Radovan Chytracek</author> <version>0.1</version> <geometryinfo lvname="/dd/Geometry/LHCb/lvLHCb" /> <detelemref href="../Velo/structure.xml#Velo" /> <detelemref href="../Rich1/structure.xml#Rich1" /> <detelemref href="../Shield/structure.xml#Shield" /> <detelemref href="../Magnet/structure.xml#Magnet" /> <detelemref href="../Tracker/structure.xml#Tracker"/> <detelemref href="../Rich2/structure.xml#Rich2" /> <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

  13. XML Detector Description Editor • 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) LHCb Detector Description

  14. XMLEditor LHCb Detector Description

  15. Status of LHCb Detector Description • The DetDesc framework is functional (transient classes, XML DTD, XML converters, editor, etc) • Several sub-detectors are already describing their structure and geometry using the provided framework • Calorimeters (HCAL, ECAL,…), RICH, … • Other sub-detectors (+Magnet) coming soon • Visualization based on OnX (GaudiLab) • Conversion to Geant4 exists • Ready to start tests with G4 in Gaudi LHCb Detector Description

  16. Example • The complete LHCb detector geometry LHCb Detector Description

  17. Example (2) • Detailed view of the VELO and RICH I LHCb Detector Description

  18. Plans • Continue with the consolidation and deployment of the DetDesc framework • Most of sub-detector code still needs to be developed. We will discover new use-cases. • Study the possibility of generating XML converters using data dictionary services • Integration with Conditions DB • Uniform access from Algorithms • Wish to format conditions data in XML LHCb Detector Description

More Related