Status and Plans

Analysis and Visualisation Tools


FCC Week 2026

Juraj Smieško — on behalf of Analysis and Visualisation Tools Group

10 June 2026

Helsinki, Finland

Group Structure & Mandate

FCC PED sub-structure
FCC PED sub-structure — Reference Design Phase

Shared group between Physics and PS&C

  • Lead the maintenance and development of the FCC analysis software ecosystem
    • Explore, validate, and integrate new technologies — ML, statistical tooling, kinematic fitting, vertex fitting, …
  • Develop mechanisms to produce datasets that are framework-independent and easy to analyse
    • Define dataset content in coordination with Physics, Detector Concepts, and MC Production, …
  • Centrally maintained flagship analyses ready to run with any detector configuration
  • Ensure adequate visualisation tools covering all use cases: geometry and simulation debugging, reconstruction development, outreach
  • Provide user support and comprehensive documentation

Analysis Tools

FCCAnalyses

  • Main analysis framework for the FCC collaboration
    • Built on ROOT RDataFrame — declarative, multi-threaded
    • Reads EDM4hep data natively
    • C++ kernels with a Python user interface
  • Served the Feasibility Study Report phase well
    • Fast simulation studies, parametric performance analyses
    • Now evolving to meet the demands of the Reference Design phase — full simulation, larger datasets, stricter reproducibility
  • Manages the full analysis chain
    • Dataset metadata resolution
    • Local & distributed execution
    • Staged and histmaker analysis styles
  • New: Job class — one unit of local work → one output ROOT file (#514)
    • Encapsulates RDataFrame setup, event counts, and benchmarking
  • Distributed in the Key4hep stack:
    source /cvmfs/sw.hsf.org/key4hep/setup.sh
  • github.com/HEP-FCC/FCCAnalyses
FCCAnalyses event processing chain
Event processing chain
RDataFrame analysis graph
Example Higgs recoil analysis graph

Library of Analyzers

Shared building blocks that physics groups contribute to and reuse

  • Analysis is composed of functions/functors operating on RDataFrame columns — ideally small and stateless
  • Two layers of analyzers:
    • External (ROOT RVec, EDM4hep utils)
    • FCCAnalyses standard library — encourage upstream contributions
  • Analysis-specific extensions via .hxx header
    • JIT-compiled by ROOT at startup — no extra build step
    • Old CMake-based extension method deprecated (#477, #500)
  • Fork development model creates analyzer copies across groups
    • Goal: reduce duplication by upstreaming shared functions
  • Truth studies enabling set of analyzers new
  • podio::DataSource — native EDM4hep reading in RDataFrame
    • Lazy reading being added to ROOTReader and RNTupleReaderpodio#949 new
FCCAnalyses analyzer headers on GitHub
analyzers/dataframe/FCCAnalyses — standard library headers

Contributions welcome! Consider upstreaming your analyzers — shared analyzers reduce duplication and help the whole community.

Two Analysis Styles

Two complementary running modes for different analysis workflows

Staged

  • Analysis split into multiple sequential stages — each writing intermediate output to disk
  • Often requires running algorithms typically done at reconstruction level — e.g. vertexing, jet clustering
  • Specialised ML training stage often inserted between stages — not managed by FCCAnalyses; inference then run back through FCCAnalyses
  • Intermediate files written to disk — each stage can be re-run independently
  • Well-suited for analyses working with large datasets where re-running the full chain is expensive

Histmaker

  • Single-pass: histograms filled directly from EDM4hep input
  • No intermediate ntuples — lower disk footprint
  • Uses RDataFrame RunGraphs for concurrent processing of all samples
  • Good for exploratory work and quick iteration on observables
  • Well-suited for well-defined analyses with a fixed set of observables

Future goal: unified interface for both styles — staged and histmaker will converge into a single analysis description

Making FCCAnalyses Distributed

Two complementary approaches from FCCAnalyses' perspective

Integrated within FCCAnalyses

Distributed execution driven from within FCCAnalyses

  • HTCondor (CERN) — production-ready
    • fccanalysis submit ana.pyexample
    • Widely used in combination with centrally produced samples
  • DIRAC / iLCDirac — grid submission
    • iLCDirac application for FCCAnalyses planned
  • RDataFrame distributed module
    • Apache Spark, Dask as possible backends — not yet used at FCC
  • Future: Slurm and other batch platforms
HTCondor logo DIRAC logo

External workflow management

FCCAnalyses used as an executable orchestrated from outside

  • Flare — b2luigi-based orchestration
    • Handles complex multi-stage analysis pipelines
    • Integrates directly with Key4hep executables
    • Runs on HTCondor, Slurm and LSF — DIRAC (via gbasf2) and others possible
  • Other workflow tools possible — Key4hep has no preferred tool
Flare logo b2luigi logo

Emerging Analysis Ecosystem

First tools and integrations taking shape around FCCAnalyses

  • Analysis registriesFCCeePhysicsStudies and FCChhPhysicsPerformance
    • Community hubs for analysis code, results and documentation
  • eedE — EDM4hep Event Data Explorer
    • Web-based, interactive EDM4hep event content exploration
  • CMS Combine — likelihood-based fits, limit setting, and hypothesis testing on FCC outputs
    • GSoC 2026: proper integration into the Key4hep stack and FCCAnalyses in progress
  • FCC Physics Events API — programmatic access to dataset metadata in progress
  • Dataset Request System — community-driven dataset requests in progress
  • Improve plotting tools — effort started, may involve external tools
  • Upstream improvements: TupleWriter in k4FWCore, podio::DataSource performance
  • Full simulation flagship analyses will drive requirements in the Reference Design phase
  • Interoperability with the broader HEP analysis ecosystem is a key goal
    • Overcoming silos: Key4hep ↔ PyHEP ↔ DiracOS ↔ Rucio
eedE event data explorer screenshot
eedE — EDM4hep Event Data Explorer
FCC Physics Events portal screenshot
FCC Physics Events — dataset metadata catalogue

Analysis Tools: Plans & Challenges

FCCAnalyses

  • Flagship analyses for detector benchmarking
    • Centrally maintained analyses covering key physics processes, runnable on any detector configuration to benchmark performance
    • Exact scope, ownership, and hosting still to be defined — need to understand how to integrate with FCCeePhysicsStudies and FCChhPhysicsPerformance
  • Make FCCAnalyses more robust
    • Overhaul analyzers: EDM4hep objects (normal and decayed), ROOT vectors, std::vectors
    • Merge staged and histmaker styles
    • Revive plotting capabilities
    • Support web-based environments (SWAN)
  • ML as first-class citizen
    • Streamline current implementation; adopt TMVA SOFIE
    • Join ML developments in Key4hep
  • Event weights & systematic uncertainties support
  • Redesign plotting — quick plots, ratio plots, publication-level

Ecosystem

  • Expand distributed computing
    • GRID (DIRAC/iLCDirac), Slurm, GPU resources
    • From within FCCAnalyses or via Flare / other workflow tools
    • FCCAnalyses on non-CERN computing resources
  • Overcome software silos
    • Streamline NTuple production
    • Improve podio::DataSource performance
    • Analysis-level data model — observables, file format
  • Robust analysis APIs & full dataset provenance
  • Fitting tools integration — CMS Combine, zfit, RooFit, …
  • Support ALEPH/LEP data workflows — legacy data as reference for FCCee physics
  • Keep up with ROOT: ROOT's "R" classes
    • RNTuple support — centrally produced files expected from the fall2026 production campaign

Want to contribute? See the full task list in the FCC in-kind contributions database — tasks for all skill levels

Visualisation

Visualisation Tools: What Is There

A range of tools covering outreach, debugging, and geometry inspection

  • Phoenix @ FCC
    • Developed under HSF — several FCC detectors participating
    • Web-based 3D event display; VR/AR capabilities
    • Primarily targeted towards outreach
    • Improved EDM4hep loader new
  • eedE — EDM4hep Event Data Explorer
    • Web-based; Pixi.js rendering engine
    • Interactive exploration of EDM4hep event content
    • Interface overhauled new — zooming, object selector, visual filtering, …
  • Pandora Monitoring
    • Traditional ROOT-based event display
    • Heavily tied to Pandora PFA
  • k4CEDViewer
    • Port of CED Viewer from iLCSoft to Key4hep
    • Traditional OpenGL-based application
  • JSROOT
    • Part of the ROOT project — web-based
    • Primarily visualizes histograms and TTrees
    • Can also display detector geometries
  • Geant4 Qt visualization
    • Well-established tool for Geant4 geometry inspection
    • Traditional Qt-based application
  • Julia — visualization using Julia in progress
    • Exploratory work on event display and visualisation via Julia — status report
  • Other specialized tools
    • calodisplay — ALLEGRO calorimeter event display
    • FCCAnalyses — RDataFrame analysis graph generation

Visualisation: Plans & Challenges

Key goal: have debug-level tools across gen, sim, reco, and analysis

  • No single tool for debugging and development of simulation, reconstruction, and analysis
    • Support and contribute to development of existing tools
    • Avoid implementing specialized tools targeting specific sub-detectors or use cases
  • Geometry conversion
    • ROOT to glTF conversion currently rudimentary
    • pyg4ometry seems promising
    • Join efforts in the Sim/Reco groups
  • Reach out to other (N)HEP experiments
    • HSF Visualization WG no longer active
    • Phoenix adopted by more experiments
  • OS graphics stack interoperability
    • Wayland replacing Xorg on Linux
    • Xorg/OpenGL forwarding on macOS becoming problematic
Phoenix CLD event display
Phoenix — CLD detector event display
eedE event data explorer screenshot
eedE — EDM4hep Event Data Explorer

Announcements

  • New co-convener of Analysis and Visualisation Tools
    • Birgit Sylvia Stapf (CERN). Welcome, Birgit!
  • Analysis and Visualisation Tools Hackathon
    • Planning to organise at CERN in 2026 — date TBD
    • Focus: improving the FCCAnalyses' library of analyzers
    • Open to the whole FCC community — all skill levels welcome
    • Details and registration to be announced — stay tuned!
  • Regular meetingsAnalysis Tools and Productions
    • Every other Wednesday, 14:00 CERN time
    • We will be reaching out to Physics groups and inviting them to present at our meetings
      • Software needs and requirements
      • Physics content of analysis-level files
      • List of flagship analyses

Conclusions

  • FCCAnalyses is the main analysis framework for FCC, integrated in the Key4hep stack
    • Declarative RDataFrame interface — C++ performance, Python ergonomics
  • The Library of Analyzers concept encourages code sharing across physics working groups and detector concepts
  • Evolving to meet Reference Design phase demands — full simulation, larger datasets, flagship analyses for benchmarking
  • FCC distributed computing capabilities growing: DIRAC/iLCDirac (serious campaign planned for Fall 2026), Rucio (concluding testing phase)
  • Interoperability with the broader HEP analysis ecosystem is a key goal
  • Visualisation: Phoenix and eedE cover outreach and event data exploration; existing tools for sim/reco/analysis debugging need further development

Backup

In-Kind Contribution Tasks

Analysis and Visualisation Tools WG — tasks registered in the FCC in-kind contributions database

Project Timeline Current FTE Needed FTE Priority
Reorganize and improve FCCAnalyses analyzer library 2 y0.02.0 High
Develop analysis level file format 2 y0.51.0 High
Make ML a first-class citizen in FCCAnalyses 2 y0.01.0 High
Debug-level visualisation tools 2 y0.51.5 High
Expand distributed computing options of FCCAnalyses 2 y0.331.0 Medium
Introduce GPU resources in FCCAnalyses analyzer functions 2 y0.01.0 Medium
Redesign plotting functionality of FCCAnalyses 1 y0.330.5 Medium
Improve treatment of event weights and systematic uncertainties 1 y0.00.5 Medium
Develop robust analysis APIs 1 y0.51.0 Medium
User-driven workflow management in Key4hep 1 y0.00.5 Medium
Public-facing visualisation tools 1 y0.51.0 Medium
Integration of fitting tools into Key4hep/FCCAnalyses 1 y0.31.0 Medium

Analyzer Library

analyzers/dataframe — standard library of reusable functions and functors

  • Particles
    • MCParticle — generator-level particle access
    • ReconstructedParticle — reco particle kinematics & selection
    • ReconstructedParticle2MC, ReconstructedParticle2Track — associations
  • Tracks
    • ReconstructedTrack, TrackUtils — track parameters & utilities
  • Jets
    • JetClusteringUtils — FastJet interface
    • JetConstituentsUtils, JetFlavourUtils, JetTaggingUtils
  • Vertexing
    • VertexFinderActs, VertexFinderLCFIPlus
    • VertexFitterActs, VertexFitterSimple
  • Smearing & fast simulation
    • SmearObjects, Smearing
  • ML inference
    • WeaverUtils — ONNX-based neural network inference
  • Calorimetry & utilities
    • CaloNtupleizer, EventFilter, Algorithms
  • FCC-hh specific: Analysis_FCChh

Addons — optional components with heavier dependencies

  • FastJet — jet clustering (Valencia plugin, external recombiners)
  • ONNXRuntime — neural network inference, Weaver interface
  • TMVAHelper — ROOT TMVA integration