Skip to content

Lorenzetti: Empowering Physics Performance and Analysis with Low-level Calorimetry Data

License

Notifications You must be signed in to change notification settings

mssandes/lorenzetti

 
 

Repository files navigation

DOI

Lorenzetti Simulator

Lorenzetti is a framework for the HEP community to freely exploit the full potential of calorimetry data. We expect to enable the community to mitigate bottlenecks for R&D in processing algorithms using calorimetry data by providing:

  • Unified low-level calorimetry and physics information based on full simulation (geant);
  • Free-to-use data.

In other words, it provides a way for the HEP community to work on proof-of-concepts (POCs) using simulated data that is currently difficult to obtain on experiments and to publish them independently. We believe that this possibility, i.e. to publish POCs apart from the experiments, can be a powerful way to foster scientific exchange within the HEP community, but also to facilitate the exchange of processing algorithms with the broader scientific community.

We welcome everyone to contribute!

Citations

Please cite DOI if you use the software.

Detector Construction:

We should include some description here.

Screenshot

Getting Started:

The easiest way to use Lorenzetti is by employing either docker or singularity based on the images we provide at the Lorenzetti's DockerHub. Technical details on how these images are generated are available here.

Setting up for standalone usage

When using lorenzetti on the same host, use lorenzett/lorenzett:base:

singularity run docker://lorenzetti/lorenzetti:base

After singularity instance is created, do:

source /setup_envs.sh

This will setup everything you need for running Lorenzetti.

LNCC (cluster) usage

More details here.

Running Lorenzetti

The pipeline has three steps:

  1. Event generation with pythia wrappers;
  2. Shower propagation with geant and digitalization;
  3. Event reconstruction.

Generation

A set of pythia wrappers is provided on generator/PythiaGenerator/share/. Usage example:

prun_job.py -c "gen_zee.py --evt 25 --pileupAvg 0" -mt 10 -n 10 -o Zee.EVT.root

Shower Propagation and Digitalization

Use first step output to feed digit_trf script. For instance:

digit_trf.py -i Zee.EVT.root -o Zee.ESD.root -nt 1

Event Reconstruction

Use the second step output to feed reco_trf script. For instance:

reco_trf.py -i Zee.ESD.root -o Zee.AOD.root

Local Installation

Lorenzetti has the following dependencies:

  • Geant4 (opengl or qt4 is required);
  • ROOT;
  • Pythia8;
  • HEPMC;
  • FastJet;
  • Gaugi (pip3 install gaugi).

Framework status:

Branch Build Status
Master Build Status

Software considerations:

Lorenzetti is built on top of standard simulation technology employed on HEP experiments (Pythia and Geant). Lorenzetti's concept design was greatly inspired in the Athena framework. Other frameworks of potential interest:

  • FCC software. Particularly, we consider to eventually merge Lorenzetti inside the FCC software;
  • Delphes.

About

Lorenzetti: Empowering Physics Performance and Analysis with Low-level Calorimetry Data

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 65.8%
  • Python 27.9%
  • CMake 3.3%
  • C 1.3%
  • Shell 0.8%
  • Dockerfile 0.8%
  • Makefile 0.1%