Skip to main content

Python bindings for Mesh-based Monte Carlo (MMC) photon transport simulator

Project description

PMMC - Python bindings for Mesh-based Monte Carlo (MMC) photon transport simulator

Linux Python Module
MacOS Python Module
Windows Python Module

This module provides a Python binding for Mesh-based Monte Carlo (MMC). For other binaries, including the standalone executable and the MATLAB bindings, see our website.

Mesh-based Monte Carlo (MMC) is a 3D Monte Carlo (MC) simulation software for photon transport in complex turbid media. MMC combines the strengths of the MC-based technique and the finite-element (FE) method: on the one hand, it can handle general media, including low-scattering ones, as in the MC method; on the other hand, it can use an FE-like tetrahedral mesh to represent curved boundaries and complex structures, making it even more accurate, flexible, and memory efficient. MMC uses the state-of-the-art ray-tracing techniques to simulate photon propagation in a mesh space. It has been extensively optimized for excellent computational efficiency and portability.

How to Install

Runtime Dependencies

  • CPU or GPU: An OpenCL-capable CPU or GPU; most modern CPUs or GPUs support OpenCL - an industrial-standard heterogeneous computing library and specification (https://www.khronos.org/opencl/)
  • OpenCL CPU or GPU runtime/driver: Both NVIDIA and AMD GPU graphics drivers should contain out-of-box OpenCL runtimes or drivers; for Intel GPUs, one should install additional OpenCL runtime support from https://github.com/intel/compute-runtime or install the intel-opencl-icd package if the OS provides (such as Ubuntu 22.04); one can also install an open-source OpenCL runtime POCL, using package manager such as sudo apt-get install pocl-opencl-icd. However, POCL's support is largely limited to CPUs. You do not need to install CUDA SDK to use pmmc.
  • Python: Python 3.6 and newer is required. Python 2 is not supported.
  • numpy: Used to pass/receive volumetric information to/from pmmc. To install, use either conda or pip package managers: pip install numpy or conda install numpy
  • iso2mesh is a easy-to-use mesh generator for creating the tetrahedral meshed domain for pmmc, install it with pip install iso2mesh
  • (optional) jdata: Only needed to read/write JNIfTI output files. To install, use pip: pip install jdata on all operating systems; For Debian-based Linux distributions, you can also install to the system interpreter using apt-get: sudo apt-get install python3-jdata. See https://pypi.org/project/jdata/ for more details.
  • (optional) bjdata: Only needed to read/write BJData/UBJSON files. To install, run pip install bjdata on all operating systems; For Debian-based Linux distributions, you can also install to the system interpreter using apt-get: sudo apt-get install python3-bjdata. See https://pypi.org/project/bjdata/ for more details.
  • (optional) matplotlib: For plotting the results. To install, run either pip install matplotlib or conda install matplotlib

Build Instructions

Build Dependencies

  • Operating System: pmmc and mmc can be compiled on most OSes, including Windows, Linux and MacOS.

  • OpenCL library: compiling mmc or pmmc requires to link with libOpenCL.so on Linux, or libOpenCL.dylib on MacOS or OpenCL.dll on Windows. These libraries should have been installed by either graphics driver or OpenCL runtimes.

  • Python Interpreter: Python 3.6 or above. The pip Python package manager and the wheel package (available via pip) are not required but recommended.

  • C/C++ Compiler: pmmc can be compiled using a wide variety of C compilers, including

    • GNU GCC for Linux, MacOS (intalled via MacPorts or brew), and Windows (installed via msys2, mingw64 or cygwin64)
    • Microsoft Visual Studio C/C++ Compiler for Windows.
    • Apple Clang for macOS, available via Xcode.

    Refer to each OS's online documentations for more in-depth information on how to install these compilers. MacOS provides built-in OpenCL library support.

  • OpenMP: The installed C/C++ Compiler should have support for OpenMP. GCC and Microsoft Visual Studio compiler support OpenMP out of the box. Apple Clang, however, requires manual installation of OpenMP libraries for Apple Clang. The easiest way to do this is via the Brew package manager, preferably after selecting the correct Xcode version:

brew install libomp
brew link --force libomp
  • CMake: CMake version 3.15 and later is required. Refer to the CMake website for more information on how to download. CMake is also widely available on package managers across all operating systems.

Build Steps

  1. Ensure that cmake, python and the C/C++ compiler are all located over your PATH. This can be queried via echo $env:PATH on Windows or echo $PATH on Linux. If not, locate them and add their folder to the PATH.

  2. Clone the repository and switch to the pmmc/ folder:

git clone --recursive https://github.com/fangq/mmc.git
cd mmc/pmmc
  1. One can run python3 setup.py install or python3 -m pip install . to both locally build and install the module

  2. If one only wants to locally build the module, one should run python3 -m pip wheel .

  3. If the binary module is successfully built locally, you should see a binary wheel file pmmc-X.X.X-cpXX-cpXX-*.whl stored inside the mmc/pmmc folder. You can install this wheel package using python3 -m pip install --force-reinstall pmmc-*.whl to force installing this locally compiled pmmc module and overwrite any previously installed versions.

How to use

The PMMC module is easy to use. You can use the pmmc.gpuinfo() function to first verify if you have NVIDIA/CUDA compatible GPUs installed; if there are NVIDIA GPUs detected, you can then call the run() function to launch a photon simulation.

A simulation can be defined conveniently in two approaches - a one-liner and a two-liner:

  • For the one-liner, one simply pass on each MMC simulation setting as positional argument. The supported setting names are compatible to nearly all the input fields for the MATLAB version of MMC - MMCLAB)
import pmmc
import numpy as np
import matplotlib.pyplot as plt

import iso2mesh as i2m
node, face, elem = i2m.meshabox([0, 0, 0], [60, 60, 60], 10, 100)  # create a mesh

gpus = pmmc.gpuinfo()  # list all available GPUs

res = pmmc.run(nphoton=1000000, node=node, elem=elem, elemprop=np.ones(elem.shape[0]), tstart=0, tend=5e-9,
               tstep=5e-9, srcpos=[30,30,0], srcdir=[0,0,1], prop=np.array([[0, 0, 1, 1], [0.005, 1, 0.01, 1.37]]))
res['flux'].shape

plt.imshow(np.log10(res['flux'][30,:, :].squeeze()))
plt.show()
  • Alternatively, one can also define a Python dict object containing each setting as a key, and pass on the dict object to pmmc.run()
import pmmc
import numpy as np
cfg = {'nphoton': 1000000, 'node': node, 'elem': elem, 'elemprop': np.ones(elem.shape[0]), 'tstart':0, 'tend':5e-9, 'tstep':5e-9,
       'srcpos': [30,30,0], 'srcdir':[0,0,1], 'prop':[[0,0,1,1],[0.005,1,0.01,1.37]]}
res = pmmc.run(cfg)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

pmmc-0.2.4-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (747.3 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

pmmc-0.2.4-pp310-pypy310_pp73-win_amd64.whl (506.0 kB view details)

Uploaded PyPyWindows x86-64

pmmc-0.2.4-pp310-pypy310_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (745.3 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

pmmc-0.2.4-pp310-pypy310_pp73-macosx_13_0_x86_64.whl (185.7 kB view details)

Uploaded PyPymacOS 13.0+ x86-64

pmmc-0.2.4-pp39-pypy39_pp73-win_amd64.whl (505.9 kB view details)

Uploaded PyPyWindows x86-64

pmmc-0.2.4-pp39-pypy39_pp73-macosx_13_0_x86_64.whl (185.6 kB view details)

Uploaded PyPymacOS 13.0+ x86-64

pmmc-0.2.4-pp38-pypy38_pp73-win_amd64.whl (505.6 kB view details)

Uploaded PyPyWindows x86-64

pmmc-0.2.4-pp38-pypy38_pp73-macosx_13_0_x86_64.whl (185.7 kB view details)

Uploaded PyPymacOS 13.0+ x86-64

pmmc-0.2.4-pp37-pypy37_pp73-win_amd64.whl (505.2 kB view details)

Uploaded PyPyWindows x86-64

pmmc-0.2.4-pp37-pypy37_pp73-macosx_13_0_x86_64.whl (185.2 kB view details)

Uploaded PyPymacOS 13.0+ x86-64

pmmc-0.2.4-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (746.5 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ x86-64

pmmc-0.2.4-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (746.7 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

pmmc-0.2.4-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (746.5 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ x86-64

pmmc-0.2.4-cp313-cp313-win_amd64.whl (508.1 kB view details)

Uploaded CPython 3.13Windows x86-64

pmmc-0.2.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (746.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pmmc-0.2.4-cp313-cp313-macosx_13_0_universal2.whl (187.1 kB view details)

Uploaded CPython 3.13macOS 13.0+ universal2 (ARM64, x86-64)

pmmc-0.2.4-cp312-cp312-win_amd64.whl (508.1 kB view details)

Uploaded CPython 3.12Windows x86-64

pmmc-0.2.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (746.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pmmc-0.2.4-cp312-cp312-macosx_13_0_universal2.whl (187.1 kB view details)

Uploaded CPython 3.12macOS 13.0+ universal2 (ARM64, x86-64)

pmmc-0.2.4-cp311-cp311-win_amd64.whl (507.8 kB view details)

Uploaded CPython 3.11Windows x86-64

pmmc-0.2.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (747.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pmmc-0.2.4-cp311-cp311-macosx_13_0_universal2.whl (188.5 kB view details)

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

pmmc-0.2.4-cp310-cp310-win_amd64.whl (505.7 kB view details)

Uploaded CPython 3.10Windows x86-64

pmmc-0.2.4-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (745.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pmmc-0.2.4-cp310-cp310-macosx_13_0_x86_64.whl (187.1 kB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

pmmc-0.2.4-cp39-cp39-win_amd64.whl (505.0 kB view details)

Uploaded CPython 3.9Windows x86-64

pmmc-0.2.4-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (746.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

pmmc-0.2.4-cp39-cp39-macosx_13_0_x86_64.whl (187.2 kB view details)

Uploaded CPython 3.9macOS 13.0+ x86-64

pmmc-0.2.4-cp38-cp38-win_amd64.whl (504.9 kB view details)

Uploaded CPython 3.8Windows x86-64

pmmc-0.2.4-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (746.2 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

pmmc-0.2.4-cp38-cp38-macosx_13_0_x86_64.whl (187.1 kB view details)

Uploaded CPython 3.8macOS 13.0+ x86-64

pmmc-0.2.4-cp37-cp37m-win_amd64.whl (507.4 kB view details)

Uploaded CPython 3.7mWindows x86-64

pmmc-0.2.4-cp37-cp37m-macosx_13_0_x86_64.whl (186.0 kB view details)

Uploaded CPython 3.7mmacOS 13.0+ x86-64

pmmc-0.2.4-cp36-cp36m-win_amd64.whl (507.3 kB view details)

Uploaded CPython 3.6mWindows x86-64

pmmc-0.2.4-cp36-cp36m-macosx_13_0_x86_64.whl (185.9 kB view details)

Uploaded CPython 3.6mmacOS 13.0+ x86-64

File details

Details for the file pmmc-0.2.4-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 bf66de80e3610625fb67dfca8078e745ac8e0e23e70b2c7e458eeda269da9f87
MD5 6e606b47b925cd50358759369b33c348
BLAKE2b-256 efb2dfd2fb9e7a6374cf97e7796216c6313dc45388b98bc47bafdc92ff90ea1f

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-pp310-pypy310_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 1385deef58370763d2d0d683db2164936931839e0397b197d2c9dbbcb269e11f
MD5 4aae6b31cfa3a5327cf7951028177ee7
BLAKE2b-256 3fe16c22ad97bbe017282a2da0bc2eacf2d450442bc606e627d906f5b82dfc29

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-pp310-pypy310_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-pp310-pypy310_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 d525b7cb5c4e43bc30c7e3caa64ea6b999f25b686a00f6786c16ca1996a44d30
MD5 ddce379bfb3dc37e45d076adb8bb1699
BLAKE2b-256 f555912438b7e0cb904e8631b481bee5f8196fe2741f9cdf50f4c830dc787e08

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-pp310-pypy310_pp73-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-pp310-pypy310_pp73-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 1a5f021b8995ecab20774cb764ed3e0e34e965f1f6972d12fc1d4b17159873d8
MD5 775e90f1e086340f9cec5ceea8b7ad2f
BLAKE2b-256 6107b930663f4a650bd2361d40d11f0ffda7b0affc2e93001e34b665947f6236

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-pp39-pypy39_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-pp39-pypy39_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 acf57eda7c3149328e889b0a45a217a9ca71b20dbeb290622ab280b6043f0458
MD5 aab0652543cf7e1120c6fc8bb6cee483
BLAKE2b-256 d10eeafb6ecb32c2c70444e0aaf2f1aa10f873f4dbad6f360b2969a70d7241b6

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-pp39-pypy39_pp73-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-pp39-pypy39_pp73-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 dca3fa9f1a890653f1767af0fcdd46126aa958a9f942e2c568d3a799c943ffe3
MD5 e75baffb2dd77eb04a76b3d4772c97dc
BLAKE2b-256 f0befd25072ce2aa673b64c4b5aebd088e896f69557ad64c7eec7b87153654bb

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-pp38-pypy38_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-pp38-pypy38_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 d75b5cd000f4956989bdb34492fb968f42aa21b1b986355d54f0d11dad2889c6
MD5 f537d0fd281eef2cd8e030f2dab131d1
BLAKE2b-256 289b0666a5eac82ce3460eb6e39ce27e8cdaa9a31157dac5121e883a78764abe

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-pp38-pypy38_pp73-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-pp38-pypy38_pp73-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 1750713e1f6b24904fb587df76300b058f6a3f90970280ef3695ab8f3c38fa26
MD5 9087793afcf286359d6b05dffec346f6
BLAKE2b-256 01d37cb830273118c1aa8cf9c2d47be3ef8591acb9a9bf577c8bc4ee88f2f957

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-pp37-pypy37_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-pp37-pypy37_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 9377463f2cb7586aa6913a521a04fe47aa6ddeacff22ef0cf2d6ff636aa20969
MD5 74ec4889dd621415792dc2589e483cf1
BLAKE2b-256 7228e5810dcbce126df34bb3019151f5843751c6268cfcf9cb736b9c9501085a

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-pp37-pypy37_pp73-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-pp37-pypy37_pp73-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 430095660c934894c4922c27972d18cfb13893af272af3b27eaa4eeb85a0e742
MD5 57cd82312cdb5d6bf9f379d74d1cfde2
BLAKE2b-256 b6de2aa07ec3e294905920b358a1d96b6af9eee522621dc63fd01c5b7134c11c

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 be71a676c004f6c76c415c1c7d2187ee1394fdc6697bc4859d0cad4545f44995
MD5 1bcd49cbd0df0b43d166aebe0eac031e
BLAKE2b-256 fd8611f738213946be16b4cf1ceb4ecf30eac76ee1c95f60d6f425ef9197a4c1

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 c8fce9a07c77e4a91ff6c281034996de1ea43b7b65d7bff60a455d35cdbeb115
MD5 78c160117fa01a3e55f2d9decdaaccef
BLAKE2b-256 7c8eb6dab0ad607a4092060b6336339a3a0c922bc0e94aaa79cf4463c5154d68

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 cb19478eb7f15ace1281b710db0c7e87353ad71b887e6a554d37a6c34e301da2
MD5 6228417bdfd294b151702a085b02d562
BLAKE2b-256 3b870c141337d4b4c155be1dc636fc40f49bf7d55ed919e894a5e6c2016a5505

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pmmc-0.2.4-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 508.1 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pmmc-0.2.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 0ecf4840eb4a7e3c535d8d4cdebe48d94178a67f62cd8c6294109c6b59a445f2
MD5 5230adf6b0fb5181a9afec05d9cc71af
BLAKE2b-256 7543eb78d6f0f54e6555fb92a5d39aadd6eb1d4980d48da01a71a01561990175

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 4f5cbf9594bd4f4b367172008d2f92a80ce92d549877f4aad17e3d2a5ae04319
MD5 4d730de1bd96cc695f87b285a508fc7e
BLAKE2b-256 ed8cefcd5e5ce328cdb389050960094ef139206005085811749f1ed0590c8fbf

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp313-cp313-macosx_13_0_universal2.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp313-cp313-macosx_13_0_universal2.whl
Algorithm Hash digest
SHA256 53c97aa32af01a3f1c1ae0fd7656fd878a275dbfc366ba791c010835530efd70
MD5 52179484a1300370a4ae1a72edd6bd41
BLAKE2b-256 902063504c9a70461c6113df74dfb3c9d4728307da4e1183669df08d3a36e540

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pmmc-0.2.4-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 508.1 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pmmc-0.2.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a9cdfdea8b8f7d25b338d95d15f9d51956044062ca6c58d7d5ba86112a00e950
MD5 3f214f878aef46041ac6487b8d4524ca
BLAKE2b-256 7ee9c88e5ac9ff87b86bfb3a62c20d09797f29175e4b86ac2c65836af4cc2130

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 1a6f85c9ae123e63453f8f6dab548ff296319afa02aaf25a9cd9e8305ba8d81a
MD5 9b45d4db694d072f718b4e76cea8cd7b
BLAKE2b-256 7a6e4d4a7a4c14c0306d3463c428d576f41af7e8359d96b8a41fca74836fa860

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp312-cp312-macosx_13_0_universal2.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp312-cp312-macosx_13_0_universal2.whl
Algorithm Hash digest
SHA256 6bf426aad5b94202cc0502dd9fb20c9e4675c822bc7d7e310be5c518ef8b5bd3
MD5 ada0bf5a0f5c6feb9fe97b8579cd7570
BLAKE2b-256 862c049813a797cac5dbeb7d84dc6689f319405b7bc40390c16efc515f87ca55

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pmmc-0.2.4-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 507.8 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pmmc-0.2.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e913663faaba2637e1659526547cf33a6793074d8402fcbda821767562702cab
MD5 61f9fccdd659650e2b46a005c0263b71
BLAKE2b-256 cffab8db264447186034221af8147ad41c636b222fbb10297f83283781f3b059

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 e8e748a632cdc40da0cded8429babffe35ccd35b3815d0427956a51cb2358c70
MD5 924cae0eaf4c572fbb13b19871698496
BLAKE2b-256 07eda34e948fb59c40a81339ff4568664b77f230b54cdd4b944bc81f9a1a6712

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp311-cp311-macosx_13_0_universal2.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp311-cp311-macosx_13_0_universal2.whl
Algorithm Hash digest
SHA256 cfea4afeb323b1d1a4866272b9020459b5b9b72783ebbc5fd99eb67c35b008d1
MD5 1faae70485379a2aae0914332a5aa8d3
BLAKE2b-256 71b1ef93404d6806451c9fa6f9796bae0035db7004e3d23e05d01262ca09d5dc

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pmmc-0.2.4-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 505.7 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pmmc-0.2.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ab18a3db06665fedd4e66ec28d3af2421a44b3c11d9bad1dfb967da894f24649
MD5 9e4ee8b9c5f501e1c532cdd947f27b87
BLAKE2b-256 de01149fa934b4d5e50cd409ae0dd53db23137b4f89bdb4560b2f7eab587dcb9

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 1bf89cbcaa1a790405ed5de86904a032a2fef4eb353f2b929165e5a943fc3963
MD5 ea1526cb2c946ccd3bd897cde3290c3e
BLAKE2b-256 c1fccd274fb6156144e31d651e1b1edc59c1ce057a987ddfaa6d59dbeb410a89

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 a115cf3ff544cc64e1876bcd7e22f835b232fe6c524b550a0be8e2f0561d18e2
MD5 182aabc2295731e491d5b38295d76f47
BLAKE2b-256 fc5943f224a187ee5a4ed8b83915a1695ed7f7c23ed23c82aa99fd7926996752

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pmmc-0.2.4-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 505.0 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pmmc-0.2.4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 aaa14d8c81d2494ec3dd3be80d092a8573b651dc6492b704e30e2e01c5b52775
MD5 52500028a693e67ed1a1daa655405ad5
BLAKE2b-256 1ef450c98145019d30720eafc29b5b84bdf3837d2a55917af4daf09f10d98134

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 78ea366770236c0a858ba8015ca574c194bfc6725dfd31ad8dbdeda050a200c2
MD5 deda4c1b7ad2400d34b41678676d595b
BLAKE2b-256 c47f551c37706ce0e5e0050301cd08bf9369659d5961567355ce9af14200bb53

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp39-cp39-macosx_13_0_x86_64.whl.

File metadata

  • Download URL: pmmc-0.2.4-cp39-cp39-macosx_13_0_x86_64.whl
  • Upload date:
  • Size: 187.2 kB
  • Tags: CPython 3.9, macOS 13.0+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pmmc-0.2.4-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 26148809bab87224ce72231fa12a96f7909fecbb1802428f822d8161d5713859
MD5 c65545c79be76588d54d4ecb0048f883
BLAKE2b-256 dc50b9a7a92fa1cec48b59b30c5cd6a03558085b5330c85c2cfe78d2c30d3eea

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: pmmc-0.2.4-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 504.9 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pmmc-0.2.4-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 f8a34ea92964c0d726bb17e30bec446810660ab4e0c292a1aefd66c1c40b2059
MD5 8eb992476503ca4223b83d536589231e
BLAKE2b-256 68067650999801acb25ba0e690bfcf47368db5aaf3b173ea6158069682eecfc4

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 a89b8af0d0668622a6c8ff53407ed13f4cad53f47e6581bbf10ba9536634701f
MD5 ea5685cfc3da5c1a0942ef3e6d4aa9c2
BLAKE2b-256 33d7a3c33c992eb7e4e691e7eb90dc1dc7ec32039652e3ba8e16a6217d3ce50d

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp38-cp38-macosx_13_0_x86_64.whl.

File metadata

  • Download URL: pmmc-0.2.4-cp38-cp38-macosx_13_0_x86_64.whl
  • Upload date:
  • Size: 187.1 kB
  • Tags: CPython 3.8, macOS 13.0+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pmmc-0.2.4-cp38-cp38-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 e2d79972db0772a5072f7d1dcda1922033f4d903edc8581322e3c6d0db404532
MD5 1c492427ccdeab63001906b45400766b
BLAKE2b-256 d04d06b84f52311b64b3e34ced13cad4c5eec1b94ebc1e5dfed6f958815e79c0

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: pmmc-0.2.4-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 507.4 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pmmc-0.2.4-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 223f001b6c2229089ffa269ea10ef8f180a3a0c334d1ff396c23f5bede3ca31f
MD5 770b091c37f4c7d4a90683f4dd33dc2c
BLAKE2b-256 9d4d0975f30051de8f2527c61f412a18e031810a066f2f0cbf0f570f64d7d1cc

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp37-cp37m-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp37-cp37m-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 50986aa174c9e1a13c2d69e4bbdfccce3b7bfcaf9363d59bb0d20ac613b2652d
MD5 d2195f42a298bdffb145cba47f00e040
BLAKE2b-256 602888001a12a04651b26d8927b36f907b62100ed76bb32b262f3ae2ca80f059

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: pmmc-0.2.4-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 507.3 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pmmc-0.2.4-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 60328ed39188d9d19274d47dc03ac28422b2122a38437eccad0974ff0e053156
MD5 d9735c7e12c21a7add0ec8054513ef1d
BLAKE2b-256 e3d80a7b978358e2c064b45c7465101fe34b8f492378dae1c807c0865e9ef78f

See more details on using hashes here.

File details

Details for the file pmmc-0.2.4-cp36-cp36m-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pmmc-0.2.4-cp36-cp36m-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 6904f4c73eb24a2114284e02b1ecee3da3b95f4f4423f35a45d565c36fa5d6e5
MD5 e2466f82aadeb982ffe4622db9b4d7d6
BLAKE2b-256 24b36df61b5ac7c4146c1fd002c8e3c90d3524cc11abe9a6574864c2e8455c13

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