Download presentation
Presentation is loading. Please wait.
Published byTerence Golden Modified over 8 years ago
1
LCIO The data model of the persistency framework for LC detector simulation Frank Gaede, DESY, IT 4 th ECFA/DESY LC Workshop Amsterdam April 1 st -4 th 2003
2
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 2Frank Gaede, DESY IT Outline Introduction Introduction Software/Status (brief, see talk in simulation session) Software/Status (brief, see talk in simulation session) Data model Data model simulation simulation reconstruction reconstruction Summary Summary
3
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 3Frank Gaede, DESY IT Introduction At Prague workshop decided to have At Prague workshop decided to have Data format/persistency task force: Data format/persistency task force: “Define an abstract object persistency layer and a data model for linear collider simulation studies until the Amsterdam workshop.” People: People: Ties Behnke - DESY/SLAC Ties Behnke - DESY/SLAC Frank Gaede - DESY Frank Gaede - DESY Norman Graf - SLAC Norman Graf - SLAC Tony Johnson - SLAC Tony Johnson - SLAC Paulo Mora de Freitas - IN2P3 Paulo Mora de Freitas - IN2P3
4
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 4Frank Gaede, DESY IT Motivation Generator geometry Analysis Recon- struction Simulation LCIO Persistency Framework Java, C++, Fortran Geant3, Geant4 Java, C++, Fortran
5
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 5Frank Gaede, DESY IT data model The Persistency Framework LCIO contents data format persistency data access APIimplementation
6
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 6Frank Gaede, DESY IT Meetings Meeting at SLAC 12/09-12/13/02: Meeting at SLAC 12/09-12/13/02: (T. Behnke, F. Gaede, N. Graf, T. Johnson) agreement to have common persistency framework in one US group (hep.lcd) and in the European group: LCIO agreement to have common persistency framework in one US group (hep.lcd) and in the European group: LCIO agreement on the (first) implementation format agreement on the (first) implementation format first definition of the data model first definition of the data model Meeting at Ecole Polytechnique 01/14-01/15/03: Meeting at Ecole Polytechnique 01/14-01/15/03: ( F. Gaede, P. Mora de Freitas, H. Videau, J.-C. Brient) ( F. Gaede, P. Mora de Freitas, H. Videau, J.-C. Brient) agreement to use LCIO as the output format for the Mokka simulation framework agreement to use LCIO as the output format for the Mokka simulation framework further discussions and refinement of the data model (reconstruction) further discussions and refinement of the data model (reconstruction) Presentation and discussion of the data model at CERN miniworkshop of detector performance group 25/02/03 Presentation and discussion of the data model at CERN miniworkshop of detector performance group 25/02/03 Several phone meetings Several phone meetings
7
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 7Frank Gaede, DESY IT Status of LCIO need Java, C++ and f77 interface need Java, C++ and f77 interface C++ implementation ready for testing (sim.) C++ implementation ready for testing (sim.) currently implemented into Mokka framework currently implemented into Mokka framework f77 prototype f77 prototype Java development underway Java development underway SIO as persistency format SIO as persistency format data model for simulation and reconstruction data model for simulation and reconstruction simulation (settled) simulation (settled) reconstruction (initial proposal) reconstruction (initial proposal)
8
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 8Frank Gaede, DESY IT Overview of the Data Model: Overview of the Data Model: SimHeader Event TrackerHit CalorimeterHit RunHeader RecoHeader ReconstructedObject ReconstructedParticle MCParticle Track Cluster SIM Reco
9
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 9Frank Gaede, DESY IT Data model - LCRunHeader block: RunHeader block: RunHeader int: runNumber int: runNumber string: detectorName string: detectorName string: description string: description string[]: activeSubdetectors string[]: activeSubdetectors => describes the run setup
10
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 10Frank Gaede, DESY IT Data model - LCEventHeader EventHeader EventHeader int: runNumber int: runNumber int: evtNumber int: evtNumber string: detectorName string: detectorName String[]: subdetectorName String[]: subdetectorName blockNames: blockNames: string: blockName string: blockName string: blockType string: blockType => describes event data – needed for fast skip needed for fast skip
11
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 11Frank Gaede, DESY IT Data model – LCEvent (sim) Event Event int: runNumbe int: runNumbe int: evtNumber int: evtNumber string: detectorName string: detectorName String[]: subdetectorName String[]: subdetectorName long: timeStamp long: timeStamp
12
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 12Frank Gaede, DESY IT Data model – LCEvent (sim) MCParticle MCParticle pntr: parent pntr: parent pntr: secondparent pntr: secondparent pntr[]: daughters pntr[]: daughters int : pdgid: int : pdgid: int : hepevtStatus int : hepevtStatus (0,1,2,3 HepEvt) (201, 202 sim. decay) MCParticle cont. double[3]: start (production vertex) float[3] : momentum (at vertex) float: energy float: charge
13
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 13Frank Gaede, DESY IT Data model - LCEvent (sim) TrackerHit TrackerHit string: subdetector string: subdetector int: hitFlags (detector specific: Id, key, etc.) int: hitFlags (detector specific: Id, key, etc.) double[3]: position double[3]: position float: dEdx float: dEdx float: time float: time pntr: MCParticle pntr: MCParticle
14
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 14Frank Gaede, DESY IT Data model - LCEvent (sim) CalorimeterHit CalorimeterHit string: subdetector string: subdetector int: cellId0 int: cellId0 int: cellId1 int: cellId1 float: energy float: energy float[3]: position – optional (file size!) float[3]: position – optional (file size!) particle contributions: particle contributions: pntr: MCParticle pntr: MCParticle float: energyContribution float: energyContribution float: time float: time int: PDG (of secondary) - optional int: PDG (of secondary) - optional
15
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 15Frank Gaede, DESY IT Data model - LCEvent (reco) OutputHeader OutputHeader int: isrFlag int: isrFlag float: colliderEnergy float: colliderEnergy int: flag0 (to be defined) int: flag0 (to be defined) int: flag1 (to be defined) int: flag1 (to be defined) int: reconstructionProgramTag int: reconstructionProgramTag float: Bfield float: Bfield -> could be combined with global header…
16
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 16Frank Gaede, DESY IT Data model - LCEvent (reco) Track Track int: tracktype (full reconstr, TPC only, Muon only, etc.) int: tracktype (full reconstr, TPC only, Muon only, etc.) float: momentum ( 1/p ??) float: momentum ( 1/p ??) float: theta float: theta float: phi float: phi float: charge float: charge float: d0 (Impact Parameter in r-phi) float: d0 (Impact Parameter in r-phi) float: z0 (Impact Parameter in r-z) float: z0 (Impact Parameter in r-z) float[15]: cov.matrix float[15]: cov.matrix float: reference point (x, y, z) float: reference point (x, y, z) float: chi**2 of fit float: chi**2 of fit float[10]: dEdx (weights and probabilities) float[10]: dEdx (weights and probabilities) TrackerHits: - optional TrackerHits: - optional pntr: TrackerHit pntr: TrackerHit
17
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 17Frank Gaede, DESY IT Data model - LCEvent (reco) Cluster Cluster int: detector (type of cluster: ECAL, HCAL, combined…) int: detector (type of cluster: ECAL, HCAL, combined…) int: clustertype (neutral, charged, undefined cluster) int: clustertype (neutral, charged, undefined cluster) float: energy float: energy float[3]: position (center of cluster x, y, z) float[3]: position (center of cluster x, y, z) float[6]: errpos (cov. matrix of position) float[6]: errpos (cov. matrix of position) float: theta (intrinsic direction: theta at position) float: theta (intrinsic direction: theta at position) float: phi (intrinsic direction: phi at position) float: phi (intrinsic direction: phi at position) float[3]: errdir (cov. matrix of direction) float[3]: errdir (cov. matrix of direction) float[6]: shapeParameters (definition needed) float[6]: shapeParameters (definition needed) float[3]: weights (compatible with em., had., muon) float[3]: weights (compatible with em., had., muon) CalorimeterHits: - optional CalorimeterHits: - optional pntr: CalorimeterHit pntr: CalorimeterHit float: contribution float: contribution
18
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 18Frank Gaede, DESY IT Data model - LCEvent (reco) ReconstructedParticle ReconstructedParticle int: primaryFlag ( 0: secondary, 1: primary) int: primaryFlag ( 0: secondary, 1: primary) int: ObjectType (charged/ neutral particle) int: ObjectType (charged/ neutral particle) float[3]: 3-Vec (px, py, pz) float[3]: 3-Vec (px, py, pz) float: energy float: energy float[10]: covariance matrix float[10]: covariance matrix float: charge float: charge float[3]: reference position for 4-vector float[3]: reference position for 4-vector float[5]: PID_type (hypotheses for e, g, pi, K, p,...) float[5]: PID_type (hypotheses for e, g, pi, K, p,...) ReconstructedParticle cont. Tracks: pntr: Track float:weight Clusters: pntr: Cluster float:weight MCParticles: pntr: MCParticle float:weight have separate MC-link object ?
19
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 19Frank Gaede, DESY IT Data model - LCEvent (reco) ReconstructedObject ReconstructedObject int: ObjectType (jet, vertex,... ) int: ObjectType (jet, vertex,... ) float[5]: 4vec (4-vector of object (px, py, pz, E, M) float[5]: 4vec (4-vector of object (px, py, pz, E, M) float[3]: reference (position) float[3]: reference (position) float[15]: covariance matrix float[15]: covariance matrix reconstructedParticle: reconstructedParticle: pntr: ReconstructedParticle pntr: ReconstructedParticle float: weight float: weight => generic reconstructed objects, linked to reconstructed particles
20
LCIO, 4th ECFA/DESY Workshop, Amsterdam 2003 20Frank Gaede, DESY IT Summary LCIO is a persistency framework for linear collider simulation software LCIO is a persistency framework for linear collider simulation software Java, C++ and f77 user interface Java, C++ and f77 user interface currently implemented in simulation frameworks: currently implemented in simulation frameworks: hep.lcd hep.lcd Mokka/BRAHMS-reco Mokka/BRAHMS-reco datamodel for simulation and reconstruction output datamodel for simulation and reconstruction output -> comments welcome ! -> comments welcome ! see LCIO homepage for more details: see LCIO homepage for more details:http://www-it.desy.de/physics/projects/simsoft/lcio/index.html
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.