45 releases
0.8.6 | Oct 18, 2024 |
---|---|
0.8.3 | Aug 30, 2024 |
0.8.2 | Jul 22, 2024 |
0.7.4-rc.1 | Feb 24, 2024 |
0.1.0 | Jun 11, 2020 |
#88 in Science
670 downloads per month
Used in 2 crates
390KB
9K
SLoC
PineAPPL
PineAPPL is a library for recording and storing predictions for high-energy physics observables independently of their parton distribution functions.
lib.rs
:
PineAPPL
is not an extension of APPLgrid
.
Overview
The main type of this crate is Grid
, which represents the interpolation grids that
PineAPPL
implements. Roughly speaking, a Grid
is a three-dimensional array of Subgrid
objects together with metadata. The three dimensions are
- (perturbative) orders, represented by the type
Order
and accessible byGrid::orders()
, - bins, whose limits can be accessed by
Grid::bin_info()
, and - channels, whose definition is returned by
Grid::channels()
.
Subgrid
is a trait
and objects that implement it are of the type SubgridEnum
. The
latter is an enum
of different types that are optimized to different scenarios: fast event
filling, small storage profile, etc.
Metadata
Metadata is a collection of key--value pairs, in which both keys and values are String
objects. In metadata anything a user whishes can be stored. However, there are special keys,
which have meaning to PineAPPL
and/or its CLI pineappl
. This metadata enables the CLI to
automatically generate plots that are correctly labeled, for instance. For more applications
see also the CLI tutorial.
Dependencies
~3.5MB
~73K SLoC