Skip to content

StefKats/SND-LHC-Shower-Reconstruction

Repository files navigation

SND-LHC

Hadronic shower reconstruction for the SND@LHC experiment.

In this project, the first procedure for hadronic shower energy and vertex position reconstruction is developed for the SND detector. Shower propagation is profiled using PDFs and a log-likelihood function is built to reconstruct energy and vertex.

Key Jupyter notebooks to obtain final plots (useful summary of the reco process):

  • Energy reco plots (summary reco plots)
  • Energy reco diagnostics (single event energy reco breakdown)
  • Depth reco and diagnostics (full depth reco, summary plots, single event depth reco breakdown)
  • PDF diagnostics (PDF diagnostic plots)
  • Event simulation diagnostics (simulation diagnostic plots)

Reproducing the results

To reproduce the results you need to have all the files from this repository

Steps to prepare the files:

  1. Run make_depth_dirs.sh
  2. Run generate_energy_reco.sh, while selecting "n" to submit to condor, "n" to runPG and "n" to createPDFs

This should produce populated dirs {z_291, z_295,..., z_343, z_347}, each containing populated sub-dirs {e_50, e_100,..., e_1500, e_2000}.

Steps to generate results:

  1. Run generate_energy_reco.sh and select "n" to recoEnergy, "y" to runPG and "n" to createPDFs (simulate 1000 events per depth and energy)
  2. Run generate_energy_reco.sh once the condor jobs have finished and select "n" to recoEnergy, "n" to runPG and "y" to createPDFs (create the PDFs for each station of each depth and energy)
  3. Run generate_energy_reco.sh once the PDFs have been created and select "y" to recoEnergy, "n" to runPG and "n" to createPDFs (reconstruct the energy for each event)
  4. Run the depth reconstruction code in jupyter notebook Depth reco and diagnostics.ipynb (reconstruct the depth for each event)

Explanation of the scripts

Steps taken by the scripts to prepare the results:

  1. All the depth dirs are created from make_depth_dirs.sh
  2. generate_energy_reco.sh copies the file contents of z_291 to all the other depths and updates the parameters of the execution files

Steps taken by the scripts to generate results:

  1. Run the GEANT4 simulation in run_simSND.py, for every depth and energy

  2. Run PDF_python_code.py to use the GEANT4 simulation results and create a PDF for each SciFi station for every depth and energy

  3. Run Energy_reco_code.py which takes individual events and performs a log-likelihood scan over all the SciFi PDFs for each energy and a fixed depth. For each scan, the log-likelihood is summed over all 5 SciFi stations. The maximum of the log-likelihood corresponds to the reconstructed energy.

(4.) Depth reco needs to be run manually via the jupyter notebook Depth reco and diagnostics.ipynb. The depth reconstruction code works similarly to the code in Energy_reco_code.py.

About

Hadronic shower reconstruction for the SND@LHC experiment.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published