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.1-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.1-pp310-pypy310_pp73-win_amd64.whl (1.0 MB view details)

Uploaded PyPyWindows x86-64

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

Uploaded PyPymacOS 15.0+ x86-64

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

Uploaded PyPymacOS 14.0+ ARM64

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

Uploaded PyPyWindows x86-64

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

Uploaded PyPymacOS 15.0+ x86-64

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

Uploaded PyPymacOS 14.0+ ARM64

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

Uploaded PyPyWindows x86-64

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

Uploaded PyPymacOS 15.0+ x86-64

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

Uploaded PyPymacOS 14.0+ ARM64

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

Uploaded PyPyWindows x86-64

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

Uploaded PyPymacOS 15.0+ x86-64

pmcxcl-0.7.1-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.1-cp314-cp314-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.14Windows x86-64

pmcxcl-0.7.1-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.1-cp314-cp314-macosx_15_0_universal2.whl (583.2 kB view details)

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

pmcxcl-0.7.1-cp314-cp314-macosx_14_0_universal2.whl (567.4 kB view details)

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

pmcxcl-0.7.1-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.1-cp313-cp313-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.13Windows x86-64

pmcxcl-0.7.1-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.1-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.1-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.1-cp312-cp312-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.12Windows x86-64

pmcxcl-0.7.1-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.1-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.1-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.1-cp311-cp311-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.11Windows x86-64

pmcxcl-0.7.1-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.1-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.1-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.1-cp310-cp310-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.10Windows x86-64

pmcxcl-0.7.1-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.1-cp310-cp310-macosx_15_0_x86_64.whl (581.8 kB view details)

Uploaded CPython 3.10macOS 15.0+ x86-64

pmcxcl-0.7.1-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.1-cp39-cp39-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.9Windows x86-64

pmcxcl-0.7.1-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.1-cp39-cp39-macosx_15_0_x86_64.whl (581.9 kB view details)

Uploaded CPython 3.9macOS 15.0+ x86-64

pmcxcl-0.7.1-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.1-cp38-cp38-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.8Windows x86-64

pmcxcl-0.7.1-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.1-cp38-cp38-macosx_15_0_x86_64.whl (581.6 kB view details)

Uploaded CPython 3.8macOS 15.0+ x86-64

pmcxcl-0.7.1-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.1-cp37-cp37m-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.7mWindows x86-64

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

Uploaded CPython 3.7mmacOS 15.0+ x86-64

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

Uploaded CPython 3.6mWindows x86-64

pmcxcl-0.7.1-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.1-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.1-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 b7de336839f6e4bad74534496d7d3d20e02c71376a2cfd6a9e294bfa44c5b199
MD5 54dc831b986b7184d8d36b840a6d7c1a
BLAKE2b-256 7c6ad6cbb4067515db7b7c449258f86b9fad7cc2a12daa3ace6430d591bb29a1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 ae58447861f0f0ac94213937ad33271b93211a65e72fb9af3853c9599d1349ba
MD5 961bc68707543815b36ac4332a641815
BLAKE2b-256 a3b92bac38495b7845f8a798f093a17f70c916a76ca7030010ffedb1bf54606e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-pp310-pypy310_pp73-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 970139fa6c7a1d2c16cf09f731026566db154ae32f198010d7187da19033fcfb
MD5 727fd0c8fc0a23993d5effc1c36606d5
BLAKE2b-256 a98cc59a26273cdbc30d62f7333ee537d86383d32882038f36635bb1d33055d1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-pp310-pypy310_pp73-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 974a05d83b7fa626e8aa6c4d1bcd7cddc568a2092b50002060cba8f38020d068
MD5 e2529d19c555f5a923cc5a1f2dc180af
BLAKE2b-256 2df2960f4eca62f5e0e476f1fffa0fc9d444688ea799cbdddc7b654b4abe161d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-pp39-pypy39_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 3635f23f0b4d07e8d268e2740c621733d9f102736f905461701acb2195e3b7b5
MD5 794e5bd0842617f1beee8054b2f27e35
BLAKE2b-256 ffb980474f94de91fdc8a4cc63c8bf2be9cd4704cf3330cc205726fb590bd37f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-pp39-pypy39_pp73-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 a034e4eb52d552029e60a5e37c3541317c84a3590fef2370a6b14ce09287d7c1
MD5 3bde5c29cdece777bb37279468575bdb
BLAKE2b-256 f2acc4b7dce62ddd4077b53363f73d4d779b2a9cf5e18702933887609dcaabe4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-pp39-pypy39_pp73-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 1964826fcfa22b8c83493964de62c80b74fac4abce5713def8ccea6ec721bb07
MD5 084d4b91dddb2caaf1cf50d839840b32
BLAKE2b-256 170029962ad1d551679862f7efeae1de5852af863d47528c95355096ce5c0816

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-pp38-pypy38_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 6ebc0a1abd8c232d9621280a8b274cdc18f06c1f373c6ed8db19d958043ca57c
MD5 66fabbc48399b39acbc6608607c2dbcf
BLAKE2b-256 7ed90952662a6827c3060b8a705f5465223699ee0f3b764d5903ab664ccaf67b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-pp38-pypy38_pp73-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 07ce3ddf4d718f3ef2d14a8549239239b71e4eb87df680b717437890780776b2
MD5 16c16e4c90ed5096c1f9b042cec0138d
BLAKE2b-256 65349fb1bcdc8d7e7e7598959e6c44e258d05dd29cf9df08bda4a167d508ad2e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-pp38-pypy38_pp73-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 b693bdda9862d517de0ddfb443206e9be962973cbb6154d88f5906e185892223
MD5 0b0879d34da0e4417bf0533e4003e23f
BLAKE2b-256 7ffe98cf279d259fb74be25c61ef95428062600bb1292c5345578272c100e5a9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-pp37-pypy37_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 e0e5a9a0f908e32201102e13bfb4e559f5af409c8648659693fbff4ee7c29baf
MD5 5d004a5a84cb9f77140a70a295c0ddb1
BLAKE2b-256 ab5e27c53cd1e546178247261f4ce56a151bd5d2679880e44988b6c4601b7087

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-pp37-pypy37_pp73-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 5311cc60f91445cd72a687338529c12745a116912550bb93880f65ef65b53afe
MD5 c038acf1d93a07e03c4ecd7017d64565
BLAKE2b-256 a046fa32fc66b78514daf1a17545c6632d6af4b179ee7d122ee07aac56795cec

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 2e69388b5e5b146afd8249ad32d471bfb09f38cca733b826f70cea2e935b92d4
MD5 5db84486120809474d79d23a022530a1
BLAKE2b-256 600ed0476619e5ecef79c0b69b950b64932dc0159876a982c63e024ea58a108a

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: pmcxcl-0.7.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.14, 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.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 2ddcb8261b8d5db1fa32015f49cbbc0e44bb7539bdbab291a99eeeae049b320c
MD5 e70f66898b22cb2a04a4e35ff02baf49
BLAKE2b-256 2f5a705335ddbbeeb968a1dd25d563583416bc313b3b189b037e66f0cd5f8cd8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 e8451eb88b6f44faccbecf18787cd6bcc17ca61ce776a29f57e7b3390156da94
MD5 2b194a482c5f0f85e7d2b46f0fb83c1c
BLAKE2b-256 9e47e4c082512d367b73fd47871a85cd7c763de7e258834cd76ec71dd88d825d

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.1-cp314-cp314-macosx_15_0_universal2.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp314-cp314-macosx_15_0_universal2.whl
Algorithm Hash digest
SHA256 8c6499c0b19ba5da13383acd5706569aabac0dd72866d6635157418b0c751f9f
MD5 2976acd7946f2afd2242d665fb1a5f03
BLAKE2b-256 170de518b520797bcce3804397188e18eb00f6fdd918cf6ae5679f5d931808cc

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.1-cp314-cp314-macosx_14_0_universal2.whl.

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp314-cp314-macosx_14_0_universal2.whl
Algorithm Hash digest
SHA256 722deadf20adf1eb43251f541a3655bdda171a8dfc48a8e130f33721f4362e9f
MD5 44fd33fab322a162071dc3127d0126bc
BLAKE2b-256 010d60d2250fa4626c8b69b78967dba1d817b1851ba864a0b5cb0d83b6c674df

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 389ebacff832bf5b1c87492439582641c9a8696c4c3dc6666219abf114c2abd3
MD5 06d33dfbf961f7903ca8a544e6e24a85
BLAKE2b-256 8f670a22c8f9affb5fe88dd372350a0d5aaae9d61775e0b139bc7c206461d8db

See more details on using hashes here.

File details

Details for the file pmcxcl-0.7.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pmcxcl-0.7.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.13, 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.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 320194c850fb38ae5822adcabeb62a2d63c76165c6b714a67811d42c1131b6dc
MD5 de03f9bdd1fbb2daa87ac2631273e6c8
BLAKE2b-256 627735b3c0e6160b618cd89f3bb217d17fddd952a6b8d9c0cc51015170b323fc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 4acc8ddd0d816711d6db277a09fc9db8d3f9d539c4a75f27d97da11aa9028e7f
MD5 f1c103ec360ef7252a793540bc7fc356
BLAKE2b-256 cc127ab36929d8dc1f35826f0064a359b8940ede293d4bd1dec9be713628f461

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp313-cp313-macosx_15_0_universal2.whl
Algorithm Hash digest
SHA256 61569bc09c84b1939ca37fe21ce0b79f814c62884f6508d40d2543799c51b5fc
MD5 afd14ce0b7a181d746d5873454f05661
BLAKE2b-256 2e13cd2d8774ea899908409ff23f9a7b98d0f4443766962a119c2f0f21f46d7e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp313-cp313-macosx_14_0_universal2.whl
Algorithm Hash digest
SHA256 18a5851eeef4649e46732b4374720d503fad19621d21bb855297c5e0d4804868
MD5 62bfb2f3f1bb9552b60f4b048b3c5b16
BLAKE2b-256 7c87195e1fde3deccb6373e35e9f196d4d59384f3fcb5c1d287e4429f4b39b95

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pmcxcl-0.7.1-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.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 c01447df55cca7e98459fccac9bad13bd9e400d78614d6194e665b691ddb775e
MD5 019dfa42aa96fd3e6aba0fa58215477f
BLAKE2b-256 9bba293bc2cab78d583922e0358c951c95c629a9f80b566dd365ba49da48897e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 529e0a5540c43e1df7e2cabc914fb78cff44c9b216e83726297f18380bd90097
MD5 0a9f1d59d01e3c13cf8cda5c8c108f67
BLAKE2b-256 3daba257b166f525a5d7f805af4b4414a34afb293b1e04a7ea0cd6c6770e4d13

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp312-cp312-macosx_15_0_universal2.whl
Algorithm Hash digest
SHA256 28b8e636a9d69002b5ca04b76bb80dedb897e64983e040bbb4c617744074c0e1
MD5 a0549778f936b35671277a15f22de0a6
BLAKE2b-256 8fded644a15161f32a4a26b4df96e859e22079f9191fea2c50a3f238975da63c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp312-cp312-macosx_14_0_universal2.whl
Algorithm Hash digest
SHA256 d3ed08f1e6b37e27565fc4ad457de9781bd4ad446652240e5e80d6faa7820537
MD5 9dbb57cb60408136fa0991e60b3593dc
BLAKE2b-256 dc7a00f70bce44eaa84dd303ba885634c779e8f4cfa4b52f66a2c6ec4d2689f7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pmcxcl-0.7.1-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.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 663b21d4545ed158a82d94ea28c19324d46d857b17549e1a921803f896c090ab
MD5 d6f6005ef270f567d3f78f0a46a25be5
BLAKE2b-256 aeb99a4ee93b63cc0c0a921e28940ddb4e35f5510fadddd78914bc5ba15acdee

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 cc2e0907209289cff538fab9c3a971258a911d1f9cef51e0ab1a040f581354cf
MD5 4af02e312202e37d89c5d1519be28eef
BLAKE2b-256 24811bb872b126cfc2ab19a3ae453f568be547ac859c77cf3a7617b9b688578c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp311-cp311-macosx_15_0_universal2.whl
Algorithm Hash digest
SHA256 1b9c7912599ae7537a64ff941d77dc831344476c45d452171a787f880e70bc98
MD5 0651f8e619f75b4641aa975d772e8a8f
BLAKE2b-256 edead6b6b7078e19241ac2525a72ebf7f6aedfee6634d1411db0b802d0298202

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp311-cp311-macosx_14_0_universal2.whl
Algorithm Hash digest
SHA256 611f6682ad3a193882dfbf5719c7341b5b3055b53e32bf4a93633120e2479026
MD5 537a4f3cf88d5bc2568785740bf5abfc
BLAKE2b-256 74ab689b921f046c9bedd83b4cef61b6cbf6d38dfab10be875630fc5d25b9ddc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pmcxcl-0.7.1-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.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 e8cbefbca834219338220907f76eb6779da9f2012630e6c1810f00f1356c3fc0
MD5 3636078fdae6984709c8e3cc44716e0f
BLAKE2b-256 231beae9b9b38770437f711e7b87379521548fc1f63f8499d2a0e5d0d1a6a0b8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 48909a108723ca3b8aacb5b0a3e39f2be7cb3a890dc1acd57145933f5fa3cb24
MD5 f343e18acaa4bdb101d9a29b703fd94a
BLAKE2b-256 ff76a6950754fe34020674716919c8afdbd7c40e072c203fad9cf2a4e1b4ea5b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp310-cp310-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 40321b140faba0fc94b0ec072879dc68d7f914ac17e5d0a76eab7707a66d2dcf
MD5 cb75aebde358d260fb0ac36bd8bc56fe
BLAKE2b-256 1d8af9d70c475191c0be213e9c0f70e1aa0afa7096a943f35a3917e18eb4e7e7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp310-cp310-macosx_14_0_universal2.whl
Algorithm Hash digest
SHA256 45c74c02f1afa4bd1e32e7e0905c70a42379f17b2e7730036a5ef41c855dfcf5
MD5 67ed8f8d63eb1280eb63d21406759383
BLAKE2b-256 3cf9caa4fd8daef64d902f9e04249c88f67431c8508b063312b280fef43a2d41

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pmcxcl-0.7.1-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.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 2921660565f1037daa00522c6fc19e5006a2ab53beec488aa8c73f3ae75df117
MD5 4b7432b50269f55941cf0c65fdd3daf5
BLAKE2b-256 1385020a7f62549cee8c0f0d3585675dcb118c876ba7afee49a9a9d58595a321

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 906927e6ce987993e3a93d15dbc5db9fa14a4d0b30d595945ebbcce29398a60d
MD5 3194e0189517e5eca7706378b50557c6
BLAKE2b-256 3d8d61f9fe347e567e58b8d6c67596874269e7740190257e5309edaacf880e17

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp39-cp39-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 1849efa03a1bf241bc3de6ecd1575496476df631bbb7a90cd4f8254c5f48b3e1
MD5 6132abcb20c6d599751231c8cc813abf
BLAKE2b-256 39f6c7b05a14116a1a03bbcc366d0ae4494e1ec27dbd197f567947b764518500

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp39-cp39-macosx_14_0_universal2.whl
Algorithm Hash digest
SHA256 a2ebf2d32dd23666ffcaa77edad2f738bd0176c72c6fd9925d9fc8c631d23de0
MD5 5113195d5736a5ed464d203be6c4c89a
BLAKE2b-256 a5b0025bd1d8fae392d9246d119cb4f1f5d1736d775cb5fff2d63855209fc85a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pmcxcl-0.7.1-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.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 1901d0f5fece3e64f39dee4a7e2d26d0672ba71bfdef626ae95d1cd1aafb7468
MD5 fcfddf240f29e772320de2f48ce9336d
BLAKE2b-256 f0589e04164608ad28b2db28ccf1daee64362a2246ea654f253f9d8560b8da32

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 f57bce084adc2ac85b4eb833dcb96a4d2bd388cf49edd81102810478be001d1e
MD5 b9d326194ce1a4258e5baa4c9b08e2af
BLAKE2b-256 5268461a013519c92b9535b4b4a64121ea076db2a5e4e0be6b485a41a3d8ed3b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp38-cp38-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 84ed472a68d1816d5d2f4a07a69b71a3fac6e321f3da48b4a78f954f964dbbcd
MD5 477a829ae556e18e1bd4c20e18a63004
BLAKE2b-256 894e851dec199a909c979456eecbd5bb1087441596d69006a4cbfa2bb2844983

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp38-cp38-macosx_14_0_universal2.whl
Algorithm Hash digest
SHA256 2cd10027038b2f316a5dac83c8e90adf9b8cd69f0023aa47394b7c195164db5c
MD5 5c44f761c818df30465f0e41ac228e0f
BLAKE2b-256 26dcc556ed46317baee84fcbbee529bb7926709959303667f7b06141c7946f7a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pmcxcl-0.7.1-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.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 dcf2f0f3013e53b9e72fed67c6e7614697015c062eef32026433de6847d6ad23
MD5 801a61caba036096fdd1040fb1ca6845
BLAKE2b-256 10853f13b1029b478a6c1044f1a020f834b03f2d556e9e9366af000a8c454dff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp37-cp37m-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 45d5f5e6ffe603cfc5b77bae8b0840423b81b026899a585d204b5f8ec71f024d
MD5 63d4cbef59675c7b1939c617cef6aba9
BLAKE2b-256 959929167d7fed53b21a3498363b10ae655dc919c802efcf2f1efdf05d15af58

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pmcxcl-0.7.1-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.1-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 e6511dee36897e332e67dd8ec754d5e0adf72ce54057ec31b3bb0e915e8f7a3e
MD5 bddc02e24412423a0ca485b4d21d2d4f
BLAKE2b-256 e184924d20d85a0c7d853bb8c4be3182445c9f9015a55655cc9d5cee082138bc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pmcxcl-0.7.1-cp36-cp36m-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 6aa3b866db0b27cfe46c22cec92d137f14442485e18737025e275e5f7cfcefdb
MD5 9a4bdb2a0ab828118de9e579fc1cb3c7
BLAKE2b-256 4943776d9a74447f892878fa03d3158ec6aea1155e63cba75c2827dc51b59efa

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