Skip to main content

High-performance Bloch equation simulator for MRI

Project description

Bloch Equation Simulator for Python

A high-performance Python implementation of the Bloch equation solver originally developed by Brian Hargreaves at Stanford University. This package provides a fast C-based core with Python bindings, parallel processing support, and an interactive GUI for MRI pulse sequence simulation.

Features

  • High Performance: C implementation with Cython bindings maintains original speed
  • Parallel Processing: OpenMP support for multi-core acceleration
  • Interactive GUI: Real-time visualization and parameter adjustment
  • Flexible API: Easy-to-use Python interface for scripting
  • Comprehensive: Supports arbitrary RF pulses, gradient waveforms, and tissue parameters
  • Visualization: 3D magnetization vectors, time evolution plots, frequency spectra, and animation export

Installation

Prerequisites

  1. Python 3.7+
  2. C Compiler:
    • Linux: gcc (usually pre-installed)
    • macOS: Xcode Command Line Tools (xcode-select --install)
    • Windows: Visual Studio Build Tools
  3. OpenMP (optional but recommended):
    • Linux: Included with gcc
    • macOS: brew install libomp
    • Windows: Included with Visual Studio

Quick Setup

To install the simulator for local use or development:

# Clone or download the repository
cd blochsimulator

# Install the package in editable mode
# This builds the C-extension automatically
pip install -e .

Verification

Test the installation:

from blochsimulator import BlochSimulator, TissueParameters

sim = BlochSimulator()
tissue = TissueParameters.gray_matter(3.0)
print(f"T1: {tissue.t1:.3f}s, T2: {tissue.t2:.3f}s")

Usage

🚀 Jupyter Notebook (Recommended)

You can launch the interactive GUI directly from a cell in your Jupyter Notebook.

# 1. Install (run once)
!pip install -e .

# 2. Launch GUI
!blochsimulator-gui

Note: This works if Jupyter is running on your local machine. It will not work on headless remote servers or Google Colab.

1. GUI Application

Once installed, you can launch the GUI from any terminal or shell:

blochsimulator-gui

Features:

  • Design RF pulses (rectangular, sinc, Gaussian)
  • Configure tissue parameters (T1, T2, proton density)
  • Select pulse sequences (spin echo, gradient echo, etc.)
  • Real-time 3D magnetization visualization
  • Signal analysis and frequency spectra

2. Python API

Basic Simulation

import numpy as np
from blochsimulator import BlochSimulator, TissueParameters

# Create simulator
sim = BlochSimulator(use_parallel=True, num_threads=4)

# Define tissue parameters
tissue = TissueParameters(
    name="Gray Matter",
    t1=1.33,  # seconds
    t2=0.083  # seconds
)

# Create a simple 90-degree pulse
ntime = 100
dt = 1e-5  # 10 microseconds
time = np.arange(ntime) * dt

b1 = np.zeros(ntime, dtype=complex)
b1[0] = 0.0235  # 90-degree hard pulse

gradients = np.zeros((ntime, 3))  # No gradients

# Run simulation
result = sim.simulate(
    sequence=(b1, gradients, time),
    tissue=tissue,
    mode=2  # Time-resolved output
)

# Plot results
sim.plot_magnetization()

Spin Echo Sequence

from blochsimulator import BlochSimulator, SpinEcho, TissueParameters

sim = BlochSimulator()

# Create spin echo sequence
sequence = SpinEcho(te=20e-3, tr=500e-3)  # 20ms TE, 500ms TR

# Simulate white matter
tissue = TissueParameters.white_matter(3.0)

# Run simulation with multiple frequencies (T2* effects)
frequencies = np.linspace(-50, 50, 11)  # Hz
result = sim.simulate(sequence, tissue, frequencies=frequencies)

# Access magnetization components
mx, my, mz = result['mx'], result['my'], result['mz']
signal = result['signal']

Custom Pulse Design

from blochsimulator import design_rf_pulse

# Design a sinc pulse
b1, time = design_rf_pulse(
    pulse_type='sinc',
    duration=2e-3,      # 2 ms
    flip_angle=180,     # degrees
    time_bw_product=4,  # Time-bandwidth product
    npoints=200
)

# Apply phase
phase = np.pi/4  # 45 degrees
b1_phased = b1 * np.exp(1j * phase)

Parallel Simulation

# Simulate multiple positions and frequencies in parallel
positions = np.random.randn(100, 3) * 0.01  # Random positions in 1cm cube
frequencies = np.linspace(-200, 200, 41)     # 41 frequencies

result = sim.simulate(
    sequence=sequence,
    tissue=tissue,
    positions=positions,
    frequencies=frequencies,
    mode=0  # Endpoint only (faster)
)

# Result shape: (100 positions, 41 frequencies)
print(f"Signal shape: {result['signal'].shape}")

3. Sequence Library

Pre-defined sequences are available:

from blochsimulator import SpinEcho, GradientEcho

# Spin Echo
se = SpinEcho(te=30e-3, tr=1.0)

# Gradient Echo  
gre = GradientEcho(te=5e-3, tr=10e-3, flip_angle=30)

# Compile to waveforms
b1, gradients, time = se.compile(dt=1e-6)

4. Tissue Parameter Library

Common tissues at different field strengths:

from blochsimulator import TissueParameters

# 3T parameters
gm = TissueParameters.gray_matter(3.0)
wm = TissueParameters.white_matter(3.0)
csf = TissueParameters.csf(3.0)

# 7T parameters
gm_7t = TissueParameters.gray_matter(7.0)

# Custom tissue
liver = TissueParameters(
    name="Liver",
    t1=0.812,
    t2=0.042,
    t2_star=0.028,
    density=0.9
)

Desktop app build (PyInstaller)

One build per OS is required (macOS build won’t run on Windows/Linux).

Prereqs

  • macOS: Xcode CLT; brew install libomp.
  • Windows: Python 3.8+ and MSVC Build Tools (for C extension).
  • Linux: gcc/g++; ensure libgomp available.

Quick build (any OS)

python -m pip install -r requirements.txt
python -m pip install pyinstaller
python setup.py build_ext --inplace
PYINSTALLER_CONFIG_DIR=.pyinstaller pyinstaller bloch_gui.spec --noconfirm

Artifact: dist/BlochSimulator (single binary; .exe on Windows).

One-liner helper

./scripts/build_pyinstaller.sh   # creates a venv, installs deps, builds, packages

Run the packaged app

  • macOS/Linux: ./dist/BlochSimulator
  • Windows: dist\\BlochSimulator.exe

Runtime data/exports

  • rfpulses/ is bundled automatically.
  • Exports default to per-user data dirs:
    • macOS: ~/Library/Application Support/BlochSimulator/exports
    • Windows: %APPDATA%\\BlochSimulator\\exports
    • Linux: ~/.local/share/BlochSimulator/exports
  • Override with BLOCH_APP_DIR or BLOCH_EXPORT_DIR if you need a custom location.

Theory

The simulator solves the Bloch equations:

dM/dt = γ(M × B) - [Mx/T2, My/T2, (Mz-M0)/T1]

Using:

  • Rotation matrices for RF and gradient effects
  • Exponential decay for relaxation
  • Cayley-Klein parameters for efficient rotation calculation

Troubleshooting

Build Issues

  1. Missing compiler: Install gcc (Linux), Xcode (macOS), or Visual Studio (Windows)
  2. OpenMP not found: The code will still work but without parallelization
  3. Import error: Ensure the .so/.pyd file is in the same directory

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Add tests for new features
  4. Submit a pull request

Citation

If you use this simulator in your research, please cite:

@software{blochsimulator_python,
  title={Python Bloch Equation Simulator GUI and API},
  author={Luca Nagel},
  year={2025},
  url={https://github.com/LucaNagel/bloch_sim_gui}
}

Acknowledgments

This project is based on code originally developed by Brian Hargreaves at Stanford University. Currently (11/2025) it is unfortunately not available. A python adaption of this code can be found here.

  • Original Bloch simulator by Brian Hargreaves, Stanford University
  • NumPy and SciPy communities
  • PyQt/PySide developers
  • OpenMP project
  • Built partially with codex, claude code and gemini cli

Contact

Luca Nagel

Appendix: File Structure

blochsimulator/
├── src/
│   └── blochsimulator/
│       ├── __init__.py
│       ├── simulator.py            # Core Python API
│       ├── gui.py                  # PyQt5 GUI
│       ├── bloch_core_modified.c   # C implementation
│       ├── bloch_core.h            # C header
│       ├── bloch_wrapper.pyx       # Cython wrapper
│       └── ...
├── tests/                          # Unit tests
├── docs/                           # Sphinx documentation
├── pyproject.toml                  # Modern build config
├── setup.py                        # C-extension build config
├── MANIFEST.in                     # Source dist manifest
└── README.md

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

blochsimulator-1.0.4.tar.gz (353.4 kB view details)

Uploaded Source

Built Distributions

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

blochsimulator-1.0.4-cp312-cp312-win_amd64.whl (415.2 kB view details)

Uploaded CPython 3.12Windows x86-64

blochsimulator-1.0.4-cp312-cp312-win32.whl (403.9 kB view details)

Uploaded CPython 3.12Windows x86

blochsimulator-1.0.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

blochsimulator-1.0.4-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (1.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

blochsimulator-1.0.4-cp312-cp312-macosx_11_0_arm64.whl (673.7 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

blochsimulator-1.0.4-cp311-cp311-win_amd64.whl (422.3 kB view details)

Uploaded CPython 3.11Windows x86-64

blochsimulator-1.0.4-cp311-cp311-win32.whl (412.6 kB view details)

Uploaded CPython 3.11Windows x86

blochsimulator-1.0.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

blochsimulator-1.0.4-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (1.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

blochsimulator-1.0.4-cp311-cp311-macosx_11_0_arm64.whl (677.0 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

blochsimulator-1.0.4-cp310-cp310-win_amd64.whl (421.7 kB view details)

Uploaded CPython 3.10Windows x86-64

blochsimulator-1.0.4-cp310-cp310-win32.whl (412.7 kB view details)

Uploaded CPython 3.10Windows x86

blochsimulator-1.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

blochsimulator-1.0.4-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (1.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

blochsimulator-1.0.4-cp310-cp310-macosx_11_0_arm64.whl (677.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

blochsimulator-1.0.4-cp39-cp39-win_amd64.whl (421.9 kB view details)

Uploaded CPython 3.9Windows x86-64

blochsimulator-1.0.4-cp39-cp39-win32.whl (412.9 kB view details)

Uploaded CPython 3.9Windows x86

blochsimulator-1.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

blochsimulator-1.0.4-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (1.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ i686

blochsimulator-1.0.4-cp39-cp39-macosx_11_0_arm64.whl (678.1 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

blochsimulator-1.0.4-cp38-cp38-win_amd64.whl (427.5 kB view details)

Uploaded CPython 3.8Windows x86-64

blochsimulator-1.0.4-cp38-cp38-win32.whl (417.5 kB view details)

Uploaded CPython 3.8Windows x86

blochsimulator-1.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

blochsimulator-1.0.4-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (1.1 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ i686

blochsimulator-1.0.4-cp38-cp38-macosx_11_0_arm64.whl (680.4 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

blochsimulator-1.0.4-cp37-cp37m-win_amd64.whl (408.1 kB view details)

Uploaded CPython 3.7mWindows x86-64

blochsimulator-1.0.4-cp37-cp37m-win32.whl (400.1 kB view details)

Uploaded CPython 3.7mWindows x86

blochsimulator-1.0.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

blochsimulator-1.0.4-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl (1.0 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ i686

File details

Details for the file blochsimulator-1.0.4.tar.gz.

File metadata

  • Download URL: blochsimulator-1.0.4.tar.gz
  • Upload date:
  • Size: 353.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for blochsimulator-1.0.4.tar.gz
Algorithm Hash digest
SHA256 aacba90c4067dfff787614bac93bd08f60f53c819c1070c92434dbb59a6cd6af
MD5 4fc5ab4feffd15baa9ba000fd3a59f66
BLAKE2b-256 ff70d1f989d561e367741ad3b209b5a4f99da4ba3d67f036c0f68681ca3f164c

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 0e56bb5676e28bc4af0590d129a86262162e8d8774b558c68be530e9a3041c02
MD5 a39f75815325ad7383402350dfce6748
BLAKE2b-256 e4e397f0106aa2ca4c100688d80a31366bfa857798f2458e9e0101f904acab7f

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp312-cp312-win32.whl.

File metadata

  • Download URL: blochsimulator-1.0.4-cp312-cp312-win32.whl
  • Upload date:
  • Size: 403.9 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for blochsimulator-1.0.4-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 310651c34805919e0f498267c7509b6062b469908d5b1d5dbe77d35b5cdd3b16
MD5 1e52c6fb0b274818f80beb58bc420578
BLAKE2b-256 93b22f964cff4c081ae79e6b1cad7a7ccba5e9bb6a8b523ff80b7e77ff9311ff

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c6e8e37a8f90482c3f05ab01818682e136e623bb3b48ca4e9e40c6321e49a9b2
MD5 4464f59d4b9f8fdd23488b7b7370b6a9
BLAKE2b-256 ca9140ca0efbfbc9f22000027307d9a70487b750964709a41bc37c3eb1d2d2ee

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 cc6afd6bcd87801633e0606a563b52fbb28dbb0b4685be7fb328b581a2955ba8
MD5 97f3540fa6da167d850de8ff78ac70c6
BLAKE2b-256 d2e12cf6bda8d9c9214c478f8ce2a45ccd1fa25943083bfbc67db2cfbbecffab

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 35c4fa0de9607f7021c4b6a3a1c3713e684075cf4422b8280466999605cd3eab
MD5 a74ef50f4f25b143f906b280819a2725
BLAKE2b-256 506b025226967569c45ac2ac8bc41592fb50f4db3474c257796f40ff5e01f57e

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 33a2f4ebb60a9ef2102efec21be54217d61d39d889f043df00f95b3dbf8a31d3
MD5 1c1e04d16c22bfc4698bdf34b59d74be
BLAKE2b-256 38a55fd129cd2713b23e9fa2eda514b8c47dcb501844ed91035a5c64b2910479

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp311-cp311-win32.whl.

File metadata

  • Download URL: blochsimulator-1.0.4-cp311-cp311-win32.whl
  • Upload date:
  • Size: 412.6 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for blochsimulator-1.0.4-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 9ba358fac3d90bcd8324d10270be0e22e38b2b241449f846ac069015cb5b0165
MD5 92de9ae222841e2c5cccf9b9e6dc46a5
BLAKE2b-256 913c989014ef7b490482d113bfa85bf239d57fe3f267caf8ac2dc8d5cb66285f

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0f2bd69a2ba7190c0804411bc648076f5000e8080dfbe9a9fc5a4abfaaf7b267
MD5 3f34fcb76f617ca8e925e982b6fd5c84
BLAKE2b-256 16ede75516a0d6aa0b1d6751678f30316aa5d36fa961706b4bddfed9aab97969

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 c0f4217dfe12d8a6019b22cefb91a16196adfc59c19246d1aa9390279bbddd52
MD5 62d3213a763b28168658e628f4837d28
BLAKE2b-256 8ae306720ad3fb0489049818ae3278c6911a692a9da483c98a6f2890dd18baee

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 358df294777ad1d81b8085d1d3016bbeb5ad45a88a8c255ac2ae79ee66209367
MD5 d58ecf614a172e6934f150fef1dc816f
BLAKE2b-256 9b85dceb386c793511e4165e7c17fa163acc9aa64508774abb70ca0f35c064f8

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 33b96e920f2fdd44cf73016cf82ea507b46db747d01bf2bcfe56eab54ff30995
MD5 e8708dbb301e17111ecb2abee3fc7fa7
BLAKE2b-256 92fff0864e5863b53354aee5d844deac736c75f0cb833513f73ee73a6e6fd764

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp310-cp310-win32.whl.

File metadata

  • Download URL: blochsimulator-1.0.4-cp310-cp310-win32.whl
  • Upload date:
  • Size: 412.7 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for blochsimulator-1.0.4-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 8040806b34777279998ab865a744cfa07315a6858ba850fdf678cbfbe52e58d1
MD5 fc02074983b30df0b4e51dbda813ee0a
BLAKE2b-256 d74ad187ad9f5cbcbbc1ce3b34715d2b3012c4e0ac92efe0b5174dd1dca1f145

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9e9e7d7e54141376bd894f2cc4f1fe2261a7dc9b7579b86ee15ba219b0ab10ae
MD5 a8e1bf3e189c2b1b3ef307776b7dee34
BLAKE2b-256 0f7cd391d3cbdf1807fac51d8658622cd3560e847457fc47d76ae0f51a31e9c0

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 435ab5ac78f27c64a321ff25588c4be25bc8c7554716c06ea217c01bbbb6d4d2
MD5 5200cd00301f8855c9c3a8db9e022e77
BLAKE2b-256 ccfeab2f03feb476e0100ea26d744d38da9b08a31a022571146d02d4f7c269f7

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 048d190e636d2339f93fa8d6e119430be4dca933326a977554e0bf15dd124282
MD5 bce21f74d49c1ca3240f1bc861fda617
BLAKE2b-256 4d0ec187d051742d11c558a780a3c77cb2d17eaa53562f3bb2bc913ea61d14d3

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 97f1e54e1d2e5383b5d9bbf246258d05412f0f25886692e59a8a221c0c86fec6
MD5 1d2f660259fe498138c1946f2877e2b3
BLAKE2b-256 ff987986e7f386eb862553305275afa75505343700dfc4c8141e62c4055e3449

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp39-cp39-win32.whl.

File metadata

  • Download URL: blochsimulator-1.0.4-cp39-cp39-win32.whl
  • Upload date:
  • Size: 412.9 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for blochsimulator-1.0.4-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 cca7c7756130aa7590196e373c11f305a627f2d7d78c9cb8801923b3f7f66471
MD5 69a3e0ca8bd6a6d5b99a5b2d40497a03
BLAKE2b-256 c42d0a4ae2a35db1c495e9e9e53565f309473c6f64904b214dedb49bb6763a80

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d34be2b05ece2598f93b66466a171ec1f1cc3d7b95df226534c7281f1a171730
MD5 47a710c02faa8c219d1cbf36575caa07
BLAKE2b-256 fb3d24adc6614b27ca04fa25cddab7191b7f325c5771dde1c993be40dbcd882c

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 f02ef020702866be4f582aaf78dc9f6cd1863af02aa968c7261acaae9cc5b79f
MD5 9e2216fdaac1efa7a7c19ce1a7378522
BLAKE2b-256 85e3d9a7d50f2832d72faea54594b45a4a1321ee380288637d0edbb065409bd5

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 208d3a88902eb890c51425d0402e12f4f3290eb8f234a815bfa5511b75ff441e
MD5 2dbdf4dd99e541db5b60b3e673249cd5
BLAKE2b-256 1dc40e94e8d615c886d89fc4bd8e49957f3eac3c783821ded3ab93d2643995f0

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 83825ada834c0e8221c7b054ef7cadb971ba8709916d5f1ee9da740f06bd3bb2
MD5 e431bcbd4a118fbd73b1cb65988e7cc5
BLAKE2b-256 775426a7e9549505b752ca8e016b322bdb917739222bab3299bde7812438af79

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp38-cp38-win32.whl.

File metadata

  • Download URL: blochsimulator-1.0.4-cp38-cp38-win32.whl
  • Upload date:
  • Size: 417.5 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for blochsimulator-1.0.4-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 61ec0a6e8e0f7367151c9c53e467f6ec1969d3a669e53d075cd614c75cbf7421
MD5 5ea437f045b2b22d49a6fb338dfc1f9c
BLAKE2b-256 19afb61a21d7933c3a9901a8f810cc4c9bf71197d37106cc9c1842a6e6c34722

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b425ebc5ec729d7f08ffd68236b673433426d84669b38b9f3d5607e554595776
MD5 71a0b838b1f61700b8f459969654013c
BLAKE2b-256 7a4adeb6ec42e683745410c4d63889bab85adf73e0dda4cb2ef7b34ee134a6be

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 f9d7f503a6a6ccc2664228d1a8b9d33702cb01bf0f9e51ebaeffbf1b23ca7f94
MD5 1a905e957e26b96a33432a5278b19715
BLAKE2b-256 f05c7de0cc0cd4bdfa6e0c3f2330913b4a263ff04fcaf96527e00a2945223d29

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d394fca72dfd04f6b379402a320b505e0f179c78aae4d1ab191312e82295f770
MD5 84653d7e5a59fe73aef8a2d8b8af0650
BLAKE2b-256 07610fd7c06270977edd0ff21e63e1b40aa30d6ed2d60b5f4149910e0a72df8d

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 a33172958c75331958d53fd83cf3ae69fa4e71aee4b6b3b1d5b084800d49005e
MD5 94a4d135a46152d94e05ae0993526164
BLAKE2b-256 a1bf3a921f7d69f7c6e3a71a42f7ffa8040090afebbeac0d4daa086434eaac8c

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp37-cp37m-win32.whl.

File metadata

  • Download URL: blochsimulator-1.0.4-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 400.1 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for blochsimulator-1.0.4-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 fb36d28d196f819e65acf0250e955cac346003dc8b4076f03c7494b0912505f9
MD5 2524f32b90964c918240a3e44f2f341b
BLAKE2b-256 4ef5e2f8890d5ada5e5da4ddc86425e39d81d4be78a4a3d05bda447f06a77dab

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2ce86afe806046a1f5ca296325d786f1aa5106645d548e04de1ea4f0ccbbba6d
MD5 e4fa67d8fe95fe14a1d3a3a0c16a564e
BLAKE2b-256 880f5f44ec625cdea7b90e0d97e81e25f4eb21b53b762dcd1006eba6de736fff

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.4-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.4-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 2ea313a3682356dd319610f1f6b681baab362a1e1f7b870be8a4596655c5944c
MD5 ea47045453d39efc45ea834090629aef
BLAKE2b-256 45097c485ce2c42642727c466d29720cb86c90f22fc56618d0a6c6bdfaa1770c

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