Expand description
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::lumi()
. Note that in older parts ofPineAPPL
channels are often also called ‘luminosities’ or ‘lumi’.
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.
Modules§
- Module that contains helpers for binning observables
- TODO
- Supporting classes and functions for
Grid::evolve
. - Provides the
FkTable
type. - Module containing all traits and supporting structures for grids.
- TODO
- Module containing the Lagrange-interpolation subgrid.
- Module for everything related to luminosity functions.
- Provides an implementation of the
Grid
trait with n-tuples. - Provides the
PackedArray
struct. - TODO
- Module containing the
SparseArray3
struct. - Module containing the trait
Subgrid
and supporting structs.
Macros§
- Helper macro to quickly generate a
LumiEntry
at compile time.