Analysis @ FCC
          
          The physics analyses at FCC are spread through two repositories and a storage space:
          
          
            - 
              FCCAnalyses
              
                - General analysis code in analyzers
 
                - (Proto)package machinery for case studies
 
                - Steering of the analysis (RDataFrame)
 
                - Access to the (meta)data
 
                - Running over large datasets / on batch
 
              
             
            - 
              FCCeePhysicsPerformance
              
                - Main place for the abstracts
 
                - Contains very specific analysis code
 
                - (Proto)package repository
 
              
             
            - 
              Storage space on EOS /eos/experiment/fcc
            
 
          
        
        
        
          Analysis @ FCC
          
          Supporting repositories:
          
          
          
          Supporting data:
          
          
          
        
        
        
          Event processing
          
            - 
            The analysis is build around
            RootDataFrame
            
 
            - 
            It imagines the analysis as a series of transformations with
            functions/clojures on the data columns.
            
 
            - 
            If one writes in this fashion, the multi threading is for "free"
            
 
            - 
            Over the years a lot of analyzers have been written
            
 
            - 
              Analyzers are usually structs with dependencies like: ROOT,
              EDM4hep, podio, FastJet, DD4hep, ACTS, ONNX
            
 
          
          
        
        
        
          Analysis steering
          
            - 
            The analysis is divided into three steps: stage1,
            stage2, final
            
 
            - 
              The stages are objects which are loaded into "main" function with
              the help of getattr()
            
 
            - 
            The first stage reads the data in EDM4hep format
            
 
            - 
            Running on batch is done by running on-the-fly generated shell
            script in subprocess
            
 
          
          
        
        
        
          Proto packages
          
            Example analysis is split into several locations:
          
          
            - Analysis stages are in examples in FCCAnalyses
 
            - Abstract and Results in case-studies in FCCeePhysicsPerformance
 
            - Benchmarks are in tests in FCCAnalyses
 
            - Documentation in case-studies in FCCeePhysicsPerformance
 
          
          
            Case studies machinery allows to create (semi)independent analysis,
            with or without independent dependencies managed from top