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:2509.XXXXX.

Version numbering

A version number X.Y.Z.a means that the interface uses hoppet version X.Y.Z. The .a part of the version number gets incremented when the Python pip package and/or wheels are updated, but the underlying hoppet code stays the same.

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.0.0.dev0.tar.gz (14.0 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.0.0.dev0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

hoppet-2.0.0.dev0-cp312-cp312-macosx_11_0_arm64.whl (6.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

hoppet-2.0.0.dev0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

hoppet-2.0.0.dev0-cp311-cp311-macosx_11_0_arm64.whl (6.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

hoppet-2.0.0.dev0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

hoppet-2.0.0.dev0-cp310-cp310-macosx_11_0_arm64.whl (6.9 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

hoppet-2.0.0.dev0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.9 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

hoppet-2.0.0.dev0-cp39-cp39-macosx_11_0_arm64.whl (6.9 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

hoppet-2.0.0.dev0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.9 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

hoppet-2.0.0.dev0-cp38-cp38-macosx_11_0_arm64.whl (6.9 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

File details

Details for the file hoppet-2.0.0.dev0.tar.gz.

File metadata

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

File hashes

Hashes for hoppet-2.0.0.dev0.tar.gz
Algorithm Hash digest
SHA256 82802a1e381d43490b860527bf5f21dd02cf8029d88e82e9100339e661d7d328
MD5 9d34dd1f55661cc8e0b684cc84421e3a
BLAKE2b-256 af6a9af284d2d8c84de829ec2089ff5891eb2169453985ea23563a8cc400da26

See more details on using hashes here.

File details

Details for the file hoppet-2.0.0.dev0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hoppet-2.0.0.dev0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 88f60875bec10b039a977a7a1921e9568784434ab11069e9622431c9ba3c3829
MD5 6aa9aac6feddd5fcd0a1478820bf1268
BLAKE2b-256 4a836f4115c518589402b390ed4904c6e9a5e584e1fff05b522b963d7cf5a637

See more details on using hashes here.

File details

Details for the file hoppet-2.0.0.dev0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for hoppet-2.0.0.dev0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 eb12738d06b079ce9d518d98d6971164db33e6c1c9badb2c5418661bbe2aeb3a
MD5 d1e2571b8f9e7ed64cab9d61b35efa34
BLAKE2b-256 ae44140e712a009c0d3eb90152e818377f5f93c433c8a798fa96688106e53dff

See more details on using hashes here.

File details

Details for the file hoppet-2.0.0.dev0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hoppet-2.0.0.dev0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 efbecb1f9880737632d3a9ddeeda88072d3f4facc002dd282f4a930a60d3c039
MD5 b8224e75e8f9cdf05de68d2e6c4681e4
BLAKE2b-256 2d4fe9f71060eb704ee9d739726ebc0e6346121db0e51755b17820f64e030e6c

See more details on using hashes here.

File details

Details for the file hoppet-2.0.0.dev0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for hoppet-2.0.0.dev0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9058a76e19b0ac2293d99f05b7049c94c03d4a907b02c149be9144a188f6604d
MD5 85a198c7735082200272f234d3f8a39b
BLAKE2b-256 431b421981459c0659b1ea37a7d3df6a8a23e85efde32d1fd71cd2de8ba20f0c

See more details on using hashes here.

File details

Details for the file hoppet-2.0.0.dev0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hoppet-2.0.0.dev0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f8a20de91befd970215c660cc98064b503388d5c762080251dad635e32757f23
MD5 3c8bef8a1d5f410e27fd9b06b21fcf6d
BLAKE2b-256 f433277d7a02f8ae34e4f1c509765603b8fdc1939daa9cb8b8fabe8eafce0c52

See more details on using hashes here.

File details

Details for the file hoppet-2.0.0.dev0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for hoppet-2.0.0.dev0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 026b6a565c3d4c71d5c8ce44d923ce5ec3b206e20f0f0efa9cfc500835797f6e
MD5 8933a448ce06ee481ac7e8d52360e673
BLAKE2b-256 9176c4f0309e0b27ef0cb03eba957c2a04d9b929098610807114f0f93493b8ab

See more details on using hashes here.

File details

Details for the file hoppet-2.0.0.dev0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hoppet-2.0.0.dev0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4ff162c9f64136c6ccff844a1cea0f138527407d7227e5ef5fcb29bf933d73d3
MD5 a9870fc123c384b18751ac2322a30f7d
BLAKE2b-256 1966547a3a404dc44d642bef7d97322ef7cd8c24eab98447cb400c98fbd6f1fa

See more details on using hashes here.

File details

Details for the file hoppet-2.0.0.dev0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for hoppet-2.0.0.dev0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fef5c1e6bb49adc8960f4c3739eef921d06378c3ae6f7f769a8d23cee311e123
MD5 8836cbc22602b5b19b3fb648e0012861
BLAKE2b-256 123175c0785ad02b11892ed63401c39d9902f3abdd9488e1766b4499e5f6ba0a

See more details on using hashes here.

File details

Details for the file hoppet-2.0.0.dev0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for hoppet-2.0.0.dev0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e9047e77d7e8096d9ffff65d08b4b43a5301be79f47fae73c883f9281c313653
MD5 4da752b695a8013e7100a2339041bf51
BLAKE2b-256 4c1adf79ec07f0070a19754c17aa88c2d0096f9cda887eb0981a379abcdfd371

See more details on using hashes here.

File details

Details for the file hoppet-2.0.0.dev0-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for hoppet-2.0.0.dev0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 01cb442696162c732d45b361dfd71db8641f50aa03b57de67a99a9f63f6fe2fe
MD5 872300dd182d159fa7f03452ae1a7dc9
BLAKE2b-256 ef97ff0243468372b09fd04b5bcdb71bcb8f0eafef8caaadb7efdb49d5d6d798

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