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.
  • Parameter sweep: Allows simulation of parameter space (e.g. varying TRs in a SSFP loop).
  • Visualization: 3D magnetization vectors, time evolution plots, frequency spectra, and animation export
  • Reproducibilty: Sequence parameters and simulation results can be exported and imported.
  • Auto-generation of jupyter notebook: GUI simulations can be exported as jupyter notebooks.

Documentation

For detailed instructions on installation, GUI features, and Python API usage, please refer to the User Guide.

Installation

Method A: Direct Install (PyPI)

Recommended for most users. Package is availabe on pypi.org.

pip install blochsimulator

Method B: Python Package (From Source)

Recommended for researchers and developers.

To run from source, you need Python and a C Compiler installed.

👇 Click here for detailed setup instructions (Windows, macOS, Linux)

1. Install Python 3.9+

  • Windows:
    • Download the installer from python.org.
    • Important: During installation, check the box "Add Python to PATH".
  • macOS:
    • Download from python.org OR use Homebrew: brew install python.
  • Linux:
    • Usually pre-installed. If not: sudo apt install python3 python3-pip (Ubuntu/Debian) or sudo dnf install python3 (Fedora).

2. Install a C Compiler

Required to build the fast simulation core.

  • Windows:
    • Install Visual Studio Build Tools (free).
    • Download from visualstudio.microsoft.com.
    • In the installer, select "Desktop development with C++".
  • macOS:
    • Open Terminal and run: xcode-select --install.
    • (Optional but recommended for speed) Install OpenMP: brew install libomp.
  • Linux:
    • Install GCC: sudo apt install build-essential (Ubuntu/Debian) or sudo dnf groupinstall "Development Tools" (Fedora).

Steps:

  1. Navigate to the directory where you want to install the GUI in your terminal.
    cd /path/to/the/directory/
    
  2. Clone or download the repository.
    git clone git@github.com:LucaNagel/bloch_sim_gui.git
    
  3. Or if that fails:
    git clone https://github.com/LucaNagel/bloch_sim_gui.git
    
  4. Navigate to the cloned repository.
    cd bloch_sim_gui/
    
  5. Install in editable mode:
    pip install -e .
    

Verification (not necessary for the installation)

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")

Method C: Standalone App (macOS)

No installation required. Recommended for non-technical users.

This requires you to manually remove the quarantine flag that macOS puts on the downloaded app. Only perform this step if you trust the distributor.

  1. Go to the Releases page and download the latest .zip file.
  2. Unzip the file and move BlochSimulator.app to your Applications folder.
  3. Crucial Step: Open Terminal and run this command to fix the "App is damaged" error:
    xattr -cr /Applications/BlochSimulator.app
    
  4. Launch BlochSimulator from your Applications folder.

Alternative:

  1. Launch BlochSimulator from your Applications folder and dimiss the warning.
  2. Go to System Settings > Privacy & Security, scroll down to the Security section, here you should see a message "BlochSimulator.app was blocked...". Click "Open Anyway".
  3. Launch BlochSimulator from your Applications folder.

Usage

🚀 Jupyter Notebook (Recommended)

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

# 0. Install from PyPI (run once) if not done before
!pip install blochsimulator

# 1. 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)
  • 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)

For detailed packaging, release workflows, and CI/CD info, see the Developer Guide.

Note: Standalone applications for macOS, Windows, and Linux are automatically built and attached to GitHub Releases whenever a new version tag is pushed. The instructions below are for manual/local builds.

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:

$$ \frac{d\vec{M}}{dt} = \gamma (\vec{M} \times \vec{B}) - \begin{pmatrix} M_x / T_2 \ M_y / T_2 \ (M_z - M_0) / T_1 \end{pmatrix} $$

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={2026},
  url={https://github.com/LucaNagel/bloch_sim_gui}
}

Acknowledgments

This project is based on code originally developed by Brian Hargreaves at Stanford University. Currently (01/2026) 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.7.tar.gz (366.0 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.7-cp312-cp312-win_amd64.whl (425.6 kB view details)

Uploaded CPython 3.12Windows x86-64

blochsimulator-1.0.7-cp312-cp312-win32.whl (414.3 kB view details)

Uploaded CPython 3.12Windows x86

blochsimulator-1.0.7-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.7-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.7-cp312-cp312-macosx_14_0_arm64.whl (684.0 kB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

blochsimulator-1.0.7-cp311-cp311-win_amd64.whl (432.7 kB view details)

Uploaded CPython 3.11Windows x86-64

blochsimulator-1.0.7-cp311-cp311-win32.whl (423.0 kB view details)

Uploaded CPython 3.11Windows x86

blochsimulator-1.0.7-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.7-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.7-cp311-cp311-macosx_14_0_arm64.whl (687.3 kB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

blochsimulator-1.0.7-cp310-cp310-win_amd64.whl (432.2 kB view details)

Uploaded CPython 3.10Windows x86-64

blochsimulator-1.0.7-cp310-cp310-win32.whl (423.1 kB view details)

Uploaded CPython 3.10Windows x86

blochsimulator-1.0.7-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.7-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.7-cp310-cp310-macosx_14_0_arm64.whl (688.2 kB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

blochsimulator-1.0.7-cp39-cp39-win_amd64.whl (432.3 kB view details)

Uploaded CPython 3.9Windows x86-64

blochsimulator-1.0.7-cp39-cp39-win32.whl (423.3 kB view details)

Uploaded CPython 3.9Windows x86

blochsimulator-1.0.7-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.7-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.7-cp39-cp39-macosx_14_0_arm64.whl (688.4 kB view details)

Uploaded CPython 3.9macOS 14.0+ ARM64

File details

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

File metadata

  • Download URL: blochsimulator-1.0.7.tar.gz
  • Upload date:
  • Size: 366.0 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.7.tar.gz
Algorithm Hash digest
SHA256 449bc407d14ba714ed3fea66fdf2a9296acbb964d7224d4e2931ae1734c3782b
MD5 cd00ca0aab317b359f56f38d50d9dc1b
BLAKE2b-256 97c15244f7c70d48203a1ea9f5ae1564191f9da8407f9620f85a1b4bda6ddc35

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 73d26fcc8c5f300901379a7dd2f5b369fca17c6bb60c888788d99999aa052bd2
MD5 2d9ea02daa7e2d2309cba94c8b322d7d
BLAKE2b-256 68ba37844a214102c61cd0b6cef19ad3e142025cbe833835241f6b929fb0c5ef

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.7-cp312-cp312-win32.whl
  • Upload date:
  • Size: 414.3 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.7-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 8d16d3d9ddf35b4264e995e6fdafb7a09dee8bd14ac7850fae269ee886182dee
MD5 7d69fb57ff741de1446a8618d3e53105
BLAKE2b-256 1e4b639af475623695e9d626ad61f4643af3cfafa6d2dded8aac843d89fa88d9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2b94864f95ac6ccdad2b1e06da11fb60c13e15fd0bd90f66349a9e4dfb593b3d
MD5 1cbbf73ca1490a404bf76cc34f609a08
BLAKE2b-256 1df58a645f527dbae8deaf7392a09e0ee4b7c66e75e35c09259a3bf01d09d64b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 062674c10bf1b7711240ccf5ffccc19e4aed0988fb5b5af1526b51574d0d3dd8
MD5 f088be0ede98c9c344b06cfb28739c99
BLAKE2b-256 c37c616be2c5e94a18a921bec2e9a135abd8a2bcda3a94b461e16580b06d89ea

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.7-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 a80c6b33d881317eacf8275e20065b82238ff807dab30a73caa15d662c520d76
MD5 c97809025e8b73c6d921add50310ae67
BLAKE2b-256 f9e01afa27356d4722ee69ceaf30b79204e25827a203df83a9bdad87c200bec9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ab6209e08e11430a9c48bc67943ff7be9cf648658a18bd7845e600028232d0c4
MD5 e6f36c0d5e1159e81d2644fe78459145
BLAKE2b-256 21c79db11e735c58124375107d43ee2a16bfad7bd3f44da3f6395b88594dee2c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.7-cp311-cp311-win32.whl
  • Upload date:
  • Size: 423.0 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.7-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 3ae78db0e10d036546e4932325efc3af634c1122fe9856bbcfc93b0212a4cef9
MD5 9cdee5a984f23e05d5de03caaa0c7a56
BLAKE2b-256 d0e12f58418d7919826316b1c6699af84f2794d598b3e6181876e4aacca96837

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0d89af004b07d704af0d167769fecc622ea35204dc2c03e473714b5c5cd02ce1
MD5 3e838e0eb369bac35e20bafdcc9f2ff0
BLAKE2b-256 6bd2495a3c564ca156718a3b54cf001771683a87242a5087c338c242d2e02a93

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 825e333203ee132cc386923a343312f57cc09fa4e124fb9b7777c57214f16823
MD5 5cdea71f5019d2f7ccbd12d6a34e1653
BLAKE2b-256 7677abfdf32b330114c22409144eba425e7e1d0b0f2b4e23ea28fe845b749714

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.7-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 4892f5d179634db6f88cdc0c6772dfdd0084585785e8117300c4d26150e8023f
MD5 ce97255f9424c25e6ebb67e3ff8e490b
BLAKE2b-256 b6ea4a7904c3eb8bdb286fade640636d4005f44ea487222dbddad5921384868a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 3147522df3755a6a0c9b607f48661f877cc1e14484b3e7de339bb0a687566866
MD5 da8def820f4a8890ba929417d4b5b2e6
BLAKE2b-256 a3b3ed0bf8e6e8fca11255c80ec77e1da15256608391dd8284e695bbcab355fc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.7-cp310-cp310-win32.whl
  • Upload date:
  • Size: 423.1 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.7-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 5a66ee878cc2f926463ddaf3d519090c2867385a25147db553a1cba468959fdf
MD5 b602c65c9cc48c59169e643b4313e352
BLAKE2b-256 867ebd74044d629961dea55942cfe23525a90ffbcc56dac9757a13e6fcaf5521

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 887347ea3126f4ced623b5095a1749bdad4ab91a49197fd06709c744331ce224
MD5 a43295d779f1e1dc05709a03cd9c1290
BLAKE2b-256 1e73557a276fd0a78d8b16f6f3f9e0353286ab6f79559731fe9e640ba4ff6bac

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 f4d50538c2c656e6d791e9792096922d3b04a0eabc27846c9a15b290dac9f0ae
MD5 f106a3101ea23fc18920676d55b8cf65
BLAKE2b-256 e757318a3897d2cbb703233b7e4ddb139382fa271e715106cddc26123eb5d3a5

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.7-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 c3d6272423d5d0df2a0d6f252a2c2a6c6ddba3e1c192ee0be4dd0f23d01197ed
MD5 b20cad481dd6698d1bce14ab1d81c2ec
BLAKE2b-256 7d115f56519bed40d106e087336be4edfdd96d3ef52f08ecc69002ef9957067f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 88f0abc5b698c10a58249b2116cfc2791760655a8aa0815433f98b94408a9499
MD5 2493c36c135ff6dfa1164dda3027f426
BLAKE2b-256 dffe4168a652344feb19a78d6d9e9cb43de26393d3a405003fd5325d2afc02ce

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.7-cp39-cp39-win32.whl
  • Upload date:
  • Size: 423.3 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.7-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 03da77d51e37c509db04caed51adc72c86c2a10eb0981a69bbcbcae214f57623
MD5 482955c45900c289bba94ecbe05586da
BLAKE2b-256 8409e463818519715eba871e7cd63e47a735aa5d2cdcacae645b508a206c9532

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e4158685d5363b49ec64333e6658ceeb55bf3cb1556388cfcd9433d157b92620
MD5 f303d86ca61202d4dd04a95f64140ac4
BLAKE2b-256 e77cf54bc59dd3ceac3a1b1cb76f9aa1e08aef5a1ffc1c0b56c24b5e2e97307d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 8653a92813159c3eac8d11e68169c85ee9f4492ac2f09672e17f854ebd1d1eb1
MD5 cb1d0154513cf25e367a875600a1d942
BLAKE2b-256 1cc8a666eccbaa7bbb56dbcded9bea7ec8ac38b3ddbfdaa2013fde96d8f39049

See more details on using hashes here.

File details

Details for the file blochsimulator-1.0.7-cp39-cp39-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for blochsimulator-1.0.7-cp39-cp39-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 6341d9110cebdcdd216a703e6794600af2dcbef717229344181626aa29718827
MD5 6b48bfda0e78f25c2c3b1b8854d61148
BLAKE2b-256 818f7db1a6a5f7ae6d081f4ffabff9c0e0b19d69cbc01778f47bf9438e73a8f4

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