EDM4hep Discussion

→ Europe/Zurich
Zoom

Zoom

Zoom Meeting ID
98484040528
Host
Andre Sailer
Useful links
Join via phone
Zoom URL

EDM4hep Live Notes
==================

Date: Jan 23, 2024
Indico: https://indico.cern.ch/event/1371141/

Connected: Swathi, Pere, Leonhard, Tao, Juan, Thomas, Juraj, Graeme, Frank, Mateusz, Benedikt, Andre, Sanghyun

Apologies:

## Introduction and General Points

### Upcoming workshops / conferences
https://github.com/orgs/key4hep/projects/4/views/1
    
## Progress and discussion

## Podio
* https://github.com/AIDASoft/podio/pulls
* https://github.com/AIDASoft/podio/issues
* https://github.com/orgs/AIDASoft/projects/2/views/1

### Infrastructure for documentation auto generation (including c++ & python API)
* [x] https://github.com/AIDASoft/podio/pull/383
* Based on sphinx + doxygen & breathe
* Plan to host on github pages to start with (HEAD version) 
    * [ ] Need to configure repository
* Host on cern webspace once we need versioned documentation

### interface types in podio
* [x] https://github.com/AIDASoft/podio/pull/516
* Requirement for TrackerHit introduction (see below)

### Interface for readers / writers
* https://github.com/AIDASoft/podio/pull/522 
* Would be nice for changing things easily at runtime without having to have multiple different readers
    * Current "low level" readers are hard to cover with an interface (different FrameDataT)
    
### Use black to format all python sources
* https://github.com/AIDASoft/podio/pull/528
* Pretty opinionated format, but it's an automatic tool
* [ ] Resolve merge conflicts
* [ ] Setup CMake target to do things at build time

### Open points for v1.0?
* [ ] Make pre-release


## EDM4hep
* https://github.com/key4hep/EDM4hep/pulls
* https://github.com/key4hep/EDM4hep/issues

### Some breaking changes to come before v1.0!
* No plan to do schema evolution for these!
* Remove `particleIDUsed` from `ReconstructedParticle` - https://github.com/key4hep/EDM4hep/issues/251
* Tracker hit interface - https://github.com/key4hep/EDM4hep/issues/218
* Reverse direction of some relations - https://github.com/key4hep/EDM4hep/issues/217
* More MCParticle comments - https://github.com/key4hep/EDM4hep/issues/208
* [x] **Bump schema version non-the less for each individual change?**
    * No plans to produce any data while these changes are ongoing
    * -> Just one bump

### Moving to double for MCParticle momentum
* Moving from `float` to `double` should be straight forward and can be done
* https://github.com/key4hep/EDM4hep/pull/237
* **Breaks in a few places throughout key4hep!**
    * [x] Prepare PRs and synchronize merge
    * Introduced a `Vector3d` from `Vector3f` constructor which made this much more painless than originally thought
* [x] `momentum` in `SimTrackerHit` also to `Vector3d`?
    * Not connected to the related MCParticle. Can probably stay a `float`.

### Ways to store multiple event weights
* https://github.com/key4hep/EDM4hep/issues/242
* Request from Michele Selvaggi to store multiple weights from Pythia (+Delphes)
* PR for option 2: https://github.com/key4hep/EDM4hep/pull/254
    * [x] Make nominal `weight` a `double` to for consistency?
        * Yes. Looks odd otherwise.
    
### `TrackerHit` interface
* https://github.com/key4hep/EDM4hep/pull/252
* [x] Naming? 
    * Moving current `TrackerHit` to `TrackerHit3D` breaks in a few places. Could use a new name for the interface instead?
* Covariance matrix for (x,y,z)?
    * `TrackerHitPlane` doesn't fill it in LCIO.
    * Could remove it from the interface

### Reversal of direction of some relations
- `ParticleID` should point to `ReconstructedParticle`
- Remove `ParticleID` from `Cluster` (unused in ILD standard reconstruction)
    - [ ] Remove in LCIO as well
    - This is a sort of almost requirement for the reversal, as otherwise the `ParticleID` needs two relations, one to the `Cluster` and one to the `ReconstructedParticle`
- [ ] Need to prepare PRs

    
### Avoid having relation / member names the same as type
* https://github.com/key4hep/EDM4hep/issues/247
* Remove `MC` from the relation name.
    * Consistent with `CaloHitContribution`
    * Add `ExtraCode` to keep current behavior
* Also present for the `SimPrimaryIonizationCluster` https://github.com/key4hep/EDM4hep/blob/main/edm4hep.yaml#L544

## Converters & MarlinWrapper interplay

 

## AoB


## Next meeting:
* Feb 13, 09:00

There are minutes attached to this event. Show them.
    • 09:00 → 09:05
      Introduction 5m
      Speakers: Andre Sailer (CERN), Frank-Dieter Gaede (Deutsches Elektronen-Synchrotron (DE)), Thomas Madlener (Deutsches Elektronen-Synchrotron (DESY))
    • 09:45 → 09:46
      Discussion 1m
      Speaker: Dr All