EDM4hep Discussion

→ Europe/Zurich
Zoom

Zoom

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

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

Date: Mar 26, 2024
Indico: https://indico.cern.ch/event/1398635/

Connected: Andre, Benedikt, Pere, Leonhard, Tao, Graeme, Alvarom Juan Miguel, Mateusz, Birgit Sylvia Stapf, Frank

Apologies: Thomas (Easter holiday in Hamburg)

## Introduction and General Points

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

- [x] Clarify whether there is a WLCG/HSF workshop preceeding CHEP
    -> No. Back to separate events for now
    
## Progress and discussion

### ParticleID handling in EDM4hep
- See presentation
- Use Gaudi TES as cache for multimap (reco -> PID) or PIDHandler?
- [ ] Write utility PIDHandler prototype to see how things work / perform

    
#### Things still left to fix
- CEPCSW has been taken out of the nightlies since we were aware of quite a few things that break and that we couldn't fix in the two days we were working on the rest
    - https://github.com/cepc/CEPCSW/issues/263
    - Try to get this back into nightlies as quickly as possible
- podio schema evolution script does not detect that `Vector3f` -> `Vector3d` is not supported
    - https://github.com/AIDASoft/podio/issues/563
    
### More things (re)discovered during AIDAinnova sprint
- Work on porting to MacOS. Many items still to be resolved
    - [Notebook with some notes on fixes/workarounds](https://codimd.web.cern.ch/eDOURQAgRAu3zsmkLOLcPQ#1903-Hackathon)
    - OpenGL deprecated on MacOS. Falling back to brew now. Using that as externals for spack
- Usage differences of `float` vs `double` wrt LCIO: https://github.com/key4hep/EDM4hep/issues/265
- Subtle differences in integer type vs LCIO: https://github.com/key4hep/EDM4hep/issues/271
- Dedicated covariance matrix components (ala EDM4eic): https://github.com/key4hep/EDM4hep/issues/154 and https://github.com/key4hep/EDM4hep/issues/262
    - [ ] Give it a try
- Time field in `SimCalorimeterHit`: https://github.com/key4hep/EDM4hep/issues/147
    - [ ] No plans to add this. Close
    
## Data translation in EDM4hep from pre 1.0 to 1.0
- See presentation
- Only has to be done for **one** release before 1.0 and **one** release afterwards
- Possible in one step?
    - E.g. read leaves and recompose in new format
    - Could generate "introspection" functionality
        - Yes, but will be a lot of work and somewhat backend dependent
    - Two step process is backend indpendent

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


### Open PRs for v1.0
- RNTuple API update integration: https://github.com/AIDASoft/podio/pull/547
    - Finished, but CI currently broken due to https://github.com/root-project/root/issues/14964
    - Merge regardless?
    
    
### 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 

### 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)
    - [ ] 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`
    - Brieuc reported a use case for the `Cluster`
        - For now solved with using the `type` member and the `shapeParameters`
- 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
    
### 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

## Converter & MarlinWrapper

- Enable compiler warnings and fix them: https://github.com/key4hep/k4EDM4hep2LcioConv/pull/53
    - Switch to non-deprecated overloads: https://github.com/key4hep/k4MarlinWrapper/pull/174
- Refactor EDM4hep -> LCIO conversion for more consistency between conversion directions: https://github.com/key4hep/k4EDM4hep2LcioConv/pull/54
    - Switch to new functionality:
    - https://github.com/key4hep/k4MarlinWrapper/pull/176
    - ParticleID handling builds on top of this

## AoB

- Technical student Jacopo started to work on EDM4hep data from LEP (starting with Aleph)

## Next meeting:
* Apr 09, 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:20 → 09:40
      Update on EDM4hep.jl 20m
      Speaker: Pere Mato Vila (CERN)
    • 09:50 → 09:51
      Discussion 1m
      Speaker: Dr All