Skip to main content

python-only lhapdf management

Project description

Management library for LHAPDF

This is a pure-python (unofficial) LHAPDF management library ans scripts to download, list and load PDFs using the LHAPDF format. It include a number of utilities to inspect the PDF metadata and the grids, but it is not meant to be a substitute of the LHAPDF library, only of the lhapdf script. For more information about LHAPDF please see the official repository and webpage for LHAPDF and to see their citation policy.

Install

It can be installed from PyPI with a simple command

  pip install lhapdf-management

Features

This library offers a script which aims to be a drop-in replacement of the lhapdf python script (not the library!) In order not to clash with an existing installation of LHAPDF, the script name is lhapdf-management.

Update

Updates the local reference index

  lhapdf-management update

If no installation of LHAPDF is found, the program will fail to do anything, as creating the LHAPDF directory is not the business of the management module. In order to run lhapdf-management and make it believe that LHAPDF already exist a possibility is to populate the LHAPDF_DATA_PATH environment variable, i.e.,

LHAPDF_DATA_PATH=$(python -c 'from pathlib import Path ; from sys import prefix ; print(Path(prefix) / "share" / "LHAPDF")' ; lhapdf-management update

It is also possible to create the directory in the "best guess location" by doing lhapdf_management update --init

List

Lists all available PDFs

  lhapdf-management list [PATTERNS ...] [--installed] [--codes]

Install

Installs a given PDF

  lhapdf-management install <pdf_name> [--upgrade] [--keep]

Open a PDF

It can also be used to programatically get an object pointing to all the right parts of a PDF. No interpolation will be provided by this script at this point and when/if it is ever provided will be done by importing the normal python interface of LHAPDF (and so at that point LHAPDF will need to be installed)

  from lhapdf_management.pdfsets import PDF
  from lhapdf_management.configuration import get_lhapdf_datapath
  data_path = get_lhapdf_datapath()
  pdf = PDF(data_path / "NNPDF31_nnlo_as_0118")
  grids = pdf.get_member_grids(0)

Programatically use the interface

A very useful feature of this library is the possibility of using everything programatically. The three given interfaces (install, list and update) take as input the same arguments as the script interface.

  from lhapdf_management import pdf_install, pdf_list, pdf_update
  list_of_pdfs = pdf_list("--installed")
  pdf_install("NNPDF31_nnlo_as_0118")

Download all PDFs matching pattern

There are some arguments that have been modified for simplicity as their behaviour can also be obtained by other means. For instance, in order to download all PDFs matching a certain pattern one can write the following short bash script:

  for pdf in $(lhapdf-management list NNPDF31*)
  do
    lhapdf-management install ${pdf} --upgrade
  done

Related projects

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lhapdf_management-0.6.tar.gz (32.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lhapdf_management-0.6-py3-none-any.whl (27.7 kB view details)

Uploaded Python 3

File details

Details for the file lhapdf_management-0.6.tar.gz.

File metadata

  • Download URL: lhapdf_management-0.6.tar.gz
  • Upload date:
  • Size: 32.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for lhapdf_management-0.6.tar.gz
Algorithm Hash digest
SHA256 5c58982765c317c08515e8fca9b79bf8d005e86d6899c731c92e3f229c31a94b
MD5 e0cc81ee739b556b1f96276c69b1a1b2
BLAKE2b-256 ea29a15c68ffce766832a6d7bd73cfa185b1730e5c7f8a81da08f5f7449b3ff5

See more details on using hashes here.

File details

Details for the file lhapdf_management-0.6-py3-none-any.whl.

File metadata

File hashes

Hashes for lhapdf_management-0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 322882d35cac3c21bf8968f22083a4050bdaf4b7380fc2672f0e832407d939c5
MD5 83b2d6a3e6eadd56d0136af1f36cd480
BLAKE2b-256 1431c33c44a1819fbcfa0c6d6c3a5e0e44040ddacb5a734b2a5713ad41f64e05

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page