Note: This installation is required only once.
git clone https://github.com/mit-fcc/detector-performance.git
cd detector-performance
chmod 755 bin/install.sh
./bin/install.shWhen you open a fresh terminal, first source the environment:
source bin/env.shThe workflow consists of several steps that can be run one by one:
python analysis/run.py --gun # produces HepMC3 events (muons) in bins of theta and momentum
python analysis/run.py --delphes # detector response for the gun events
python analysis/run.py --analysis # loop over events, get track and impact parameters per muon
python analysis/run.py --plots # analyse track/impact resolution plots
python analysis/run.py --summary_plots # plot resolutions vs. cos(theta)All these steps execute the respective tasks for each gun sample, and processes it in a multithreaded way (by default 12 threads are used). The analysis script (in RDataFrame) used is stored in analysis/analysis.py. The plotting script and analysis of the resolutions, is stored in analysis/plots.py.
You can run the full chain in a single command:
python analysis/run.py --gun --delphes --analysis --plots --summary_plotsThe full chain typically takes about 10 minutes to complete.
By default, the IDEA baseline detector (IDEA_baseline) is used, corresponding to the steering file:
delphes_cards/IDEA_baseline.tcl
You can change it with:
python analysis/run.py --delphes_card IDEA_SiTrackingAll steps run with 12 threads by default. To change:
python analysis/run.py --nThreads 8By default, results are saved in the output directory. To specify a custom directory:
python analysis/run.py --output_dir my_resultsIf you want to see what commands are actually invoked, you can just display the commands on the screen without running them:
python analysis/run.py --delphes --display_commandspython analysis/run.py --gun --delphes --analysis --plots --summary_plots \
--delphes_card IDEA_SiTracking --nThreads 8 --output_dir my_results