Skip to content

Releases: NNPDF/pineappl

v1.3.0

06 Dec 22:35

Choose a tag to compare

1.3.0 - 06/12/2025

Added

  • added a pineappl_grid_delete_bins method to the C-API

Fixed

  • fixed bugs in stopping condition of the Newton iteration method
  • fixed a bug in comparing interpolation::Interp objects when one of the
    boundaries is NaN

v1.2.0

22 Aug 13:26

Choose a tag to compare

1.2.0 - 22/08/2025

Added

  • added Grid::repair to repair bugs that survived by writing bugged grids to
    disk, for example #338. The CLI
    offers this functionality via pineappl write --repair and it can also be
    accessed via Python

Fixed

  • added a missing implementation for a branch in Grid::merge that was
    triggered when exporting some PineAPPL grids generated from the 'pinejet'
    group
  • fixed wrong coupling orders when exporting to APPLgrid. This happened when
    the PineAPPL grid had orders that had any other ordering than 'LO', 'NLO',
    'NNLO'
  • fixed a bug that caused exported grids to compare unsuccessfully when the
    convolution functions were proton-anti-proton; APPLgrid doesn't store the
    types of convolution functions, so we simply convert the grid to use only
    proton PDFs

Changed

  • the function Grid::evolve now makes use of parallelization to take advantage
    of the number of CPU cores available using the Rayon crate; the number of CPU
    cores to be used can be controlled via the RAYON_NUM_THREADS environment
    variable

v1.1.0

08 Jul 15:46
58d1c67

Choose a tag to compare

1.1.0 - 08/07/2025

Added

  • added a new V3 metadata reader to the pineappl evolve CLI for EKOs
    generated with v0.15.0 or higher
  • C API: added new functions pineappl_grid_evolve_info_shape,
    pineappl_grid_evolve_info, and pineappl_grid_evolve to evolve grids
  • C API: added pineappl_fktable_optimize to optimize FK Table-like objects
    given an optimization assumption
  • added methods Grid::merge_channel_factors and Channel::factor

Fixed

  • fixed a bug that caused pineappl export to fail when called with grid
    having non-trivial factors in their channel definitions

v1.0.0

10 Jun 19:12

Choose a tag to compare

1.0.0 - 10/06/2025

PineAPPL 1.0 is a major rewrite from the previous version, allowing grids to
have an arbitrary number of convolutions in the initial (PDFs with a
factorization scale) and in the final (FFs with a fragmentation scale) state.
This required a change in the file format that is used to write out grids, but
the old file format can still be read with this new version.

Added

  • added new method Grid::delete_orders and the corresponding switch
    --delete-orders in the subcommand write of the CLI
  • added the switches --xir and --xif, which allow varying the
    renormalization and factorization scales with a custom factor in the
    subcommand convolve
  • the CLI now allows the user to mark convolution functions as polarized
    by adding +p to its LHAPDF name, as a fragmentation function by adding
    +f and both by adding +pf or +fp
  • added switches --fk-table-fac0 and --fk-table-frg0 to pineappl read to
    read out the squared factorization and fragmentation scales of FK-tables

Changed

  • the macro channel! now accepts a channel specification that is of the
    format factor * (pid, ..) + ...
  • Python API: dropped top-level Python interface layer
  • Python API: renamed lumi to channel in PyO3 Python interface. This
    concerns 1) the argument names of convolute_with_one and similar functions;
    2) the module pineappl.lumi was moved to pineappl.boc; 3) the class
    LumiEntry was renamed to Channel
  • Python API: .into() needs to be explicitly called on subgrids when calling
    pineappl.grid.set_subgrid()
  • Python API: replaced pineappl.grid.PyPidBasis with
    pineappl.evolution.PidBasis
  • Python API: replaced pineappl.grid.PyOperatorSliceInfo with
    pineappl.evolution.OperatorSliceInfo
  • Python API: drop all Py prefixes, for instance PyEvolveInfo was renamed
    to EvolveInfo
  • by default pineappl plot no longer shows a channel breakdown in the panel
    with absolute PDF predictions. However, this feature can be enabled with via
    a new array added at the start of the script
  • raised MSRV to 1.80.1
  • changed the order of elements in Grid::fill of the parameter ntuple to
    reflect the ordering of kinematics given to Grid::new
  • renamed the following switches of pineappl write: --remap to
    --set-bins, --remap-norm-ignore to --div-bin-norm-dims and
    --remap-norm to --mul-bin-norm. These names should reflect the
    corresponding operations
  • renamed the switch --fktable to --fk-table of pineappl read

Removed

  • Python API: removed pineappl.grid.Grid.create() and
    pineappl.fk_table.FkTable.from_grid() methods; use the constructors
    of the respective class instead
  • removed the constructor Grid::with_subgrid_type
  • removed Grid::convolve_subgrid and --subgrid-pull from pineappl plot
    that was using the method. The CLI subgrid-pull plotting routine only ever
    worked for grids with two convolutions

v1.0.0-alpha6

10 Jun 07:30

Choose a tag to compare

v1.0.0-alpha6 Pre-release
Pre-release
v1.0.0-alpha6

v1.0.0-alpha5

22 May 18:48

Choose a tag to compare

v1.0.0-alpha5 Pre-release
Pre-release
v1.0.0-alpha5

v1.0.0-alpha4

07 Apr 22:28

Choose a tag to compare

v1.0.0-alpha4 Pre-release
Pre-release
v1.0.0-alpha4

v1.0.0-alpha3

07 Apr 22:07

Choose a tag to compare

v1.0.0-alpha3 Pre-release
Pre-release
Release v1.0.0-alpha3

v1.0.0-alpha2

15 Feb 11:03
a6b8d4c

Choose a tag to compare

v1.0.0-alpha2 Pre-release
Pre-release
v1.0.0-alpha2

v0.8.7

22 Jan 15:24
525ead9

Choose a tag to compare

0.8.7 - 22/01/2025

Added

  • added support for Python 3.13 to the Python interface