EDM4hep Discussion
Zoom
EDM4hep Live Notes
==================
Date: Apr 09, 2024
Indico: https://indico.cern.ch/event/1403200/
Connected: Juan, Leonhard, Swathi, Tao, Juraj, Thomas, Alvaro, Brieuc, Jacopo, Frank, Pere, Gerri, Joseph, Sanghyun, Andre
Apologies:
## Introduction and General Points
### Upcoming workshops / conferences
https://github.com/orgs/key4hep/projects/4/views/1
## Progress and discussion
### ParticleID handling in EDM4hep
- [ ] Write utility PIDHandler prototype to see how things work / perform
- WIP in https://github.com/key4hep/EDM4hep/pull/268
- **Which objects should get a `ParticleID`-like *extension*?**
- Requested for Clusters, Tracks
- Option 2: Create a `ReconstructedParticle` attach Cluster / Track and relate `ParticleID` to that reco particle.
- Need to write (to disk) a "dummy"/proto reconstructed particle to be useful in the end
- Clusters: `ClusterID` would be preferred to just using `shapeParameters`
- Tracks: ARC + Drift Chamber produce tracks and a particle ID from the tracks. Produces 6 hypothesis for tracks
- Usage is a bit clunky if you have to go through the intermediate dummy/proto reco particle
- Could use associations to relate?
- Proto reconstructed particle collection would imply having a copy of the `ParticleID` for storing the final reconstructed particle.
**-> For now follow the "proto particle approach" and create an intermediate `ReconstructedParticle` collection**
- Check how hard usage is and improve if necessary later
- Harder to take things (`ClusterID` / `TrackID`) back then to introduce them
## Podio
* https://github.com/AIDASoft/podio/pulls
* https://github.com/AIDASoft/podio/issues
* https://github.com/orgs/AIDASoft/projects/2/views/1
### Merged PRs
- RNTuple API update fixes: https://github.com/AIDASoft/podio/pull/547
- Minor fix for python bindings + corresponding tests: https://github.com/AIDASoft/podio/pull/575
- Broken test covered for broken functionality
- Only uncovered because ROOT updated the `cppyy` version they vendor which broke something else on our side
- https://github.com/root-project/root/issues/15117 for details; **fixed in ROOT**
### Pythonizations for collections
- Python collections can be accessed out of bounds without an `IndexError`
- https://github.com/AIDASoft/podio/issues/458
- Use `cppyy` call back to implement it via `Collection::at`
- https://github.com/AIDASoft/podio/pull/570
- Ready to be merged?
### Homogenization of docstrings
- https://github.com/AIDASoft/podio/pull/575
- Mainly cleanup + some improvments to docstrings
### Cleanup of README
- https://github.com/AIDASoft/podio/pull/573
### Frame serialization / deserialization
- https://github.com/AIDASoft/podio/issues/565
- Not part of v1.0
## EDM4hep
* https://github.com/key4hep/EDM4hep/pulls
* https://github.com/key4hep/EDM4hep/issues
* https://github.com/orgs/key4hep/projects/5
### Merged PRs
- CMake: Don't use read only property for assigning: https://github.com/key4hep/EDM4hep/pull/293
- Switch to non-deprecated `SIOReader` and `SIOWriter`: https://github.com/key4hep/EDM4hep/pull/293
- Make constants from `edm4hep/Constants.h` available from python: https://github.com/key4hep/EDM4hep/pull/294
### Doxygen cleanup
- Include only what is necessary and keep dependencies out https://github.com/key4hep/EDM4hep/pull/289
### Covariance matrix components
- https://github.com/key4hep/EDM4hep/pull/284
- https://github.com/key4hep/EDM4hep/pull/287
- Introduce helper functionality to hide storage details and make access using enums
- Some downstream breakages
- Now with common functionality in separate `ipp` file that is included in `ExtraCode`
### Reversal of direction of some relations
- https://github.com/key4hep/EDM4hep/pull/268
- `ParticleID` should point to `ReconstructedParticle`
- Remove `ParticleID` from `Cluster` (unused in ILD standard reconstruction)
- Introduce a `PIDHandler` utility class to invert the relations
- [ ] Prototype available but metadata handling needs a bit of thought
- Related PRs:
- Make the converter deal with this: https://github.com/key4hep/k4EDM4hep2LcioConv/pull/51
- Fix usage in k4SimDelphes: https://github.com/key4hep/k4SimDelphes/pull/117
## Converter & MarlinWrapper
## AoB
## Next meeting:
* Apr 23, 09:00