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.3.0.tar.gz (14.2 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.3.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.3 MB view details)

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

hoppet-2.3.0-cp314-cp314-macosx_15_0_arm64.whl (15.4 MB view details)

Uploaded CPython 3.14macOS 15.0+ ARM64

hoppet-2.3.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.3 MB view details)

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

hoppet-2.3.0-cp313-cp313-macosx_15_0_arm64.whl (15.4 MB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

hoppet-2.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

hoppet-2.3.0-cp312-cp312-macosx_11_0_arm64.whl (15.4 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

hoppet-2.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

hoppet-2.3.0-cp311-cp311-macosx_11_0_arm64.whl (15.4 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

hoppet-2.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

hoppet-2.3.0-cp310-cp310-macosx_11_0_arm64.whl (15.4 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

hoppet-2.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (15.7 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

hoppet-2.3.0-cp39-cp39-macosx_11_0_arm64.whl (15.4 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

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

File metadata

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

File hashes

Hashes for hoppet-2.3.0.tar.gz
Algorithm Hash digest
SHA256 c9ec2bc371358f1886efe8aa1d85423e4fb93ee5b38c4a3b4e83a278d952118f
MD5 b2b387fe4b3d2ed7a1b17006c29fdf3e
BLAKE2b-256 bd785d2309e7f19cfc993883670487010809268f4947384ab2440afd42d82ecb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.3.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ee0b6bced101ddaa7e5c4e86c3212f74c23e13f24987104dbbf465984f059294
MD5 212a758a9d3bdc229c3ad04728a72233
BLAKE2b-256 b0d52ca3d37fc2f672fe9341ad5d0dc800f882dda6178aa9e3423c43553717d5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.3.0-cp314-cp314-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 d1dc7de5aa17562b956ae87aed501ed7134da5e8e342b8e52953e56d89f975c0
MD5 c45c337424597927b95043c8e689aff5
BLAKE2b-256 9ab8a146ec8a01335d091c5458b4f8ab9d92bfc7d37cc23f6cc223631099d0d5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.3.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fb06a6dc7d4e4668bd00ee02d4c21529fbbf00d0199302808d227794245581ba
MD5 de22a6e499c3ef1ff50bad869f9fcab1
BLAKE2b-256 acb61cfcd4e95752f352f504d7b9e181dc6c2de90d9d017f7d4cb711bfa8cfc6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.3.0-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 71c87d8d5a75f9646a0c59df2a210814e5764344e7ac52460d5f21da1faa4093
MD5 e2746988f29366cb2b8c215a3ebb5139
BLAKE2b-256 d173b5afa9955acbd00a01f3b703b114527a0cf92bc0635f483f1bca4d0fcc90

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 06b18da1eb1421bea5592f0fbddb251ba53a984f09e5ad29d87f5099b242b1e4
MD5 b6f6b4c6b7009394a4190e27a04a3948
BLAKE2b-256 559b134eaf7617c86dbd8c54024b9544034c54888ad17f1aae2fd82d375df3f3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.3.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ec0519fb1f63aa1676c52ca6eb29a9be73e9991bb6d9389c309c2b01c3f4f6e0
MD5 cd31ea675f28e396ff4b37e22826ffa8
BLAKE2b-256 251d490c2fb09da831b085519aaca4f14d32e895c98916132c5a9ce2d326b89e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c782ca226f10ab7ffc3ce102c9e71bad011651669d85d03e43ae038ebf7b8671
MD5 0f25868033eff07a594a8dea127a04d6
BLAKE2b-256 dd9e59982765f8b51d9957011f8308b93d04e10269d55b0b6ee1c0b39af91bff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.3.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 55e3d8fa10cf22ea92d99272fb18d973bb9c0f6b5370b8ca049ad8b2810caa3a
MD5 dd2988bcbd2600bfc1801628f238f7cb
BLAKE2b-256 f6c25224af8c69ac7602e16213115f5473c3ac52f2297c0b992060515e35e851

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 85466841963e170bda5457f221e7ad31aa28ae66842d6736dbb88c0dff188d01
MD5 d88196d00d0d81a0277effd29b18917e
BLAKE2b-256 0076b446f4569b6a62b61ccccdcc9f168007b6c378bdbdc4876a7323d586f9db

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.3.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 29fec8fc917e4ae017272dded87d4a9d04542fb3458d1a7ecb234b5ccb692098
MD5 bc2938b4d69914c756a61501cae0d165
BLAKE2b-256 c2898f90f4bc0a157bf74108638c0c9d245c9a157ca41818e1e4a07c80b157ad

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 eb9b68cc1d41afe7f01e3d89176bf8256df0f9019a542b5416a83c972a576b08
MD5 d2de1decbe6b84a016edad49eabb22b9
BLAKE2b-256 770413d09640f6fb1db2f3f8e3967b5f2850ceb87d0bfc5bdae76b4e3aad7ff0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hoppet-2.3.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dfbd7f90f62836c7a4439f1fe8f549568f0aec8d1dba51491b7260864ecaec82
MD5 c7d467659abb692cb098e1ceb3c4c2c5
BLAKE2b-256 610d3cf2ed7128822bddca3a7c9e7d3d1cb4d68332c704e45e6f4922a8bd3cf9

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