EDM4hep Discussion
Vidyo
EDM4hep Live Notes
==================
Date: July 21, 2020
Indico: https://indico.cern.ch/event/940787/
This is a document for taking notes during EDM4hep meetings.
Connected: Jiaheng, Wenxing, Tao, Andre, Benedikt, Clement, Gerri, Placido, Thomas, Valentin,
Apologies: Weidong
## Introduction and General Points
## Presentation: podio refactor
* Splitting into smaller functions, reducing code duplication
* Separate (yaml) validation and code generation
* different yaml for components and datatypes, but same result
* Benedikt: could unify
* Would break backward compatibility -> major version increment
* Read both options, add deprecation warning
* PR: https://github.com/AIDASoft/podio/pull/117
* Comments
* Benedikt: use a "template engine", will make short list of possibilities
* VV: e.g., Jinja2
### Issue 116: [const_]ExtraCode
* https://github.com/AIDASoft/podio/issues/116
* Const_ExtraCode is not generated at the moment
* In PR 117 add check and raises Error if something there
* What was the original idea behind separation of const and non-const?
* Add to Const or non-const class respectively, thread-safety
* Fix documentation or implementation?
* Documented behaviour more sensible, so fix implementation
* Add to 1.0
## Progress and Discussion
###
### Delphes plugin
* PR Ready for review
* https://github.com/key4hep/EDM4hep/pull/56
* Looks good
* VV: fix to allow unchanged delphes card in gaudi algorithm
* Have to remove TreeWriter from execute list at the moment
* Put fix in upstream Delphes
* Converter issue: easier to convert individual delphes array to individual podio collection
### Spack installation
### Nightly Builds and CI
## Podio
### "event class" in podio
### Non-const getter
### Meta Data
#### Usage of "metadata" for user defined data
#### Metadata handling in CMS to be summarised by Benedikt
### Issues following MetaData Developments
* cannot write out event data previously read from file
* Issue: https://github.com/AIDASoft/podio/issues/103
* Test: https://github.com/AIDASoft/podio/pull/102
#### Writing second file with another tree
* Have to do: ``` TFile::Open("tmp.root", "RECREATE")``` ?
* Doesn't help
* Would help to see the code
### EventStore
### Schema Evolution
- Version for object descriptions, etc.
- Open issue: https://github.com/AIDASoft/podio/issues/86
### Features
* Subset collections?
## LCIOConverters
* LCIOInput
* https://github.com/ihep-sft-group/LCIOInput
* Used to reconstruct clusters with Pandora
* Publish Pandora Interface on github
## EDM4hep
### Release 1.0
* Need:
* ~~Plugin~~
* ~~Eventheader~~
* ~~Meta Data (Event / Run Parameters)~~
### Units convention?
* What's the default units?
* Comments in the data model, same as LCIO
* mm and GeV and (angles)
* Should we have several utilities to convert the units from Geant4, DD4hep, ROOT to EDM4hep?
* Geant4, Root, DD4hep can (should) use the same units from newest(?) versions (MeV and mm)
* Check edm4hep output from dd4hep
* https://github.com/key4hep/EDM4hep/blob/8078d059b2a14da571ddc29fd6baf52de045420e/plugins/DDG4EDM4hep/edm4hep/Geant4Output2EDM4hep.cpp#L445
* Probably don't need additional conversion?
### Reconstructed Particle: Mass dependent on energy?
* https://github.com/key4hep/EDM4hep/pull/69
* See explanations in PR
* Keep separate members, but also allow consistent setting?
* Add utility to return 4-vector from Reconstructed Particle
* Ignore the mass?
* Clarify consistency responsibility to user?
* Need more time to think about this
## AOB
### Conditions handling in Belle2
* Benedikt, or Martin Ritter
### Dual Readout Calorimeter Plans
* First implement DD4hep description
* Look at use of EDM4hep for simulation, different data model in use at the moment
### Next meeting:
* August 4, 2020