Skip to main content

HOPPET: A Higher Order Perturbative Parton Evolution Toolkit

Project description

HOPPET: A Higher Order Perturbative Parton Evolution Toolkit

HOPPET is a package for carrying out DGLAP evolution and other common manipulations of parton distribution functions (PDFs) in particle physics. The core package is written in Fortran. This Python interface provides access to a key subset of the functionality, the part known in the documentation as the "streamlined" interface.

The full underlying code and documentation can be found at https://github.com/hoppet-code/hoppet.

Example usage

import hoppet as hp
import numpy as np

def main():
    # choose the underlying spacing in y=log(1/x): 
    # smaller spacing gives higher accuracy but slower evolution
    dy = 0.1  
    # choose NNLO evolution
    nloop = 3 
    # Start hoppet
    hp.Start(dy, nloop)
    
    asQ0 = 0.35
    Q0 = np.sqrt(2.0)
    # Do the evolution starting from a standard benchmark initial condition 
    hp.Evolve(asQ0, Q0, nloop, 1.0, hp.BenchmarkPDFunpol, Q0)

    # Evaluate the PDFs at some x values and print them
    xvals = [1e-5,1e-4,1e-3,1e-2,0.1,0.3,0.5,0.7,0.9]
    Q = 100.0

    print('')
    print('           Evaluating PDFs at Q =',Q, ' GeV')
    print('    x      u-ubar      d-dbar    2(ubr+dbr)    c+cbar       gluon')
    for ix in range(9):
        pdf_array = hp.Eval(xvals[ix], Q)
        print('{:7.1E} {:11.4E} {:11.4E} {:11.4E} {:11.4E} {:11.4E}'.format(
            xvals[ix],
            pdf_array[6 + 2] - pdf_array[6 - 2], 
            pdf_array[6 + 1] - pdf_array[6 - 1], 
            2 * (pdf_array[6 - 1] + pdf_array[6 - 2]),
            pdf_array[6 - 4] + pdf_array[6 + 4],
            pdf_array[6 + 0]
        ))

    hp.DeleteAll()

For more examples take a look at example_py. The above example is essentially identical to tabulation_example.py and prints the output of a typical benchmark PDF.

Citation policy

If you use this program in a scientific publication we ask that you cite

G.P. Salam, J. Rojo, 'A Higher Order Perturbative Parton Evolution Toolkit (HOPPET)', Comput. Phys. Commun. 180 (2009) 120-156, arXiv:0804.3755

and

A. Karlberg, P. Nason, G.P. Salam, G. Zanderighi & F. Dreyer arXiv:2510.09310.

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

hoppet-2.2.2.tar.gz (13.8 MB view details)

Uploaded Source

Built Distributions

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

hoppet-2.2.2-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (13.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

hoppet-2.2.2-cp314-cp314-macosx_15_0_arm64.whl (12.0 MB view details)

Uploaded CPython 3.14macOS 15.0+ ARM64

hoppet-2.2.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (13.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

hoppet-2.2.2-cp313-cp313-macosx_15_0_arm64.whl (12.0 MB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

hoppet-2.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

hoppet-2.2.2-cp312-cp312-macosx_11_0_arm64.whl (12.0 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

hoppet-2.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

hoppet-2.2.2-cp311-cp311-macosx_11_0_arm64.whl (12.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

hoppet-2.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

hoppet-2.2.2-cp310-cp310-macosx_11_0_arm64.whl (12.0 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

hoppet-2.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.9 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

hoppet-2.2.2-cp39-cp39-macosx_11_0_arm64.whl (12.0 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file hoppet-2.2.2.tar.gz.

File metadata

  • Download URL: hoppet-2.2.2.tar.gz
  • Upload date:
  • Size: 13.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for hoppet-2.2.2.tar.gz
Algorithm Hash digest
SHA256 e8d3a154e57c8bbf7ca365764c6e61c48a78b58beaf4fe1ec6648eefe7fdb30b
MD5 7486658d09b0e57422f714f6debb643e
BLAKE2b-256 0b8d9bea6c4699a201e9207673852bbb06e95e6d7a712e1ab5fdbeda54b02b45

See more details on using hashes here.

File details

Details for the file hoppet-2.2.2-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for hoppet-2.2.2-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 261deec2650cce35decbceb27b6c4a932bdb30f1f92670edfc0dc1030e67f67a
MD5 008623bac9d34d94a64f2be5f39a0692
BLAKE2b-256 459502118d3a885781fd1f602b4803387d3d292fdd0d0a3b70620d5c09fe1a72

See more details on using hashes here.

File details

Details for the file hoppet-2.2.2-cp314-cp314-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for hoppet-2.2.2-cp314-cp314-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 3a21c61cd48c58ea05ed2c5926bed446779fdd3ec3e94d9b96c34b33895eab27
MD5 ad9b9c680b9db378d1ca5eb92a95e697
BLAKE2b-256 86e3826c4e6b54542130e905dc69e4ebed93263c3b66a9c5d949f54a3956d036

See more details on using hashes here.

File details

Details for the file hoppet-2.2.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for hoppet-2.2.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8798970ce18db3bd36b57db00c3bc43aa2a8787bc890fa29d59ca14226f3e55a
MD5 ce8c19b73c94a3caaa7f4433f3db08dd
BLAKE2b-256 c90b9860199334cc6eccf79c96ee1aeed6feeb4cf66a0315da0b32a69276dbbe

See more details on using hashes here.

File details

Details for the file hoppet-2.2.2-cp313-cp313-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for hoppet-2.2.2-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 a8831dd9c381dc95dfbe4e463ddcc836829c43fe3db2383143ab707ce44b4fb6
MD5 3b97e22874e2e2047d44c192f81b49c5
BLAKE2b-256 a79c95d5079c23c38c87334b315b5476d1f122376abef2e6a77d8eeb1f0baf10

See more details on using hashes here.

File details

Details for the file hoppet-2.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hoppet-2.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5b6afe17e150a025c69f168f9e8dfd522087b49583f6f70b686867470995580f
MD5 6287a9409dc34252c9f4186c7f5a320f
BLAKE2b-256 c3ebb41445bf68c6cd5b8cb73adf4060729383995f13d1c46c906f291ece578d

See more details on using hashes here.

File details

Details for the file hoppet-2.2.2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for hoppet-2.2.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 08ef7f08395a3ae3bdb7626cf99734cc7fe65eecacd3cd755bf57b6b038d1ef8
MD5 d712c4c4cc53f6ebf4f43ad6e3fad5b6
BLAKE2b-256 76f450ac5fb0f6915379fb58aa96cc171f5142ea9336edda5e1fac3627e407b2

See more details on using hashes here.

File details

Details for the file hoppet-2.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hoppet-2.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 67986ec32ba2069d6d05a7f7dd785925a99ee2bfcf5bb7ff12a07cc8cb69e8b0
MD5 c456d8778cc5a4e36c6d9083dd5d7a2e
BLAKE2b-256 f372a13e8431648524f639f8f05c766668774cd4a00bdee3337e9ee15eae5d0f

See more details on using hashes here.

File details

Details for the file hoppet-2.2.2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for hoppet-2.2.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2efa38cadf85f9d777295ff730c7e5be8a4b569962370179e8fd7b9d4279b353
MD5 835cc8fbcf68c98c90962af9e9a072e0
BLAKE2b-256 b37dba5333e66488d2b1078e07891c458f554cc6a3bfb71108b2730104d97dc4

See more details on using hashes here.

File details

Details for the file hoppet-2.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hoppet-2.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d5faf8ee28f27eee12ecf4c2623d41bf5f17cb35c3706bff05bc7adf535bed7f
MD5 e51f1682d890cbea78c21a6647f4e4db
BLAKE2b-256 944c86b24dc46534c29307f68db315de1a76e0185cdf18afd2bf77def55117fa

See more details on using hashes here.

File details

Details for the file hoppet-2.2.2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for hoppet-2.2.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6c524123d6372be36b6d39e286413687b9217ce359de975133271f6a3f99519a
MD5 adf6bbcfb58bb63a9b927a7b00db369f
BLAKE2b-256 a58f377b180e1ee785bc7c4b55cc0c7245043c9867ffa504400a93fd09153dd2

See more details on using hashes here.

File details

Details for the file hoppet-2.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hoppet-2.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8a8607a760e6189bfd265187795adcef6c38f07fbc4f0b21cd388af1a9becab5
MD5 19bedfdf55dd5b17892150c810c3f598
BLAKE2b-256 4e3f68e2762fa21a5f13b3a3d3a33c4b9cf04f7df632ab341208483d908fdfce

See more details on using hashes here.

File details

Details for the file hoppet-2.2.2-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for hoppet-2.2.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 736e5ff89d1499336130bfb256cee6582edb9052aea461782dc7e747bd8a48e2
MD5 0b0a9da181938e9ddb9f79b4cd0c955c
BLAKE2b-256 a9abf338edaa47789aed5856aa1e04521f0ff60c572d147770a9475cd928f068

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