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.3.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.3-cp312-cp312-win_amd64.whl (415.1 kB view details)

Uploaded CPython 3.12Windows x86-64

blochsimulator-1.0.3-cp312-cp312-win32.whl (403.8 kB view details)

Uploaded CPython 3.12Windows x86

blochsimulator-1.0.3-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.3-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.3-cp312-cp312-macosx_11_0_arm64.whl (673.7 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

blochsimulator-1.0.3-cp311-cp311-win32.whl (412.5 kB view details)

Uploaded CPython 3.11Windows x86

blochsimulator-1.0.3-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.3-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.3-cp311-cp311-macosx_11_0_arm64.whl (676.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

blochsimulator-1.0.3-cp310-cp310-win32.whl (412.6 kB view details)

Uploaded CPython 3.10Windows x86

blochsimulator-1.0.3-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.3-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.3-cp310-cp310-macosx_11_0_arm64.whl (677.8 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9Windows x86

blochsimulator-1.0.3-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.3-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.3-cp39-cp39-macosx_11_0_arm64.whl (678.1 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

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

Uploaded CPython 3.8Windows x86-64

blochsimulator-1.0.3-cp38-cp38-win32.whl (417.4 kB view details)

Uploaded CPython 3.8Windows x86

blochsimulator-1.0.3-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.3-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.3-cp38-cp38-macosx_11_0_arm64.whl (680.3 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

blochsimulator-1.0.3-cp37-cp37m-win_amd64.whl (408.0 kB view details)

Uploaded CPython 3.7mWindows x86-64

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

Uploaded CPython 3.7mWindows x86

blochsimulator-1.0.3-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.3-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.3.tar.gz.

File metadata

  • Download URL: blochsimulator-1.0.3.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.3.tar.gz
Algorithm Hash digest
SHA256 8c76de9d9de68813dd01c491382407d8661d842fecbfe9cba93c5def8c919ad8
MD5 4538bed66d615380c04d553c830a13e8
BLAKE2b-256 bb41f0d761ffc285fb6df110f20d28cf191c0d5ba0490110eae4ff16a5cf8c4c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 6b02bdc54305b5200886d82edaa4d7609cd021c318d5f18d9c6273b017d8f633
MD5 b14cf9b1df269fe582a20bf04b04c63f
BLAKE2b-256 5a7439ff31c4eb9ebc23cca4aa774200cbb5a60f3bda860ad5a5a6ea41dc224b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.3-cp312-cp312-win32.whl
  • Upload date:
  • Size: 403.8 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.3-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 fdd3b2fccef808621adc68d16a5d073ba10a9eb675603723f805aa39ee647987
MD5 ba822575abfef378251b8735a72a7522
BLAKE2b-256 6aa17cc8d2e1c79c8f4d0bf9be659de1911135bc77d49a9d088566f07ca89f11

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 92e7fbf87d36b1cff527f2af1f9350e8c984e602351b1372a43e3621f0b32633
MD5 2403e3b49df96a20619fe8dfde6db2b1
BLAKE2b-256 f64d2a83fdec06b0cb2acdc930902d1c570bf4c0b35f5e18f2e67fa15a562f98

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 944f3bdbdf27d4db0058a157995368a760dd6125c465df5bb0b417b51418f237
MD5 ad0813298f9dcbd07949673dc3eaaa35
BLAKE2b-256 9fa03aefe90eac75ef610d7b71ddf20da95b686d1b308732f6d5d36225c8f612

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d3ab880efbf5249e5b86bb3076b0343af49634fe2cfa03d8228e7f5f6573da1d
MD5 20d901d00805edb9c67e773417ebce27
BLAKE2b-256 3b21c8553cb8514d747b6761f93d15be1b3bab560aa3ce3e7677438ecec8cef0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0ecdfdd4416453b654316425f3892b6bb433502978297a04058b2cf5ef912a12
MD5 0b37dc318a0e2a82f6425feecaa22a2a
BLAKE2b-256 fa5dd0f6382b41109e0eed2b331f0b391fc1e38ae2963e953fe82fb077347948

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.3-cp311-cp311-win32.whl
  • Upload date:
  • Size: 412.5 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.3-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 6a45803637a09a52d0d074d00bcddc3bf50d7b6657953dd1962844b5bd822364
MD5 a260379ab75bb3caf827e91f68a9c0c5
BLAKE2b-256 80439b40bf316824ab79d435142f82f4f615080558b7d3519112a08e4cd8f554

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d0f2bfe27007afffb96f7e0bf2b7fbedf6b7b4f065e69252496d77c3bce70499
MD5 78a012bb7141f44aa5938af0418967f3
BLAKE2b-256 9325a65864ac9e8fe424b2a8c27d3856429af7ecb90e86223105836efc4a5cc8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 f8152ef8b5bf4305216b43a850f1e6ae9e453116b6c4aeb461b7ace1e4ae2f7e
MD5 e7c647fea151d8000eb3b83741a9ae5b
BLAKE2b-256 9b740823964423995b07e853d1536fc37c8a67ec96ae63d42434000ee954c8d2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 561d3077c3a3cbed3c72ff146b969a7d08527d714bbdeb133b417cee0a7006b2
MD5 63e44e913870119deeaa97f9b71f54ff
BLAKE2b-256 3e7d9f470acc709667abb3ba114c24d67db62badd59e462e95f49ae2b2688f1e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 5d62070b82198562d02297b1eecb3c50fa2ac268cd70e1220cb2aa7184d58773
MD5 8caa4b3a561a071c79153970c6c31430
BLAKE2b-256 1a542923b05bbd62e5e082783b4e2aac536cac44bcbc85d6a38063ae4c1d729e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.3-cp310-cp310-win32.whl
  • Upload date:
  • Size: 412.6 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.3-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 e165fc67ab23b5dd49854826173aa8b52971cd338ef9804964eaf79a25777322
MD5 275861922ad48b26993aa6c2d4d167b9
BLAKE2b-256 70db1644a32605910dd3e1a5c26b6b18a0d0e413ee81e68aa1dfafc525c9568d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ca9cc2edbcd13e935a02929b4b3a6dd6a9e39d7c898125ff7095cf88f0813e31
MD5 14da87909bbf5e60fd608a8becf707cb
BLAKE2b-256 d8f88265a054f030310856698ef5ae34b6ee1e38677fbbe7d5cad57b6ac06f21

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 766b2055f2d3643b18c3ea07b53c4202efba9db23720e7fb38f497c5ca93aa92
MD5 787f429597d1e619c69f57e7b8fabb7d
BLAKE2b-256 413d227a5d333e3cecba154d3d8a68d8673a781fb2ec3f8146edf0493486fd40

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 54d499a8d42d8c0587de85279a7269227f8a905b476286bbb9f750d2ba5990af
MD5 ff24c5ab6670327f510a0a0e7391b3f9
BLAKE2b-256 a6452ca15fac034040e2c60cd128819978ef78ecdd7b4352e271a0a8b818e35e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 9d2bd57556a3ab8f7ca3043752ca4a189f539c79ce68677705324396d398722b
MD5 8512d4aff9426dfeb329cfe59a3bdeb7
BLAKE2b-256 445475448afb31598874ee3a9055509b965df3d36edc388b388af8d89cbe4fa8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.3-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.3-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 56b5e11acca533c139abbf1e34dc77bb517505019e1dddb61742a54874de22de
MD5 a2cc95a7587f29bf852e00c6c746d4c9
BLAKE2b-256 6ae207726dc0549ba6adfd5b73c3987f8982a929791b06a03ff537f20bdb1f99

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f061abb91984f2e99ed4ec1590a50f954649f0e6ca068c9d4ae23cf063817b74
MD5 4ed3883f38e37045a24cadf41942b3b2
BLAKE2b-256 5912561104365a0db30770ce205d7f93f0a9a1c5eae47a35824831fe98f7dce2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 05144086cec7eeaa1159f8d78f787426ed1498304b2c106b199466b0222b0922
MD5 5e7b93b15e4642e6d80725313465054e
BLAKE2b-256 1d72c20731041e485faecb3c8917158fa9741a9086c34c0fc2892ec600ccd39e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 67dead47cbbbf367633c58fabff7ce5da4b04f55620b5c656ec2c47b8c07b9b9
MD5 39ad75ee6ddc2cc682f00ed1eaf4483d
BLAKE2b-256 d5acd3bcf8137c36c33fab05951cc7a09649739bbb3cce2925301d80254370b7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 21bcf1086c2b4509693b2032f8e27db9d50fbbe48c5e1ecf95da956e46144196
MD5 8f7db6516d74585d44813b8842903cd7
BLAKE2b-256 4cf118aecbc8aee13d9bacb4961ee4a3ba5d7e23651ed91366fd9022a5b36cc8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.3-cp38-cp38-win32.whl
  • Upload date:
  • Size: 417.4 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.3-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 869d1de92b6c6d3bc790451f2ef24bc84b83044177f200270ad2360b53708205
MD5 109b57d69dc895738d6f3d71cd514c47
BLAKE2b-256 988b2acb00372459e447e5cfa6683b9f4ae960ae2edbc6b6412b738308384701

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 222a5e334867cdf77c98624a2fda458f4768d7d7175450bf8c657bb5c1691a74
MD5 8cdd11fd5ad93c4a5f5f71d646f6e219
BLAKE2b-256 91970d471de9df7db723443cf30231309af5ad8f9841578b6790ffa167c3ee37

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 c8431df256a2db25f62c85f2af1fb1cf8a8fd466983609be0671940ffc09b7b8
MD5 004beede842467eba3e0a09cf1488ac8
BLAKE2b-256 a53381c02ef28650ebf12d003a28a22edbffae455f54c1b47dba43d47e0a19f8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 38bafa2a1cb1da6b2b54fe02a73eef5c2e26677ea88984017852aad5bbc9ee0e
MD5 d612cf10811f4d1559bb17f96a49f13e
BLAKE2b-256 3c10ad4d84a7c9b5ff2d31af4026d7d732bbde40abef4393cea81d9ce3c15f91

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 972c04f100a69454a67450a8a0052d8585a3168f3b40b00056ce819fc43ae27e
MD5 527e21ff8a07de65af076de4d9413a06
BLAKE2b-256 77231c0dc40d4e6ff57520a1e039c725bd48ca5fc97d4aacdac764447a669c51

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.3-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.3-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 25b721e6d0b8b62ebe3f736ad829109fe3f1f501ef98e5e6f6b5d7591cfd6721
MD5 7d23d0aace1aece9afa05479ab63c988
BLAKE2b-256 2fab5242a061afa1da9b9927ac17e1e202167fb0dbc18a28a7f385d0dbd86b37

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fad3531af55effc528069f2d5f5d63f3e28d8da8a2e92668cd3c0ec97efd9634
MD5 6378374878df2e282758eade62dd960c
BLAKE2b-256 7d17f4e43d658268ac9152ea49a3714934447076034ebdf84ed5263f8d97f336

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.3-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 9ffcf09fb01553187e086c6118c0c9496b6d25e4b1f030bd5b84ef672d3155bf
MD5 b703164847b5a324935981390bef633f
BLAKE2b-256 e945e0beebbc01dd1eb88540cc48f418771c5978a4df5aede6db43d7de9fad29

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