Skip to main content

Utilities and API for accessing MCPL (.mcpl) files

Project description

MCPL - Monte Carlo Particle Lists

MCPL files, with extensions .mcpl and .mcpl.gz is a binary format for usage in physics particle simulations. It contains lists of particle state information, and can be used to interchange or reuse particles between various Monte Carlo simulation applications. The format itself is formally described in:

T. Kittelmann, et al., Monte Carlo Particle Lists: MCPL, Computer Physics Communications 218, 17-42 (2017), https://doi.org/10.1016/j.cpc.2017.04.012

All MCPL code is provided under the highly liberal open source Apache 2.0 license (http://www.apache.org/licenses/LICENSE-2.0), and further instructions and documentation can be found at https://mctools.github.io/mcpl/.

The mcpl-core package

The mcpl-core package provides:

  • The mcpltool, a command-line utility for working with MCPL files. For more information about this tool, refer to the https://mctools.github.io/mcpl/usage_cmdline page.
  • The C/C++ API in the form of the mcpl.h header file and associated shared library. For more information about this API, refer to the https://mctools.github.io/mcpl/usage_c page.
  • Configuration utilities for working with the C/C++ API in downstream projects. Specifically, CMake configuration code and the mcpl-config command-line utility are provided.

In addition to the links above, several examples of how to use the C/C++ API, including how to configure a downstream CMake-based project, is provided in the https://github.com/mctools/mcpl/tree/HEAD/examples directory.

Note that it is recommmended for most users to simply install the package named mcpl, rather than referring to the package named mcpl-core directly.

Scientific reference

Copyright 2015-2025 MCPL developers.

This software was mainly developed at the European Spallation Source ERIC (ESS) and the Technical University of Denmark (DTU). This work was supported in part by the European Union's Horizon 2020 research and innovation programme under grant agreement No 676548 (the BrightnESS project).

All MCPL files are distributed under the Apache 2.0 license, available at http://www.apache.org/licenses/LICENSE-2.0, as well as in the LICENSE file found in the source distribution.

A substantial effort went into developing MCPL. If you use it for your work, we would appreciate it if you would use the following reference in your work:

T. Kittelmann, et al., Monte Carlo Particle Lists: MCPL, Computer Physics Communications 218, 17-42 (2017), https://doi.org/10.1016/j.cpc.2017.04.012

Support for specific third party applications

Note that some users might also wish to additionally install the mcpl-extra package, which contains cmdline tools for converting between the binary data files native to some third-party Monte Carlo applications (currently PHITS and MCNP[X/5/6]). Users of Geant4 might wish to install the mcpl-geant4 package, which provides C++ classes (and CMake configuration code) for integrating MCPL I/O into Geant4 simulations. Finally, many Monte Carlo applications have directly integrated support for MCPL I/O into their codes. At the time of writing, the list of applications with known support from MCPL I/O includes:

  • McStas (built in)
  • McXtrace (built in)
  • OpenMC (built in)
  • Cinema/Prompt (built in)
  • VITESS (built in)
  • RESTRAX/SIMRES (built in)
  • McVine (built in)
  • MCNPX, MCNP5, MCNP6 (based on ssw2mcpl/mcpl2ssw from the mcpl-extra package)
  • PHITS (based on phits2mcpl/mcpl2phits from the mcpl-extra package)
  • Geant4 (based on C++/CMake code from the mcpl-geant4 package)

Note that instructions for installation and setup of third-party products like those listed above are beyond the scope of the MCPL project. Please refer to the products own instructions for more information.

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

mcpl_core-2.1.0.tar.gz (87.4 kB view details)

Uploaded Source

Built Distributions

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

mcpl_core-2.1.0-py3-none-win_arm64.whl (162.8 kB view details)

Uploaded Python 3Windows ARM64

mcpl_core-2.1.0-py3-none-win_amd64.whl (179.2 kB view details)

Uploaded Python 3Windows x86-64

mcpl_core-2.1.0-py3-none-musllinux_1_2_x86_64.whl (134.2 kB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

mcpl_core-2.1.0-py3-none-musllinux_1_2_aarch64.whl (134.1 kB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

mcpl_core-2.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (129.9 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

mcpl_core-2.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl (132.2 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

mcpl_core-2.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (126.3 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

mcpl_core-2.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl (132.2 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

mcpl_core-2.1.0-py3-none-macosx_11_0_arm64.whl (111.0 kB view details)

Uploaded Python 3macOS 11.0+ ARM64

mcpl_core-2.1.0-py3-none-macosx_10_9_x86_64.whl (116.9 kB view details)

Uploaded Python 3macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: mcpl_core-2.1.0.tar.gz
  • Upload date:
  • Size: 87.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for mcpl_core-2.1.0.tar.gz
Algorithm Hash digest
SHA256 a7adcebcf7918de5e54b48cde46c29b8c2e974800ec6a533827687754b2576e6
MD5 dc5d54456eef79383b6db52bfe9c9d2f
BLAKE2b-256 b3fd19afe3401be4cd760738f9bcecccbb4c09bcb855b6112f7d0e8221ad908b

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.1.0.tar.gz:

Publisher: pypi.yml on mctools/mcpl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcpl_core-2.1.0-py3-none-win_arm64.whl.

File metadata

  • Download URL: mcpl_core-2.1.0-py3-none-win_arm64.whl
  • Upload date:
  • Size: 162.8 kB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for mcpl_core-2.1.0-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 cb809b0ea7ced6bd7f85deed4d56209e1fbe26dc4ee2a2880d9d260913741d0c
MD5 c235bfdeb065801794affcf01acd1713
BLAKE2b-256 8eebc122f90c11328d8888cf35165c269a78919dd4661955d5769d98d24857c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.1.0-py3-none-win_arm64.whl:

Publisher: pypi.yml on mctools/mcpl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcpl_core-2.1.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: mcpl_core-2.1.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 179.2 kB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for mcpl_core-2.1.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 0b7a5ece1caa96f3649880378f4be41de348b6ab00ee1d13c030c9d92a759ea3
MD5 9db7b7e74c1310a464ba63f238653fa4
BLAKE2b-256 908d8607d15eb1f2ec6d31e1a8efca4705014e66ea76491c167a1a0bdf175b0a

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.1.0-py3-none-win_amd64.whl:

Publisher: pypi.yml on mctools/mcpl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcpl_core-2.1.0-py3-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.1.0-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 5f0d28837f6ad1c7b27e94bc82893b9969c740e4ded7deb155e9d95ed018d151
MD5 c2b3bc68fae3688f60f4489d3da218a7
BLAKE2b-256 994e830819b0d6ff1cd1fcb1963199331c3783f01036df727ed37962194e371a

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.1.0-py3-none-musllinux_1_2_x86_64.whl:

Publisher: pypi.yml on mctools/mcpl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcpl_core-2.1.0-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.1.0-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 363ca8189131d9792b122181859ecdb00008a4e4f936aef8f748dff5be7e5577
MD5 deae502386aaa4e45b570468618d4526
BLAKE2b-256 562fc99fcabf7dfd3b9a10579a3730d8056ba5fb4e6d386a8e397f04a5291118

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.1.0-py3-none-musllinux_1_2_aarch64.whl:

Publisher: pypi.yml on mctools/mcpl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcpl_core-2.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f5640078c56da25994986542798705056df910ab93eefa6848aade360f92ee97
MD5 b31d2d4db5b33faed2c7f98272851ac6
BLAKE2b-256 63b1594121b0b097fd1b0755f9ee39d7eceb8a065cd715ce6c700c1c29910bc2

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: pypi.yml on mctools/mcpl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcpl_core-2.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b66adebd5a9839951d8462d4594ed4cda60f95f6696fa5f0c39d26ed9996515c
MD5 403e7c3c7f82220c5102fe27a72fe9d7
BLAKE2b-256 1e59cc2c40c723b41ec6345c4088120937f7b6d639e1c857e3178f49b523de26

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl:

Publisher: pypi.yml on mctools/mcpl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcpl_core-2.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 006691e82561b1a689e95b1942bfd581e0779c8572f34be4413e31ee8b688d6a
MD5 8f8a90179fb3cafc73abd1548072a98c
BLAKE2b-256 9667edc90f206b095b05806c6d8d6841fc8b15d8f3d63b2cdc4f90ee70ddf330

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: pypi.yml on mctools/mcpl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcpl_core-2.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 33306039163e53993088f241b420cece50c96571d484e8245533cb160fa7551a
MD5 d91bdbf1b1f6aa9431a53416d3833656
BLAKE2b-256 e8e581810520affecf2e8746254431c81fb01375b9a13697d9df919f66c5cbd8

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl:

Publisher: pypi.yml on mctools/mcpl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcpl_core-2.1.0-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.1.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dfbcf028d07e0e4236c96b97a743047724fe41cb04ebdc6831719520ff996723
MD5 c169cdb410f5a9715e6aa12d0cd45f87
BLAKE2b-256 82007b951d04ef598afb147b978a85b6e7246d93930c5d5732c5fe8c7342ffeb

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.1.0-py3-none-macosx_11_0_arm64.whl:

Publisher: pypi.yml on mctools/mcpl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcpl_core-2.1.0-py3-none-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.1.0-py3-none-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 695cc8a8eab2247cd4106013414af3f87e8977bed91e8ae13d29b71f584f8fd9
MD5 3de504ecfd3f77e90c9f24e7397d3c7b
BLAKE2b-256 5f8f6ec00aba6f2b25e0710cece7c5499307035449d042d1e75e5c91422b2d67

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.1.0-py3-none-macosx_10_9_x86_64.whl:

Publisher: pypi.yml on mctools/mcpl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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