Skip to content

Julia interface to EDM4hep (generic Event Data Model for HEP experiments)

License

Notifications You must be signed in to change notification settings

JuliaHEP/EDM4hep.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dev Build Status codecov

EDM4hep in Julia

Prototype interface to EDM4hep (generic Event Data Model for HEP experiments part of Key4hep) for Julia with the goal to have very simple structures (isbits) with the purpose to evaluate its ergonomic design and implementation performance.

See recent presentations:

Note: The main branch of this project is work-in-progress towards the > version 1 of EDM4hep. To read current EDM4hep data files you need > to use registered versions of the package being the latest tag 0.4.2, in the v0-patches branch.

Installation

The package has been registered in the General Julia registry therefore its installation is simply using the Pkg packager manager.

julia -e ‘import Pkg; Pkg.add(“EDM4hep”)’

Getting Started

julia> using EDM4hep
julia> using EDM4hep.RootIO
julia> file = "root://eospublic.cern.ch//eos/experiment/fcc/ee/generation/DelphesEvents/winter2023/IDEA/p8_ee_ZZ_ecm240/events_000189367.root"
julia> reader = RootIO.Reader(file)
┌───────────────┬────────────────────────────────────────────────────────────────────────────────────────────┐
│ Attribute     │ Value                                                                                      │
├───────────────┼────────────────────────────────────────────────────────────────────────────────────────────┤
│ File Name(s)  │ root://eospublic.cern.ch//eos/experiment/fcc/ee/generation/DelphesEvents/winter202....     │
│ n of events   │ 100000                                                                                      
│ IO Format     │ TTree                                                                                      │
│ PODIO version │ 0.16.2                                                                                     │
│ ROOT version  │ 6.26.6                                                                                     │
└───────────────┴────────────────────────────────────────────────────────────────────────────────────────────
julia> events = RootIO.get(reader, "events");
julia> evt = events[1];
julia> recps = RootIO.get(reader, evt, "ReconstructedParticles");
julia> recps.energy[1:5]
5-element Vector{Float32}:
...

About

Julia interface to EDM4hep (generic Event Data Model for HEP experiments)

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages