Skip to main content

Python bindings for the VCell moving-boundary parabolic PDE solver

Project description

VCell Moving Boundary Solver

A C++ solver library for moving-boundary problems in biological systems. A single build produces three artifacts:

Artifact Description
MovingBoundarySolver Standalone command-line binary
libMovingBoundaryLib Linkable static (or shared) library
vcellmbsolver_py Python extension module (pybind11)

Prerequisites

All platforms

Dependency Notes
CMake ≥ 3.13 https://cmake.org/download/
C++14 compiler GCC 7+, Clang 6+, MSVC 2017+
HDF5 (C + C++) See platform sections below
Python 3 + headers Python 3.8+ recommended
pybind11 pip install pybind11 or system package
All former VCell monorepo dependencies (FronTier, ExpressionParser,
vcommons) are bundled in this repo and built automatically — no external
paths required.

Building

Ubuntu / Debian

# System dependencies
sudo apt-get install cmake libhdf5-dev python3-dev python3-pip
pip3 install pybind11

# Configure (substitute your actual library paths)
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release

# Build everything
cmake --build build --parallel

Output files land in build/bin/:

build/bin/
  MovingBoundarySolver        # binary
  libMovingBoundaryLib.a      # static library
  vcellmbsolver_py.cpython-*.so  # Python module

macOS

# Dependencies via Homebrew
brew install cmake hdf5 python pybind11

# Configure
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release

# Build everything
cmake --build build --parallel

For Apple Silicon the build system detects the architecture automatically and sets -DCMAKE_OSX_ARCHITECTURES=arm64. On Intel Macs it sets x86_64.


Windows (Visual Studio)

Install prerequisites:

  • CMake
  • Python 3 (check "Add to PATH")
  • HDF5: use the official HDF Group Windows installer or vcpkg (vcpkg install hdf5)
  • pybind11: pip install pybind11 or vcpkg (vcpkg install pybind11)
cmake -S . -B build

cmake --build build --config Release --parallel

If using vcpkg, add -DCMAKE_TOOLCHAIN_FILE=C:\vcpkg\scripts\buildsystems\vcpkg.cmake to the configure step so CMake finds the vcpkg-installed packages automatically.

Output files land in build\bin\Release\.


Build options

CMake variable Default Description
CMAKE_BUILD_TYPE Release Release, Debug, RelWithDebInfo, MinSizeRel
BUILD_SHARED_LIBS OFF Build libMovingBoundaryLib as a shared library instead of static
BUILD_TESTING ON Also build the TestMovingBoundary test executable
VARIABLE_SPECIES_STORAGE OFF Enable dynamic species storage (-DMB_VARY_MASS)

Example — debug build, shared library, no tests:

cmake -S . -B build \
  -DCMAKE_BUILD_TYPE=Debug \
  -DBUILD_SHARED_LIBS=ON \
  -DBUILD_TESTING=OFF \
cmake --build build --parallel

Running the tests

Tests are built by default (BUILD_TESTING=ON). After a successful build:

cd build
ctest --output-on-failure

Test suites

All three suites run automatically when you invoke ctest. The Python tests require pytest (pip install pytest).

Suite Name in ctest Framework
Moving boundary unit tests (~150 cases) TestMovingBoundary.* Google Test
Expression parser smoke test ExpressionParserTest custom main
Python wrapper tests PyVcellMbSolver pytest

Python test prerequisites

No manual setup required. CMake creates an isolated virtual environment in build/python_venv/ at configure time and installs pytest into it automatically. The venv is recreated on every cmake -S . -B build run.

The Python tests import vcellmbsolver_py (the compiled extension) and vcellmbsolver (the pure-Python wrapper in python/). ctest sets PYTHONPATH so both are importable from the build tree without installation.

Useful ctest options

# Run in parallel
ctest --output-on-failure -j$(nproc)

# Run only tests whose name matches a pattern
ctest --output-on-failure -R "algo"
ctest --output-on-failure -R "ExpressionParser"
ctest --output-on-failure -R "PyVcellMbSolver"

# List all registered tests without running them
ctest -N

# Show full output even for passing tests
ctest -V

Running the Python tests directly

After configuring, the venv already has pytest installed. Run the suite directly using the venv's Python:

PYTHONPATH=build/bin:python build/python_venv/bin/python -m pytest python/tests -v

On Windows, substitute build\python_venv\Scripts\python.exe.

Skipping tests

Pass -DBUILD_TESTING=OFF at configure time to skip building and registering the test executables entirely (this also disables the Python tests):

cmake -S . -B build -DBUILD_TESTING=OFF

Using the binary

./build/bin/MovingBoundarySolver <input.xml> <output.h5>

The input file format is described in metadata/MovingBoundarySolverInputFile.docx and validated by Solver/MovingBoundarySetup.xsd.


Linking the library

Add to your project's CMakeLists.txt:

find_library(MB_LIB MovingBoundaryLib HINTS /path/to/vcell-mbsolver/build/bin)
find_path(MB_INCLUDE MovingBoundaryParabolicProblem.h
    HINTS /path/to/vcell-mbsolver/Solver/include)

target_link_libraries(my_target PRIVATE ${MB_LIB})
target_include_directories(my_target PRIVATE ${MB_INCLUDE})

Or install the project first and use the installed headers under <prefix>/include/vcell-mbsolver/.


Using the Python module

The bindings are shipped as the pyvcell_mbsolver package: the compiled extension is the private submodule pyvcell_mbsolver._core, and the high-level wrapper (MovingBoundarySolver, observer base classes) is the package itself.

import sys
sys.path.insert(0, "/path/to/vcell-mbsolver/build/bin")

import pyvcell_mbsolver
from pyvcell_mbsolver import MovingBoundarySolver   # high-level wrapper
from pyvcell_mbsolver import _core                  # low-level C++ API
# See python/pyvcellmbsolver.cpp for the exposed _core API

After cmake --install build --prefix /usr/local, the package is installed to the active Python's site-packages and importable directly:

import pyvcell_mbsolver

Python package & wheels

The repository also ships a PEP 517 build configuration (pyproject.toml, using the scikit-build-core backend) that drives the same CMake build to produce an installable Python wheel. The wheel contains only the pyvcell_mbsolver package (the _core extension and its pure-Python wrapper) — not the C++ library, CLI binary, or headers.

Install from a downloaded wheel

CI builds redistributable wheels for Linux (x86_64 + arm64) and macOS (x86_64 + arm64, macOS 15+) and uploads them as workflow artifacts (see the Wheels GitHub Actions workflow). Download the wheel for your platform/Python version and:

pip install pyvcell_mbsolver-<version>-<tags>.whl
python -c "import pyvcell_mbsolver; from pyvcell_mbsolver import _core; print('ok')"

The wheels are self-contained: the shared HDF5 libraries are vendored in by the wheel-repair step (auditwheel / delocate), so no system HDF5 install is required to use a wheel.

Windows is not currently supported. The bundled FronTier library is Unix/GCC code that does not compile under MSVC (its POINT/boolean types clash with the Windows SDK and it relies on GCC anonymous-struct extensions). Windows users can build/run under WSL using the Linux wheels.

Build a wheel locally

Building from source still needs the native toolchain and dependencies from the Prerequisites section (CMake, a C++14 compiler, HDF5, Boost):

pip install build
python -m build --wheel          # writes dist/vcellmbsolver-*.whl
pip install dist/vcellmbsolver-*.whl

pip install . works too. Wheel builds set BUILD_TESTING=OFF and OPTION_TARGET_MESSAGING=OFF automatically (see [tool.scikit-build] in pyproject.toml).

Publishing to PyPI

The Wheels workflow has a publish job that uploads the built wheels and sdist to PyPI via trusted publishing (OIDC — no stored API token). It runs only on v* tag pushes and stays dormant until a one-time setup is done on PyPI:

  1. Register the project on PyPI (claim the pyvcell_mbsolver name).
  2. Under the project's Publishing settings, add a trusted publisher:
    • Owner: virtualcell, Repository: vcell-mbsolver
    • Workflow: wheels.yml, Environment: pypi
  3. Create the pypi environment in the repo settings (optionally with reviewers/branch protection).

Once configured, pushing a vX.Y.Z tag builds all wheels and publishes them. Until then, normal pushes and PRs simply produce downloadable wheel artifacts.

Dry run on TestPyPI first (recommended)

The workflow also has a publish-testpypi job to rehearse the release against TestPyPI before touching real PyPI. It runs only when the workflow is manually dispatched with the testpypi flag, and needs its own one-time setup mirroring the above:

  1. Create a TestPyPI account (separate from PyPI; 2FA required).
  2. At https://test.pypi.org/manage/account/publishing/, add a pending publisher:
    • PyPI Project Name: pyvcell_mbsolver
    • Owner: virtualcell, Repository: vcell-mbsolver
    • Workflow: wheels.yml, Environment: testpypi
  3. Create a testpypi environment in the repo settings.

Then trigger the dry run (no tag needed):

gh workflow run wheels.yml -f testpypi=true

(or Actions → Wheels → Run workflow, check the box). It builds all wheels + sdist and uploads them to TestPyPI; skip-existing keeps repeat runs of the same version from failing. Verify at https://test.pypi.org/project/pyvcell-mbsolver/, then do the real release by tagging vX.Y.Z.

Project details


Download files

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

Source Distribution

pyvcell_mbsolver-1.0.0.tar.gz (2.0 MB view details)

Uploaded Source

Built Distributions

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

pyvcell_mbsolver-1.0.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pyvcell_mbsolver-1.0.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

pyvcell_mbsolver-1.0.0-cp313-cp313-macosx_15_0_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.13macOS 15.0+ x86-64

pyvcell_mbsolver-1.0.0-cp313-cp313-macosx_15_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

pyvcell_mbsolver-1.0.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pyvcell_mbsolver-1.0.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

pyvcell_mbsolver-1.0.0-cp312-cp312-macosx_15_0_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.12macOS 15.0+ x86-64

pyvcell_mbsolver-1.0.0-cp312-cp312-macosx_15_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.12macOS 15.0+ ARM64

pyvcell_mbsolver-1.0.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pyvcell_mbsolver-1.0.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

pyvcell_mbsolver-1.0.0-cp311-cp311-macosx_15_0_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.11macOS 15.0+ x86-64

pyvcell_mbsolver-1.0.0-cp311-cp311-macosx_15_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.11macOS 15.0+ ARM64

pyvcell_mbsolver-1.0.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pyvcell_mbsolver-1.0.0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

pyvcell_mbsolver-1.0.0-cp310-cp310-macosx_15_0_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.10macOS 15.0+ x86-64

pyvcell_mbsolver-1.0.0-cp310-cp310-macosx_15_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.10macOS 15.0+ ARM64

File details

Details for the file pyvcell_mbsolver-1.0.0.tar.gz.

File metadata

  • Download URL: pyvcell_mbsolver-1.0.0.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pyvcell_mbsolver-1.0.0.tar.gz
Algorithm Hash digest
SHA256 7a1ad025b924d6dba90e4a25989d060f60ae6be6faf7db8a42ec52d28f7d83bb
MD5 dcc53ffdbb6d22cae64d9c9939b7c8f5
BLAKE2b-256 53c36b18d96bcd05913f5c4da5a4046d249c479efbd2eb245ed825cab2a74a1c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0.tar.gz:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d22811b8ff6c077b6cb1eb4f284c865860e19ed136a130323d57ec632145e827
MD5 fad2061bf97e65ef0cf5187dbb09b467
BLAKE2b-256 0c762a0fdaa267f8a90f1cfdd87bb02f03156ff0e12eaf72e7bc7b58886b7b60

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8671d1bce48af578982e2e9d87344295ff1f83a95066bf11171764f3e3da2c59
MD5 a4ee6de9adbedf0be9b6a1e648660769
BLAKE2b-256 02a104f71b0f10a4677460225dee437d13a361a802242232155842a4bafd9543

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp313-cp313-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp313-cp313-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 7baf922a9c0875dff9f81cbd4b80fd4fd244d71dc41d54290f34498403c2c535
MD5 13dc624b66358c220f888501d9055e4c
BLAKE2b-256 0654da3da1f61a0111ab92f856768269c177b1102aa161971495875802f85f52

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp313-cp313-macosx_15_0_x86_64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp313-cp313-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 7d362feea354076925db5dde5995cb6ccd8253ee2450be5d7e8b9eb616e9e61a
MD5 483df7bd2afd56068855e140f1feb60c
BLAKE2b-256 f8aace0cbce26fc4bcec46e4bed52786984389d08750eb448e641fd17309044f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp313-cp313-macosx_15_0_arm64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4926079e9c3b7d3ad403f46327dd9f5039d61b5196b1890d7c21a904e7c84b43
MD5 d9bee1175853b110ee7d2b3f8fb6a9fa
BLAKE2b-256 72f92dc128dd15ceb8dfa2f169d93d8c287450b602084e3fbd5a0faa723d6545

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7af987d44b35079162b50ff2d8ccd45da6c40dbfb4549d0d9e85350327d81c20
MD5 5517c2416b6a921cb992021a6a9ba1aa
BLAKE2b-256 19b4f1de3603319847032b8290fa0bfebe9a614287f63bfc38f84bfa68e8be33

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp312-cp312-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp312-cp312-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 65f5a41f41ccafa72aab3901f3595360134a55f8e85eb3ac0380e3e5a8190948
MD5 93deff77d0576de3bf9cdf5e136708b9
BLAKE2b-256 465cfd1bade319edcb3ba07bf0cdfeb5d647273e802f77feb6333b486b360319

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp312-cp312-macosx_15_0_x86_64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp312-cp312-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp312-cp312-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 f6e8a82c055475ee4021a0b822a7e2e460d09c2fbb6bca0507c6cb7a546ee19b
MD5 e401b0fc8245a50a5f3860afaf25fc3e
BLAKE2b-256 00574b66e80153a68788ee35b9ce2e5bee5d4a59f34a92d56495b05b4ef17985

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp312-cp312-macosx_15_0_arm64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e431595b6bc39a4e8f89bc5e80abbea3286bf6ba8c9dda9978a02d222c12f097
MD5 3e965eda332b9b38895b2d16a376bf0e
BLAKE2b-256 b27032ab53b90ecae8a6bbb256a2d989735378237a9c5938e44a48111ea6c3b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ab41460d8ac8e3cd20f86e8bcc63719c7396a015a2cf5529a529e1633d6f54ec
MD5 1f229e017a8c84aa258870bd6cda0cce
BLAKE2b-256 8b46f44685330674097c9e1b8f78e85392196054af26db8a3e48452c134e9520

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp311-cp311-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp311-cp311-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 02c7b8ba1f500b8f09548e40e4e9f2dd5289412d9225a6d998e368965cc849ac
MD5 0600d40e67e03f2f533a1fa87c0caa74
BLAKE2b-256 8bfda26499ee363a7e65fc79fe6c6f511f72ca042a6955aa15f3d6820ad16500

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp311-cp311-macosx_15_0_x86_64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp311-cp311-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp311-cp311-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 93068fff9a4d3b38a587cc824b3f590cf9ede0d7eb1a9b0f7fb7c3d3e8238517
MD5 017c82cafc39a648a489930da86b5f69
BLAKE2b-256 8c6e284a44fa20c1ff08836226dd5e9ef3c63e5f02feb727c05842ca4d0ed922

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp311-cp311-macosx_15_0_arm64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8cc0dfcf9d53ae48c49d8b61bd411628f83ca540d0e1213e92b307a6ea35a698
MD5 fd9fb473ca15684c8c76109affa2774a
BLAKE2b-256 36a8fee2d8ec9a720a6104c805b549c80faca53708c6fcd7d8e05256f95901cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 1ed15f816224919c7c98de8fb7016769c1313fe360d0b3ffdd8c7b9866bc12e0
MD5 c1ddb4417453e61a3e0d8a45ac419bd5
BLAKE2b-256 7b742977a72f8abcc00f18d5a2291bd1d6533471d5af181cbab358d74f27af39

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp310-cp310-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp310-cp310-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 88a6d94bde508b23f19fd476b81f81db06473532da74b7f0404013ee4dc8e5ed
MD5 503f0958d09571db5d72d72e1c5550f2
BLAKE2b-256 3b94eec0a6c65bfa6dfb88e4e80f6d8f6da90e5bb54f4c56d8ae701d787a5e23

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp310-cp310-macosx_15_0_x86_64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

File details

Details for the file pyvcell_mbsolver-1.0.0-cp310-cp310-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for pyvcell_mbsolver-1.0.0-cp310-cp310-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 0faa09e3ca36ed1f00c2ec9bb48acede64440432a87c458c6501a424bf7cdafe
MD5 66e59d0d87054fcb2449558d248cce8f
BLAKE2b-256 508f1bea0468e598e3cf3145e415c0ed8e71d6dbd3949cf35dcdc8e2194f82e5

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvcell_mbsolver-1.0.0-cp310-cp310-macosx_15_0_arm64.whl:

Publisher: wheels.yml on virtualcell/vcell-mbsolver

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page