Skip to main content

Python bindings for Monte Carlo eXtreme (OpenCL) photon transport simulator

Project description

PMCX-CL - Python bindings for Monte Carlo eXtreme (OpenCL) photon transport simulator

Linux Python Module
MacOS Python Module
Windows Python Module

This module provides a Python binding for Monte Carlo eXtreme for OpenCL (MCXCL). For other binaries, including the standalone executable and the MATLAB bindings, see our website.

Monte Carlo eXtreme (MCX) is a fast photon transport simulation software for 3D heterogeneous turbid media. By taking advantage of the massively parallel threads and extremely low memory latency in a modern graphics processing unit (GPU), MCX is capable of performing Monte Carlo (MC) photon simulations at a blazing speed, typically hundreds to a thousand times faster than a single-threaded CPU-based MC implementation.

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 pmcxcl.
  • Python: Python 3.6 and newer is required. Python 2 is not supported.
  • numpy: Used to pass/receive volumetric information to/from pmcxcl. To install, use either conda or pip package managers: pip install numpy or conda install numpy
  • (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: pmcxcl and mcxcl can be compiled on most OSes, including Windows, Linux and MacOS.

  • OpenCL library: compiling mcxcl or pmcxcl 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: pmcxcl 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 pmcxcl/ folder:

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

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

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

How to use

The PMCXCL module is easy to use. You can use the pmcxcl.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 MCX simulation setting as positional argument. The supported setting names are compatible to nearly all the input fields for the MATLAB version of MCX/MCXCL - MCXLAB)
import pmcxcl
import numpy as np
import matplotlib.pyplot as plt

res = pmcxcl.run(nphoton=1000000, vol=np.ones([60, 60, 60], dtype='uint8'), 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,:, :]))
plt.show()
  • Alternatively, one can also define a Python dict object containing each setting as a key, and pass on the dict object to pmcxcl.run()
import pmcxcl
import numpy as np
cfg = {'nphoton': 1000000, 'vol':np.ones([60,60,60],dtype='uint8'), '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 = pmcxcl.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.

pmcxcl-0.7.0-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

pmcxcl-0.7.0-pp310-pypy310_pp73-win_amd64.whl (1.0 MB view details)

Uploaded PyPyWindows x86-64

pmcxcl-0.7.0-pp310-pypy310_pp73-macosx_15_0_x86_64.whl (581.2 kB view details)

Uploaded PyPymacOS 15.0+ x86-64

pmcxcl-0.7.0-pp310-pypy310_pp73-macosx_14_0_arm64.whl (566.6 kB view details)

Uploaded PyPymacOS 14.0+ ARM64

pmcxcl-0.7.0-pp39-pypy39_pp73-win_amd64.whl (1.0 MB view details)

Uploaded PyPyWindows x86-64

pmcxcl-0.7.0-pp39-pypy39_pp73-macosx_15_0_x86_64.whl (581.1 kB view details)

Uploaded PyPymacOS 15.0+ x86-64

pmcxcl-0.7.0-pp39-pypy39_pp73-macosx_14_0_arm64.whl (566.6 kB view details)

Uploaded PyPymacOS 14.0+ ARM64

pmcxcl-0.7.0-pp38-pypy38_pp73-win_amd64.whl (1.0 MB view details)

Uploaded PyPyWindows x86-64

pmcxcl-0.7.0-pp38-pypy38_pp73-macosx_15_0_x86_64.whl (581.3 kB view details)

Uploaded PyPymacOS 15.0+ x86-64

pmcxcl-0.7.0-pp38-pypy38_pp73-macosx_14_0_arm64.whl (566.6 kB view details)

Uploaded PyPymacOS 14.0+ ARM64

pmcxcl-0.7.0-pp37-pypy37_pp73-win_amd64.whl (1.0 MB view details)

Uploaded PyPyWindows x86-64

pmcxcl-0.7.0-pp37-pypy37_pp73-macosx_15_0_x86_64.whl (581.1 kB view details)

Uploaded PyPymacOS 15.0+ x86-64

pmcxcl-0.7.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ x86-64

pmcxcl-0.7.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

pmcxcl-0.7.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ x86-64

pmcxcl-0.7.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pmcxcl-0.7.0-cp313-cp313-macosx_15_0_universal2.whl (583.1 kB view details)

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

pmcxcl-0.7.0-cp313-cp313-macosx_14_0_universal2.whl (567.3 kB view details)

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

pmcxcl-0.7.0-cp312-cp312-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.12Windows x86-64

pmcxcl-0.7.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pmcxcl-0.7.0-cp312-cp312-macosx_15_0_universal2.whl (583.1 kB view details)

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

pmcxcl-0.7.0-cp312-cp312-macosx_14_0_universal2.whl (567.3 kB view details)

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

pmcxcl-0.7.0-cp311-cp311-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.11Windows x86-64

pmcxcl-0.7.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pmcxcl-0.7.0-cp311-cp311-macosx_15_0_universal2.whl (581.8 kB view details)

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

pmcxcl-0.7.0-cp311-cp311-macosx_14_0_universal2.whl (566.9 kB view details)

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

pmcxcl-0.7.0-cp310-cp310-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.10Windows x86-64

pmcxcl-0.7.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pmcxcl-0.7.0-cp310-cp310-macosx_15_0_x86_64.whl (581.8 kB view details)

Uploaded CPython 3.10macOS 15.0+ x86-64

pmcxcl-0.7.0-cp310-cp310-macosx_14_0_universal2.whl (566.8 kB view details)

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

pmcxcl-0.7.0-cp39-cp39-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.9Windows x86-64

pmcxcl-0.7.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

pmcxcl-0.7.0-cp39-cp39-macosx_15_0_x86_64.whl (581.9 kB view details)

Uploaded CPython 3.9macOS 15.0+ x86-64

pmcxcl-0.7.0-cp39-cp39-macosx_14_0_universal2.whl (566.9 kB view details)

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

pmcxcl-0.7.0-cp38-cp38-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.8Windows x86-64

pmcxcl-0.7.0-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

pmcxcl-0.7.0-cp38-cp38-macosx_15_0_x86_64.whl (581.6 kB view details)

Uploaded CPython 3.8macOS 15.0+ x86-64

pmcxcl-0.7.0-cp38-cp38-macosx_14_0_universal2.whl (566.7 kB view details)

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

pmcxcl-0.7.0-cp37-cp37m-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.7mWindows x86-64

pmcxcl-0.7.0-cp37-cp37m-macosx_15_0_x86_64.whl (579.6 kB view details)

Uploaded CPython 3.7mmacOS 15.0+ x86-64

pmcxcl-0.7.0-cp36-cp36m-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.6mWindows x86-64

pmcxcl-0.7.0-cp36-cp36m-macosx_15_0_x86_64.whl (579.6 kB view details)

Uploaded CPython 3.6mmacOS 15.0+ x86-64

File details

Details for the file pmcxcl-0.7.0-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 eb01f755b7c59f0852e458d5a5caf40a11e7662e69355720eec6a1d17896ac44
MD5 17939f9d763e77b6c3ae0caccc449f80
BLAKE2b-256 6f288480fe2250e3275c1d5ca64f5a11b052a1fd4fe13f87fe28714054a61cfa

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-pp310-pypy310_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 6d1a7b8d1c9a6b5f1f07689675b7efabb4073435fc010d314292e271bf21db4a
MD5 aaff82e55c4a0571d27643cc80818e02
BLAKE2b-256 423a603e60ca9841e95fda73ea518202fa9b2d9a3049b4968d45c84e7a190b10

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-pp310-pypy310_pp73-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-pp310-pypy310_pp73-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 80685d8a41d7774cdab3f74d053768b2d748d1068e19ddaa4913f91030d1830a
MD5 dc01f7e46cff1ebf96b2466c1d1811ce
BLAKE2b-256 c398bdbf225d2df39edada2a1353829a71a8c9fc66774b0d1be2e1448cbf4e3c

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-pp310-pypy310_pp73-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-pp310-pypy310_pp73-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 d7222e82eab39130783805dc4690a43cea2f633e7950e0f42538d5cf5c2588e2
MD5 47abfee2e25ded77c1e772e6cc6957c6
BLAKE2b-256 1f031b496c5113bb7a6f3e1a750397ecde9f2e914802c3c6d295ad54fc0e2d05

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-pp39-pypy39_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-pp39-pypy39_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 70ca1699fbd6fa0809dd85c94ff6cafcd10bcdaba2f63e84a4960249ac62f99a
MD5 dd7fefe7147d78309b3b447d43f4ede4
BLAKE2b-256 623b89d78192f24b76a35172d636e4d1f9428057fe665bf7bf5ec89bd2b566f9

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-pp39-pypy39_pp73-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-pp39-pypy39_pp73-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 a4b5f27bb761ef65acaa1ef7e8ca815c670591db628b7d3b2f5d097b964b9c23
MD5 9e12979e96c3cdd7970b767ad95c7bc2
BLAKE2b-256 83899330f36dd2f452ec295d784d28f01949903772272cd307f6b201996aeff7

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-pp39-pypy39_pp73-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-pp39-pypy39_pp73-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 20b8b1fde169fc06f6b147a9c010230c3a24a503ade8b8748f8acab17195c0ef
MD5 74ef3cd7cc71ee1b9bed4123e99bf44f
BLAKE2b-256 baaa44f154c655e390367bee166ea0eb02cfe36e7b2716680e3cff7008cd5d7f

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-pp38-pypy38_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-pp38-pypy38_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 393a4d26ec30123dffc20cd81614a07a69b70bbf8ad31c7548f205aae496f944
MD5 977c54d34edfc78dd8484591d9142f7e
BLAKE2b-256 cba07d3cfff5d2c070374756603b6de09c2dec3d593c616e634c41c5800d81f2

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-pp38-pypy38_pp73-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-pp38-pypy38_pp73-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 bc7c2d595a318b14c8c827cb6aa881662a1f67f8f6dc5bd4462bd2a70462b562
MD5 36afb143f23d55c5fbe7d51cd59f8e3a
BLAKE2b-256 bd0472b6eb47518512746f504300b1768d6ef97c3ab3929fc2e2191a297a50bb

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-pp38-pypy38_pp73-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-pp38-pypy38_pp73-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 9cb3d319a032de102503ade9addaba5c7a65c7062c4e0bed1ba1f3881d20ec2e
MD5 c53057023323ef5ad03361f9f1c2adae
BLAKE2b-256 fe9db27021fded7ec8c25c62503528603dd3b30c8bb770cc3081dd5398cd30c2

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-pp37-pypy37_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-pp37-pypy37_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 98353c6fc1ac68fb2cf931db30d58cfa6133614fcd273cfcb7a2fac736312071
MD5 5d723195851c640c4a108b07b5501acf
BLAKE2b-256 964dc4774444af5490e06dcfe821188ea4e5be793686640d361b4b5b3ef0bd52

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-pp37-pypy37_pp73-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-pp37-pypy37_pp73-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 7fb98deb86a2fe26ddeff43995c89cba5dfadcfb5b19b1db6865199a56bd60aa
MD5 4e37c5261d85086a21c666caff62c5f3
BLAKE2b-256 9b142c4543d0e703c6e9b2c94969994d69792fa17da00f45bd861a9330268038

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 f4c6732391c9b3105dfde3d22b2bc78a72af783353b8057f7f04d6b7630606fb
MD5 d7e77990bb7159f429503084a0916fa9
BLAKE2b-256 f2a4da956333c18adc8c9ddd7eacd8801d0bba6f831c316f114ca2ba1006f693

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 0e168784b26fa527e3bada6e007749ac0a734779451a706c93df5d580309e877
MD5 7eb3ba2cde5adc22950f268da3c597bf
BLAKE2b-256 f544f59ace997f5d5f77326bcbbe6f3405e180b0205f5877726e133a7aee1d92

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 82e0172f5606b2fa50e402fcdcdbd6c741ba0d67f5aaedecd0d5c16c2c65f615
MD5 d7557ecf20e65427510bdbf24268c5d5
BLAKE2b-256 e0607cd37e68827ae969130d3f2019d8ad223d9621de5a127a70127b71ba8b5c

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 adf24764abc150a65175ca2eb73257b23f974508ee866c9a99982f41bee947b1
MD5 cbedfddb0371a4ba2ffb68e426949c36
BLAKE2b-256 ae6fa273ff986c7bb67a17044a893c69b6dcbaa996a86a02d58a203f8dc64d20

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp313-cp313-macosx_15_0_universal2.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp313-cp313-macosx_15_0_universal2.whl
Algorithm Hash digest
SHA256 6a70ccdbdf7e60613c4bbe982b6bb14c04f234c299b42cc3ea666375fbae33df
MD5 69f4eb2a8f1440c47bcce7f57af59958
BLAKE2b-256 5b21024a00e356eb98ecbcf3682126b95e4f1f79334e51eba512041bc98e46f8

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp313-cp313-macosx_14_0_universal2.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp313-cp313-macosx_14_0_universal2.whl
Algorithm Hash digest
SHA256 c3b3719709b71ac64ef49f949ee3b328c686f700ccba62c402751a75e2805e5c
MD5 efe56705a18183eaa63603110ebb5e2c
BLAKE2b-256 568f45ead5242bf751d943cc10eb9740fbf1a8f7a64c05705ad7650966b2c4a2

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pmcxcl-0.7.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pmcxcl-0.7.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 93992e98359628a445ecd1158702063583848716b02581189641f8472f44285d
MD5 f1beb7aa50a81f2c33828d4a42f41a7a
BLAKE2b-256 e7c8d0924c060a8de5fb7bb6fa2709843d4d78ff1a236a96131b385c14557799

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 9879e289894c8c17a77255f111bc26d39e8d759150c4d19b9c36e89d0ce9eb47
MD5 7c7aab736e256364e622c23015bf2d2d
BLAKE2b-256 40f088fc962de9d93e3d3c71e50dd26377188329caf00b19292d8d45d63786c2

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp312-cp312-macosx_15_0_universal2.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp312-cp312-macosx_15_0_universal2.whl
Algorithm Hash digest
SHA256 6a6d2a57c508053617af8111646f50ab59a6a36b17d0ce32aebb82d08ee9ca53
MD5 b17fed53afad320e115fba880721ee5f
BLAKE2b-256 df13f53fc7a4afe4dcb724e425612371b518c00f66e58fb1936f9b1bbed1242d

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp312-cp312-macosx_14_0_universal2.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp312-cp312-macosx_14_0_universal2.whl
Algorithm Hash digest
SHA256 68c68bffd2021e1e6105218605c03583c2d40384f5d1ddc5833683548d6ba9b9
MD5 3009f3224b9dad36a75e5a8acf82d89b
BLAKE2b-256 79f3929fcaf4afc5d9c5012a09a6e6aa9490c9ddabdd993344cabf06ec7ca5bc

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pmcxcl-0.7.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pmcxcl-0.7.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ecd5a2a3e786bf08c0181ea4815de96bd60068e8f1f9d299d325e9c872ea144c
MD5 3d9c1d8307d74557d8876d813f12a290
BLAKE2b-256 a52b85eb99c27b0db8a5a0bd1bab13990566f8f87fe6b764659204e05183e8e6

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 323daa43e35b6b32626a8087e637f7598c2d32e9a4b835a6fb3b01cecd38f046
MD5 137ceb675020d59607959c4098e9c9df
BLAKE2b-256 385dbd8760d702dc0567578ec864c99f0fbdbe192b5d310e32d12940a20de98c

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp311-cp311-macosx_15_0_universal2.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp311-cp311-macosx_15_0_universal2.whl
Algorithm Hash digest
SHA256 740bc69152bc474cad868b691152c9cf01b31dc38ac5079851f83b2844a8f696
MD5 5f56299a7979946d52ad763814fcbced
BLAKE2b-256 c4b1b6f8fb3fe24feef80b5c82904ab0070d76a645ed03a1034523033c2285c6

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp311-cp311-macosx_14_0_universal2.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp311-cp311-macosx_14_0_universal2.whl
Algorithm Hash digest
SHA256 adc360b7f994be1e739717ab752b0434e55dbd89434741f8ebfa2644e41e136a
MD5 d9bfc1cd968b90182a3c9bb96b527934
BLAKE2b-256 f9c3d271eb0a2a3bb5ce09703429ec78774c28f0e1762d724d75157bf10df410

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pmcxcl-0.7.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pmcxcl-0.7.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9e52ce45b2911492b5f3bb582084e50ef9fe39e3f6f962be60979d2629a1353a
MD5 76b3c261e6e618c1330bb7a4c8b02a4a
BLAKE2b-256 5c5492d28186f3042bac16615e0a2daae1cdec91df53636f901886312ca74294

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 afc664a3658db28700e1c7598b532f24f1590a77b630abe6eabc4dc32f982c73
MD5 4fb3eaa31d417049f8b8c367160aef43
BLAKE2b-256 c23d48887e60e26a6b19685c6596344c554bd89633a918b3fd4868b94d8ad871

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp310-cp310-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp310-cp310-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 5a4e4cf7f8ce7a1620bd26d852074cca87d1f71a50e4503a97f74c3941f43595
MD5 4f1b3155c565a6fa559f3ed1378e3ed7
BLAKE2b-256 5a1b126f52303c42249dabb86ad3302f0af4cb28a8f34c48b43079eb66cfa46e

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp310-cp310-macosx_14_0_universal2.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp310-cp310-macosx_14_0_universal2.whl
Algorithm Hash digest
SHA256 9e977cd58541cdf8ecf3ac8b7c82f0d138f318e6255c59635a736a63286a5507
MD5 5a1a29d6574d66e7aea6537c2fbbbd22
BLAKE2b-256 2319796e103b3b14a311c8b4aa386f97bbfb7b87ed170edd890e71cd1c03dad5

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pmcxcl-0.7.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pmcxcl-0.7.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 09f83e97b71859d75f0154b17e75f33f7bf0fe0593199b1fb3b6f9a833f46660
MD5 81dad457161484f8e9337cb9e347e25c
BLAKE2b-256 2292170c384deecab3f84e434fe6affe603d4b2214a51594cec0269d98891734

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 19504237b4aff214ac0c67d8dc4b98411825140049485b4546fdd3039ceac33d
MD5 cc327d0c6542962f12f440c6b8e2a051
BLAKE2b-256 88b3bc14c4c754b27dca83d9a49c19dd6e4fbaca585da3a9fea51597dd29398d

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp39-cp39-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp39-cp39-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 51917683ee3421fef2b920b07e1c7e7a3a1b86e420b16d261336c6b00d83b622
MD5 5b918ec1942dc223064052f424b89015
BLAKE2b-256 a8888c99372f3387fb2af8c73353eeb2ba28eaacdc4638a16f38afdecc32aec7

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp39-cp39-macosx_14_0_universal2.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp39-cp39-macosx_14_0_universal2.whl
Algorithm Hash digest
SHA256 0242e5db696cb0b58c8d2014e678a92fb2fb44cfc42b0d49421060bd3e2e8a44
MD5 ff27dbe9cc0a5530f58bf01072100717
BLAKE2b-256 29372404dcf7c1edb1a47adec7010d32937094f84a17c6b3782b7058f1a3b163

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: pmcxcl-0.7.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pmcxcl-0.7.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 8c710214b7f021483aa9e648a45af61a9a9561c2d95e8c1ab4fa828c2333b678
MD5 958091684208cf68d335a7a5a6dd1acc
BLAKE2b-256 820851b86aad48dd7763a38fd969261a89cc98fc07a286c94a6847c1fe4a0668

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 93068a532b4d8b0d19dda35e68855cbfaf68f17cecffa93a1af9ec4578583ebb
MD5 c24fd877ccd7db4d9dfe8f35fd2b590b
BLAKE2b-256 bbbf27f4e8c3e17bc6df20329668680a18f3477ac8e45bbb3fff7cc978864d41

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp38-cp38-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp38-cp38-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 e0c55f48f9f4f8bdfbddedc1698165c0dbed8c23c0874ba852b442a1f54a7690
MD5 6ddeb4e7e994f84b05cfda457f307b66
BLAKE2b-256 fd912181c6f2f9b9f2a5b92dbc88168d13b4f07780a8c959ed4aac9bae82175f

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp38-cp38-macosx_14_0_universal2.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp38-cp38-macosx_14_0_universal2.whl
Algorithm Hash digest
SHA256 da7a38c2e2416f7124033bfc146be4caf5efc5cbe16f51e8d958d7d507119b96
MD5 0d7c439b176f578e45f8fb97c4bf2507
BLAKE2b-256 6e38b6257040d3efe304635ba9806df6db4d281c90b58d44f6c8962236dad01f

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: pmcxcl-0.7.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pmcxcl-0.7.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 75b11b2d3ab2f2810d873c3bfbb74c70d076fcae44b14fb1a7f536604a209114
MD5 f71e3d4467d06f960d1809e62b242f25
BLAKE2b-256 b3750aeeb16fbf4bada62378be81b9ab4a710b4bc35874591a33efd1d2f3db44

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp37-cp37m-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp37-cp37m-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 50fa7c6e55e8ecc81af7930394b319a4bd652304da82211fbf61f236fe88675f
MD5 e2b8eec498363b1ba64ea04841d29508
BLAKE2b-256 63fcfe55d4c124c5f66685f038692b61b98cd2618f7ccfe928a2c8e284c66dc9

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: pmcxcl-0.7.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pmcxcl-0.7.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 0fcf42c89a023c2f304d60770fbdcf2c70fd0716211e9d9b82b56c998dc84c8d
MD5 81ce683e7b3a6698a9b5d33607da87e8
BLAKE2b-256 d325768464c04ad4af1d5c2194b44af7be503f6063125e2578aaa60cd00ac9a6

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.0-cp36-cp36m-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.0-cp36-cp36m-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 17448921bda429f054472afa612bc30cf6f16014025a6a023e3b7a79b4200d98
MD5 960a9d1182836dec0921ea40b502c2a4
BLAKE2b-256 08ff1796bd079a4cf1f9d075233cfdf9f6ea4ceb64297b0d07a2147a3dab70b0

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