Modeling the LHCb tracking with Deep Neural Networks

This package defines the training procedure for the neural networks contributing to the parametrization of the LHCb tracking performance as a pipeline of notebooks.

The pipeline is defined as a Direct Asynchronous Graph (DAG) using Snakemake, according to the rules presented in the Snakefile.

The logical flow of the tracking parametrization is as follows:

The notebooks are divided in two main categories:

Filter functions (acceptance and tracking efficiency)

Feature functions

Deploying the trained models

The deployment of the trained model relies on scikinC as described in the Deploy.ipynb notebook.

Running the code

To run the code you will need to set up the environment. It is recommended to use the Docker image landerlini/lhcbaf:v0p8 defining two conda environment:

Using the docker image, the whole pipeline runs issueing

bash snakemake --resources gpu=1

from the folder containing this README.md file.