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.1.0.tar.gz (6.6 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.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (12.9 MB view details)

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

hoppet-2.1.0-cp314-cp314-macosx_15_0_arm64.whl (11.5 MB view details)

Uploaded CPython 3.14macOS 15.0+ ARM64

hoppet-2.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (12.9 MB view details)

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

hoppet-2.1.0-cp313-cp313-macosx_15_0_arm64.whl (11.5 MB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

hoppet-2.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

hoppet-2.1.0-cp312-cp312-macosx_11_0_arm64.whl (11.5 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

hoppet-2.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

hoppet-2.1.0-cp311-cp311-macosx_11_0_arm64.whl (11.5 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

hoppet-2.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

hoppet-2.1.0-cp310-cp310-macosx_11_0_arm64.whl (11.5 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

hoppet-2.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.2 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

hoppet-2.1.0-cp39-cp39-macosx_11_0_arm64.whl (11.5 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

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

File metadata

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

File hashes

Hashes for hoppet-2.1.0.tar.gz
Algorithm Hash digest
SHA256 5e8ff00a0ef5a2f956241ae9af8db0061c504203f0f0d2db406d0689cc5f0042
MD5 ba035891c9b38180d971009b65050de6
BLAKE2b-256 c09af941c0c207f3bcfc5455d8de04b42a55543ae8f1a05bebd2dee6a7104bdd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c481d44ed7182517e68f9428acea146f67105a06e8e55ec38a41527de76eefc9
MD5 37b49f22456bd0f9bbfeeb0a808aeb45
BLAKE2b-256 e31e32d68244531d38e8af975570137a48af726361bc8c39241f2cc2237c89f8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.1.0-cp314-cp314-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 55ceb0420e81082c0a444b7bcc2be1111e744c2bf2571a2a412a7ba17b015360
MD5 ab6423761e7049df640a44e3e617c7b3
BLAKE2b-256 b2bc4e54fc6b0999db1e033c2ef48d96b9435f434ef89969207ef583647e4cf7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5df3068ef85f9c47f3fb129711dc48a848ac8d6b85c9ec8b7c634ed29d959b72
MD5 7abc5801c0847f7611b2f7c1532790f3
BLAKE2b-256 e6e7100311c1ce13b9b8140ee665bec00d6d35c83af5d9a8baf2ba44bdea07e2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.1.0-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 3d02583fa8b7345cf8b372243b653e78f3a6f5af7655dfd6c66cff381ab9ea5f
MD5 6783e207193d0a5c63e295a763b8d809
BLAKE2b-256 0f0c2163d5fb2d9a7ebc56ba19fb7b69739c6c66832984768629ff7d427b4d06

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 49514f6ab36c5d1af45210e6791028d369c3fd1cca0bf988c15b0532a098e6d6
MD5 764a540cb7f062769c38bce38a3f7ab7
BLAKE2b-256 2a93c1753dc165ccbcd989e55c27361590c5bca78e7c95265d19b998e16ec607

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.1.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2dcf196f9b9ec0bcb310b30ed5fb5affa2457c6230eb3b774cde676e8feea920
MD5 5a757c39d557914d489c312c153c7f0b
BLAKE2b-256 924ee6f8acf6372673b89d13d8c6026344f45bbac854dccf7da46df43d6a18ed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 37304cff91baa436fb2c38b3dd5e8adea9b66abf40330e8a4cc4142a94269869
MD5 313e78c8ce9ba86d2e9f7ac289ef4b13
BLAKE2b-256 ccb2c2a6033b2404a85656cca110cd303b62664e7fb0144f67ff776264103144

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8f4e3977a5a051c79e82599bb9f388f097f8662a011bd96962293c53b1168588
MD5 c79e577111b90817bb05de1f2c02b935
BLAKE2b-256 1d31c7e04fb2a20ff8e27037c14268a1f1a4c8e05c09d1c1ff5efe1cc6374ced

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b06ddaf4e50d4c7d4f412e8c61e68dd61f45de3914726955277db9d53b5ee009
MD5 3f4ae3a875a37be6a04f8d59ac16bc6c
BLAKE2b-256 51e95852398f23680d9c8b03b5a50c3321b3e4d06f46a42df90c5f0c472683d5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.1.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e1525810aa2ba0aa8df825ffa0a872aba9e7f93ba903dc2e0e10d7229308d8b4
MD5 9887c8736c3ae8571c742f4d6a38dc10
BLAKE2b-256 0db3923a82a0ccb7890a586e9811d3aaf7bc9ced313cc0cce3604fdc8dbec928

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fb75214cab302dd971d5a7063053ea0580831516ff848b39ceac12deb333d13b
MD5 32ee8fcf1e989dc0079e0c0298f0b256
BLAKE2b-256 baf76c77a3e0e88ac9180a4eab1b24676688afcc0a8ff34c80b1c457d8aea95c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.1.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5abd0119c3dd85e571d8c232f0131d8b51b36592f0e58448bfb2abd8efed801b
MD5 0714549227a7c3a3b3c3125113a0c5c8
BLAKE2b-256 cb827c9122af6f9a9616bd0528f812e3c410771f3625aa10699df7ceab5c19d0

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