Skip to main content

Pythonic interface to the HepMC3 C++ library licensed under LGPL-v3.

Project description

A Pythonic wrapper for the HepMC3 C++ library.

https://scikit-hep.org/assets/images/Scikit--HEP-Project-blue.svg https://badge.fury.io/py/pyhepmc.svg https://coveralls.io/repos/github/scikit-hep/pyhepmc/badge.svg?branch=main https://zenodo.org/badge/DOI/10.5281/zenodo.7013498.svg

pyhepmc was formerly known as pyhepmc-ng. The development of pyhepmc-ng continues in the pyhepmc package.

HepMC3 has its own Python bindings. Why should you use these?

pyhepmc is easy to install

The command pip install pyhepmc just works on all common platforms. Since we publish binary wheels, you don’t need to compile anything. Since we include the HepMC3 library, you don’t need to install it separately either.

However, building from source is also easy. External software is not required. Just download the repository with git clone --recursive and run pip install -v -e ..

pyhepmc is Pythonic, Numpy-friendy, and Jupyter notebook-friendly

pyhepmc is a hand-crafted mapping of C++ code to Python, see documentation for details, while the official HepMC3 bindings are generated by a script. The pyhepmc API has been optimised for safety, usability, and efficiency by a human expert, something that an automatic tool cannot provide. pyhepmc brings these unique features:

  • Python idioms are supported where appropriate.

  • Simple IO with pyhepmc.open.

  • An alternative Numpy API accelerates event processing up to 70x compared to the standard API.

  • The public API is fully documented with Python docstrings.

  • Objects are inspectable in Jupyter notebooks (have useful repr strings).

  • Events render as graphs in Jupyter notebooks (see next item).

pyhepmc supports visualizations powered by graphviz

pyhepmc can optionally visualize events, using the mature graphviz library as a backend.

docs/_static/pyhepmc.svg

pyhepmc is actively maintained

pyhepmc is part of the Scikit-HEP project, which aims to provide all tools needed by particle physicists to do data analysis in Python. It is developed in close collaboration with the HepMC3 project.

pyhepmc is thoroughly unit tested

We have close to 100% coverage for the Python API.

Documentation

Documentation is available here, and includes some examples (Jupyter notebooks). Furthermore, you can use Python’s help() browser to learn about the API. The documentation is generated from Python docstrings, which are translated from the HepMC3 library, which is documented here.

License

The pyhepmc code is covered by the BSD 3-clause license, but its main functionality comes from bundled software which is released under different licenses. The HepMC3 library is licensed under LGPL-v3 and bundles other software which is released under different licenses. See the files LICENSE and LICENSE_bundled in the source directory for details.

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

pyhepmc-2.12.0.tar.gz (370.6 kB view details)

Uploaded Source

Built Distributions

pyhepmc-2.12.0-cp311-cp311-win_amd64.whl (483.5 kB view details)

Uploaded CPython 3.11 Windows x86-64

pyhepmc-2.12.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (619.2 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

pyhepmc-2.12.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (572.1 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

pyhepmc-2.12.0-cp311-cp311-macosx_10_9_x86_64.whl (563.3 kB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

pyhepmc-2.12.0-cp311-cp311-macosx_10_9_universal2.whl (1.0 MB view details)

Uploaded CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

pyhepmc-2.12.0-cp310-cp310-win_amd64.whl (483.3 kB view details)

Uploaded CPython 3.10 Windows x86-64

pyhepmc-2.12.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (619.7 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

pyhepmc-2.12.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (572.1 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

pyhepmc-2.12.0-cp310-cp310-macosx_10_9_x86_64.whl (563.3 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

pyhepmc-2.12.0-cp310-cp310-macosx_10_9_universal2.whl (1.0 MB view details)

Uploaded CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)

pyhepmc-2.12.0-cp39-cp39-win_amd64.whl (483.4 kB view details)

Uploaded CPython 3.9 Windows x86-64

pyhepmc-2.12.0-cp39-cp39-win32.whl (411.2 kB view details)

Uploaded CPython 3.9 Windows x86

pyhepmc-2.12.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (572.5 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

pyhepmc-2.12.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (558.9 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

pyhepmc-2.12.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl (577.3 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ i686

pyhepmc-2.12.0-cp39-cp39-macosx_10_9_x86_64.whl (563.4 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

pyhepmc-2.12.0-cp39-cp39-macosx_10_9_universal2.whl (1.0 MB view details)

Uploaded CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)

pyhepmc-2.12.0-cp38-cp38-win_amd64.whl (483.9 kB view details)

Uploaded CPython 3.8 Windows x86-64

pyhepmc-2.12.0-cp38-cp38-win32.whl (411.4 kB view details)

Uploaded CPython 3.8 Windows x86

pyhepmc-2.12.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (571.7 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

pyhepmc-2.12.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (559.1 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

pyhepmc-2.12.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl (576.9 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ i686

pyhepmc-2.12.0-cp38-cp38-macosx_10_9_x86_64.whl (563.9 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

pyhepmc-2.12.0-cp38-cp38-macosx_10_9_universal2.whl (1.0 MB view details)

Uploaded CPython 3.8 macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file pyhepmc-2.12.0.tar.gz.

File metadata

  • Download URL: pyhepmc-2.12.0.tar.gz
  • Upload date:
  • Size: 370.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for pyhepmc-2.12.0.tar.gz
Algorithm Hash digest
SHA256 ce236572cd1609d3adb1bff90da2106c07213aeb6c60d9529fbf7b60b2480dca
MD5 fa8f3afdee96ef70a79b9d23f50eedef
BLAKE2b-256 994011e7e6ea5ecf90dfb1e396bde86e8cdbedabb69c3be80af6c2e3046df943

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pyhepmc-2.12.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 483.5 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for pyhepmc-2.12.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 c6e3ffefca17cfabcb05288ec50152065a508c20a847c891bcfec62e08a7f46f
MD5 e90289a91cec0f0d241dbea5eef3c890
BLAKE2b-256 b468ed7cc25e7cfda6a54daa97aebcc954a4566bbfe39186100843dc2757fd02

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6307399619150bdcc6fe4e66a3140a7b908b7906f2d031b0ca54860a6eee2326
MD5 31f5e9e4e0d38dedf1b03ccc90e48545
BLAKE2b-256 09ddd08d3f11b35f37c38965caa0d678670428b243ba21e2cecc547433e9d369

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0a306d3f84b094e6cbdc86a6b10d8118062f6e0fc2f542260a239491e0561ebd
MD5 3a9c5a0cff837b8868bb12b85e527e19
BLAKE2b-256 b408cacd81c55b47f9975bda5185b828d6ff2eff297fced7becbd4d857b21ddc

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 dcc8336bdb40e3c78eb494d551aee19c44a559a87307addfcbd4c70c87944388
MD5 47b769ab7c6ee613d6eff3771be0cafc
BLAKE2b-256 4aa47e0201fb6f4967eee42f79713c96f9aa32b1f9efed7581c5374a17ee27ef

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 7bb55cd4403dc868fa140da8791358e7aebe257f14e72adaa5a365f39a850fba
MD5 847d51b2d3f2d0dd15cb22b418cc885e
BLAKE2b-256 599e9697f89b789112d5338e02229e86396f8cd9b323d4e3983613d19856004b

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pyhepmc-2.12.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 483.3 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for pyhepmc-2.12.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 79622c08eb81c1e16e5b599b4aa8b988b00099ed88598f23cae06b2154122764
MD5 1511e67847456b579637333f47433687
BLAKE2b-256 988dce6e49a9f4ea8f52e680b3b8648973974a9462832fb81a1d901f982f16c7

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2a9f4f1abeca95894efe39a09eaabf7d6e5a4a02c134280151b48829f9320dfe
MD5 165a9e4f410da14a46f4d06e3b28420e
BLAKE2b-256 118123736be20506f754e2c35cc2edf1065daec2f281db43b34c5a6571171f8e

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d546ce087ad33eba60dbbacab52bd0beb5cd2c4e06d2fd0989acd6f8608e6e22
MD5 a3833d9172ca4c462586315c51f66fb0
BLAKE2b-256 8c323a5b0b22c436bcdabefdcaee844bf9b55dd6656b47ef869e77ced4ff0086

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e0558cb5a4710dad76172b0faf37d83482d12f1e2cf0a9b8281caa817e2a7b9f
MD5 b9d96dc478d45bd431c8bb3d20c557d3
BLAKE2b-256 f873af72f668baf5e57b9297603955307ac8fce4ba2a001eb181ff5a80da71b9

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 abef202480ee710874520f077ccb5ab48959de5ccf9c420625e6b300257cae83
MD5 a5d6b23767e71c8c85134e161c6b8b24
BLAKE2b-256 fafd1e5be70ec7ffffefd37eeefce13f0637de79c1a505d772719de3120d3846

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pyhepmc-2.12.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 483.4 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for pyhepmc-2.12.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 be1dad50f74aed05a6b42625e406fdc8ecdef4b66b1d562f63f45a3e5b6d92f7
MD5 96ff6a9eee703fb1bdba9a879949ccbc
BLAKE2b-256 66a01aa4d279fcc817c042f2c45aeb22792be032dd7214473c12ab4a375d3d3a

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp39-cp39-win32.whl.

File metadata

  • Download URL: pyhepmc-2.12.0-cp39-cp39-win32.whl
  • Upload date:
  • Size: 411.2 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for pyhepmc-2.12.0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 4c082803f4839242118af54575bf374292a632ef901690f28a26c38fe3e5cda5
MD5 8d73396dac54de99814bba97351d2a70
BLAKE2b-256 2abd289e96039c96e0419b441e0b8525e2e16f786a034585b4f52e76d452e6c4

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 194a1ede2bb505474c10d9ce09852cf13b216c13adbb9d6fedbce987b8af972f
MD5 02706940daef6ebd68bbb834a56c0367
BLAKE2b-256 ea03fb730e818bda0b59ff0206bd677e12f43c3ae18b469a52318fa1a31764ec

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 8e8a5eeafcb8c3e0bf8a1cc6decdaafb110ed1e7a0f7a1690f541d85f085076f
MD5 32ccb916f2692e9d4728319a549a13a8
BLAKE2b-256 682144317d924583abfb501cffdb1dffe7fa0b2a33f9cdac5a832506d462f046

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 1bc81a737b07c3da9bfe270358179fc3009f581f9625234cbcd589b9fd261d01
MD5 f1799c9b1e06fe634e2522dcb5bd64e0
BLAKE2b-256 06f35cf812ccf8a124beac151f56179dbaeaf16957886cea819574bfa701d3fa

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ee1635140fb0e0b7024ecc87fa699d3b04786a05ec0386eed437c13f696a8751
MD5 ce6482772974f1e605a915b85889da0e
BLAKE2b-256 2f733f6797628e7e77efcbf77129fea8d6da14230c895fd0efa8cb22826cc86c

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 dfc928001fb0e3a40e483df2fd1c47f60c7a4035996a60ebe2bea51fe0d22bd3
MD5 76b3b137c4d3328c4cec276bea1be873
BLAKE2b-256 2906b7c2a359888692d332fa452e54e9bde3cd8daae389f07ce12b26e059c4e8

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: pyhepmc-2.12.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 483.9 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for pyhepmc-2.12.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 27aa8b8c299004f0e118c873cd81eefc5dff9b6a33558f82164896ac9ee1baca
MD5 8f684680c2dc7daba8b340dec5a5b8f7
BLAKE2b-256 92826be04633be8613e8295775bbf364ef27f12cbbf9559e01165e336a75accb

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp38-cp38-win32.whl.

File metadata

  • Download URL: pyhepmc-2.12.0-cp38-cp38-win32.whl
  • Upload date:
  • Size: 411.4 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for pyhepmc-2.12.0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 2a13c8d6593f0505816e4819ef499cc94673fc5d73f58527a4e7e31c5d58360a
MD5 842f9e602a2ddb6ee6e5003767d638d7
BLAKE2b-256 4491edd62643e223b140d132acea879d194d80c7b6eeb6403731920c431f290e

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2a388400dcd9d47e4986280d595a5c5f44e0f0c504f8208f6eda7c7d91cd6296
MD5 23ef170dac81fba27a51479f9248de45
BLAKE2b-256 4a7c9555b2d6562adde98faa2aae4cfaab9552aee4d11cbb5175c1f51daca49f

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 db9d901c1880314914547ba4741d9eb54a5d64732e5bfd7834b6e24ac7677def
MD5 948100a8a52e70a8f60d3b8a4474a675
BLAKE2b-256 f4dc27eceefea84b16d8c2e7ad1499b2e629a14a67711884604d0deacc35694d

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 a437d8b1aa0046b709b3237df171e5ac8e342e47e74f9555399f476055ac35f0
MD5 d3c01fb39a0178c6ab9fc035198085a6
BLAKE2b-256 f294103644d5bcc009e32b410fe605ddca87e2de900ab6bba838056663fe4259

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bcfcdcef8f442f28999bc6618c3508679d5c9cf12823cd965b1c09c09b67b94b
MD5 7fe9550fbdc1cf258f23fbc39571ca05
BLAKE2b-256 d982f659d8967247a067fc92a55fcf3889cc7c72e351fb0df4bd199472bc43c2

See more details on using hashes here.

File details

Details for the file pyhepmc-2.12.0-cp38-cp38-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pyhepmc-2.12.0-cp38-cp38-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 ada16c5980ed448af2b931f36a48a51286aaac7614c301c3b684804ec28e966c
MD5 785b86e8fbb1a4c62886ab9f0a7daef7
BLAKE2b-256 3b93ea1a81e01703fc3df03f822656008a3794a35249842173332d10011460ff

See more details on using hashes here.

Supported by

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