Skip to content

APN-Pucky/HEPi

Repository files navigation

HEPi

Python interface for gluing together several HEP programs (e.g. from HEPForge https://www.hepforge.org/).

PyPI version downloads
DOI SSLBinder MyBinder

Stable Unstable
workflow test
Coverage Status Coverage Status
Codacy Badge Codacy Badge
Codacy Badge Codacy Badge
Documentation Documentation

Goals

The goal of this project is to provide a simple and easy to use interface to common high-energy-physics tools (currently mainly SUSY related Tools). Parameter scans and plotting is also included. Different tools should just be plugged in and out as desired (i.e. generate a SUSY spectrum before running a scan with MadGraph).

Idea

First generate a list of interested parameter points i.e. mass 100 to 1000 GeV squark. Then if you also want to scan over the gluino mass just ask for a scan over previous list, and you get a 2d scan. After generating all parameters they can be used to directly run the codes (in parallel or sequential) or just generate the input file for distribution across several clusters. The results then can be imported again and plotted nicely.

Realisation

In the working directory you have an input and output folder. The input would typically contain the baseline slha file. The output will contain the produced scripts to execute the tools. To avoid file collisions the files in the output folder correspond to a hashed value of all input parameters. If a result already exists hepi won't rerun the tool.

Documentation

For more details on the usage of different tools, called runners, check the respective documentation.

Versions

Stable

pip install hepi[opt] [--user] [--upgrade]

Dev

pip install --index-url https://test.pypi.org/simple/ hepi[opt]

[opt] can be omitted to avoid optional dependencies (ie. lhapdf).

HEPi-fast

HEPi-fast interpolates grids in a similar fashion to (n)nll-fast but also for Resummino.
They are given as json files as for the CERN SUSY wiki in xsec. A default set of grids is in the source folder hepi/data/json/. HEPi can be used to generate such json files for convenient reloading of the data. Just enter a mass point and the cross sections are returned:

$ hepi-fast --help
[...]
$ hepi-fast 13600_sleptons_1000011_-1000011_NNLL.json
547
0 547.0 0.00035958771606265744 -2.5249300930888148e-05 2.5209060862746587e-05 -1.737815390324732e-06 9.940418677810902e-07 -2.5189449417355387e-05 2.5189449417355387e-05
988
0 988.0 1.4318461918225316e-05 -2.4420586244508355e-06 2.441359644963803e-06 -6.140331443352323e-08 2.0494188119359375e-08 -2.4412735921671295e-06 2.4412735921671295e-06
[...]

Above shows slepton-pair cross section for requested 547 and 988 GeV mass at aNNLO+NNLL. The order of the output is

id | Central value | error down | error up | error pdf down | error pdf up | error scale down | error scale up

If you just want to look at a quick plot of the interpolation run

$ hepi-fast pp13_squark_NNLO+NNLL.json --plot

for something like

plot