TOC PREV NEXT INDEX

Gaudi logo


Chapter 8
LHCb Event Data Model

In this chapter we present the top level structure of the LHCb Event Data model. The sub-detector specific substructure is evolving rather rapidly and is therefore not documented here. The table at http://cern.ch/lhcb-comp/Frameworks/EventModel/EventModelClasses.html shows the current implementation status.

8.1 Glossary

Event data is logically subdivided in sub-events that are the results of a processing step. The following glossary is extracted from reference [8].

MC Event
is the output of the physics event simulation. This typically includes MC Particles and MC Vertices
MC Hits
are the output of the GEANT tracking step. They typically include detector entrance and exit point, energy loss etc.
FE data
is the simulated output of the detector front end, as seen by the hardware triggers, when this is different from Raw data.
Raw data
is the output of the digitisation step of the detector simulation, and the output of the data acquisition system for real data. For example, ADC and TDC counts.
Coordinates
are the output of the reconstruction program when applied to detector hits. This typically consists of hit coordinates, calorimeter clusters etc.
Reconstructed data
is the final output of the reconstruction program. This typically consists of tracks, particle ID, energy flow objects etc.
Analysis data
is the output of specialised analysis algorithms.
PileUp Hits
are MC Hits arising from additional MC Events in the same beam crossing
Spillover Hits
are MC Hits arising from MC Events in previous and/or subsequent beam crossings
8.2 Top level event data structures

The event data objects are located in the event data store, which is one of the stores described in Chapter 7. The data in the store are arranged in a tree. This facilitates the location of objects within the store by human-readable identifiers. The tree structure consists of an Event root branching five sub-trees roughly corresponding to the processing steps: Monte Carlo event, Front End event, Raw event, Reconstructed event, and Analysis event.Table 8.1 shows the logical paths and types of these top level event structures.
Table 8.1 Top level Event data model
Logical Path
Type
"/Event"
Event
"/Event/MC"
MCEvent
"/Event/FE"
DataObject
"/Event/Raw"
RawEvent
"/Event/Rec"
RecEvent
"/Event/Anal"
AnalEvent

8.2.1 SpillOver events

The top level event structure contains four additional sub-trees which are filled only if spillover events are present. These are shown in Table 8.2.
Table 8.2 Top level Event data structures for SpillOver events
Logical Path
Type
Meaning
"/Event/PrevPrev"
Event
Event data from last but one beam crossing
"/Event/Prev"
Event
Event data from previous beam crossing
"/Event/Next"
Event
Event data from next beam crossing
"/Event/NextNext"
Event
Event data from next but one beam crossing

Each of these spillover event sub-trees can contain an independent event structure, with the five sub-trees shown in Table 8.1; in practice only the /Event/<crossing>/MC sub-tree is filled, since it is assumed that the digitisation algorithms will combine all hits from the various beam crossings into a single set of digitisings in the /Event/Raw sub-tree.

8.3 Lower level structures

The event structure below the top level depends on the implementations in the different sub-detectors. It is possible to have additional nodes in the tree structure (e.g. /Event/MC/Ecal, /Event/MC/Hcal, /Event/FE/L0, /Event/MC/L1), each of which is simply a DataObject implementing the tree structure. Hanging from each branch of the tree are container classes (e.g. /Event/MC/MCParticles, /Event/Raw/Ecal/Digit) which all inherit from DataObject (and are therefore identifiable); these containers contain instances of classes that inherit (directly or indirectly) from ContainedObject (e.g. MCParticle, CaloDigit).

8.4 Association to Monte Carlo truth

As discussed in detail in reference [6], we have adopted a convention whereby the only navigational links between simulated real data classes and the corresponding Monte Carlo truth information that can appear explicitly in the event data model are pointers going from Raw data (digitisings in the /Raw sub-tree) to the corresponding Monte Carlo hits in the /MC sub-tree. Furthermore, it has been decided that simulated raw data classes must inherit from the corresponding real data classes, adding to the real data class a pointer to the Monte Carlo truth information. The name of the derived simulation class is the same as that of the corresponding real data class, prefixed by "MC" (e.g. CaloDigit, MCCaloDigit).



Quadralay Corporation
http://www.webworks.com
Voice: (512) 719-3399
Fax: (512) 719-3606
sales@webworks.com
TOC PREV NEXT INDEX