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.0.0.tar.gz (76.8 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.0.0-py3-none-win_arm64.whl (146.6 kB view details)

Uploaded Python 3Windows ARM64

mcpl_core-2.0.0-py3-none-win_amd64.whl (159.0 kB view details)

Uploaded Python 3Windows x86-64

mcpl_core-2.0.0-py3-none-musllinux_1_2_x86_64.whl (109.1 kB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

mcpl_core-2.0.0-py3-none-musllinux_1_2_aarch64.whl (109.6 kB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

mcpl_core-2.0.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (106.1 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

mcpl_core-2.0.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl (107.8 kB view details)

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

mcpl_core-2.0.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (104.3 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

mcpl_core-2.0.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl (109.0 kB view details)

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

mcpl_core-2.0.0-py3-none-macosx_11_0_arm64.whl (89.9 kB view details)

Uploaded Python 3macOS 11.0+ ARM64

mcpl_core-2.0.0-py3-none-macosx_10_9_x86_64.whl (95.5 kB view details)

Uploaded Python 3macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: mcpl_core-2.0.0.tar.gz
  • Upload date:
  • Size: 76.8 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.0.0.tar.gz
Algorithm Hash digest
SHA256 ceebeb3309aff220de5f5b8657f6bcd6f318786e41aa0b187c6195576a9502d2
MD5 ecf82c62fe1a746d4d11b884dc7d3e13
BLAKE2b-256 058ccefe63ad163474eea88bac8b314c57122262112c3cffdb43ebf01177ece9

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.0.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.0.0-py3-none-win_arm64.whl.

File metadata

  • Download URL: mcpl_core-2.0.0-py3-none-win_arm64.whl
  • Upload date:
  • Size: 146.6 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.0.0-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 120013e2c4d2761ebe3f42c84b6fae990d5fd17c9849859e8c6f3ab4df0b1e21
MD5 537e1398e31dcd873a89b597eedb2211
BLAKE2b-256 b73d8d659f1fe0d7e97abb96d59830cb8a8ffb5b506f6ebd4aa0f9d625afb07f

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.0.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.0.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: mcpl_core-2.0.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 159.0 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.0.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 8bc22eaa2faee2e12ed38dffe29b7eb633ce044771b6b9a64b180bdb1a96b28c
MD5 54f5fdcc06af358fa5ff8dea40d36fd0
BLAKE2b-256 14fc541e3187063d5a6e0ad82b70edb83764cd8feb339a7af671e21c79ef731b

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.0.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.0.0-py3-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.0.0-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 dd017993170c4b5c6cbd1b035cdd6e929fc1d4f03d26ea78a6710d088e003c91
MD5 6b391aecf76ea5ec904a81d337a80277
BLAKE2b-256 f605b437a0fa958b079580891e0ee6b825984f57302437bbd2dc54cc4cf26c06

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.0.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.0.0-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.0.0-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 65ff1e12612402be00b97c751cd482d01f952a9516503650643cfdf9a85c4fc2
MD5 c4aadc5060c29896d1c59f6c6360d338
BLAKE2b-256 8525e8d5819c3db2697c4e556bf79738012eda7274647498edde04858a09a2aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.0.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.0.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.0.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0b54e2c300e3b313fbd6bce7aa9f493cb8a0c106894aa17d9b775b874bc1d905
MD5 07dd3789ef343bfc9664eef9e4ce4644
BLAKE2b-256 d92221c370befd37290f4eafb230df572b1b33b8d5bd2afcf3dbf6b964bb007e

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.0.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.0.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.0.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 521fed649f7d926baad9286a1a66cf838195e98e8a261652cb2cae7487033157
MD5 8c021f721994293a92c4d578773b1605
BLAKE2b-256 949fd0eca4d3034438b4dcd43624bd0728fea726a1a0a7b021239150ea2a50a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.0.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.0.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.0.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2cb46e47245e54aed63bb1bca0a3a8d856d64acf4ff32231ca92110fc9e02220
MD5 f02aa682ff5e9b7a30a355704087050a
BLAKE2b-256 3f8aecf73c07096b5ab974025ec07029460aedca6899cb28a28ccda56812e1a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.0.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.0.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.0.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 249a64082b1e2c5a554275bcb84d1ab87a6ab46bd813ede841f299916761fdd5
MD5 a0a8a20ab9543b551d29686b794f3c5a
BLAKE2b-256 ed48dc0be6f9252c0739b9cfba55dfb337c74fd6484866973a2367e41d17cb37

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.0.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.0.0-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.0.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e69e9bf317793b6f26f7165b8a1ada1680f7a787dca92b27d388a88f884c92e3
MD5 29c3d8f5ef0b20d4f2f32a4613b3d033
BLAKE2b-256 c400694f7eda611b971d3277fc3fb74c41adc1ad8a770e471bca3e479f044d5b

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.0.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.0.0-py3-none-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for mcpl_core-2.0.0-py3-none-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c6239ce3312d3fb5e6399687f837872650359e8f195f99a855aaab10594ca9e2
MD5 f425eceadc07c7c06971e65816dfccf7
BLAKE2b-256 e6a72d3e54682f100f5295f21c8838b3a3f292f54a91a66f3a64e38d67d6223f

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcpl_core-2.0.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