This repository holds the main code for recasting the 13 TeV ATLAS search for displaced vertices plus missing energy (ATLAS-SUSY-2016-08) using the efficiency grids for event and vertex reconstruction selection provided here.
Note that the recasting can not reproduce the official results for the mass compressed benchmarks.
The following pre-requisites must be installed before compiling the main code:
- MadGraph5 with Pythia8 installed
- Modified Delphes
- Pythia8
Running:
./installer.sh
Should install most of the relevant packages. The LHAPDF, Pythia8 and Delphes directories must be included in the library and root include paths. This can be done running:
source setenv.sh
The recasting accepts ROOT files generated by the modified Delphes version provided in this repository. Examples of Delphes cards can be found in the validation/Cards folder. Note that the LLP PDG ids have to be defined in the BSMFilter block of the delphes card, so the required LLP information is stored in the ROOT file. The main recasting code accepts the following options:
usage: atlas_susy_2016_13_Recast.py [-h] -f INPUTFILE [INPUTFILE ...] [-o OUTPUTFILE] [-n] [-v VERBOSE]
Run the recasting for ATLAS-SUSY-2018-13 using one or multiple Delphes ROOT files as input. If multiple files are given as argument, add them (the samples weights will be normalized if -n is given).
Store the cutflow and SR bins in a pickle (Pandas DataFrame) file.
options:
-h, --help show this help message and exit
-f INPUTFILE [INPUTFILE ...], --inputFile INPUTFILE [INPUTFILE ...]
path to the ROOT event file(s) generated by Delphes.
-o OUTPUTFILE, --outputFile OUTPUTFILE
path to output file storing the DataFrame with the recasting data. If not defined, will use the name of the first input file
-n, --normalize If set, the input files will be considered to refer to multiple samples of the same process and their weights will be normalized.
-v VERBOSE, --verbose VERBOSE
verbose level (debug, info, warning or error). Default is info
where model is used to fetch the relevant model parameters depending on the scenario (ewk or strong production). This information is used only for conveniently storing the model parameters (such as the proper lifetime) along with the recasting info. The user can easily modify the helper.py code for other models.
The basic required input is a Delphes ROOT file. For instance, running:
./atlas_susy_2016_08_Recast.py -f <root file>
will produce a pickle file containing a Pandas DataFrame with a simplified cutflow and the number of events in each signal region.
For combining results from multiple model points into a single DataFrame, run:
./atlas_susy_2016_08_CombineData.py -f <pickle file1> <pickle file2> ... -o <output file>
Finally, for computing upper limits:
./atlas_susy_2016_08_UpperLimits.py -f <pickle file> -o <output file>
The validation of the recasting code was done using the long-lived gluino benchmarks considered by ATLAS.
The scan over the parameter space can be conveniently done running:
./runScanMG5.py -p <parameters file>
where basic required input is defined parameter file specifying the input cards model parameters. The output is a Delphes ROOT file for each model point.
The MadGraph, Pythia and Delphes cards can be found in ./validation/Cards. The recasting results and plotting scripts can be found in the validation folder.
- mgluino = 1.4 TeV, mLSP = 100 GeV:
- mgluino = 1.4 TeV, mLSP = 1300 GeV:
- mgluino = 1.4 TeV, tau = 1 ns:
Recast (ATLAS) | Recast (ATLAS) | |
---|---|---|
m(gluino) (GeV) | 2000.0 | 2000.0 |
m(neutralino) (GeV) | 100.0 | 1800.0 |
tau (ns) | 1.0 | 1.0 |
Initial Events | 32.00 (32.00) | 32.00 (32.00) |
Trigger-based data reduction | ----- (32.00) | ----- (27.00) |
Event cleaning | ----- (32.00) | ----- (27.00) |
Good Runs List | ----- (32.00) | ----- (27.00) |
Primary vertex | ----- (32.00) | ----- (27.00) |
NCB veto | ----- (32.00) | ----- (26.00) |
MET trigger | ----- (31.00) | ----- (24.00) |
MET filter (MET > 200 GeV for recast) | 30.39 (31.00) | 15.96 (17.00) |
Offline MET (event selection eff. for recast) | 30.27 (29.00) | 15.69 (7.00) |
DV fiducial acceptance | ----- (28.00) | ----- (6.00) |
DV fit quality | ----- (27.00) | ----- (6.00) |
DV displacement | ----- (27.00) | ----- (6.00) |
Material veto | ----- (22.00) | ----- (5.00) |
Disabled module veto | ----- (22.00) | ----- (5.00) |
DV track multplicity | ----- (15.00) | ----- (3.00) |
DV mass (vertex level eff. for recast) | 12.96 (14.00) | 2.91 (2.00) |