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

No installation required. Recommended for non-technical users.

Download the most reason version for your OS in Releases

Activation (MacOS):

In case of the MacOS app, 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. Unzip the file and move BlochSimulator.app to your Applications folder.
  2. Launch BlochSimulator from your Applications folder and dimiss the warning.
  3. 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".
  4. Launch BlochSimulator from your Applications folder.

Alternative Activation:

  1. Unzip the file and move BlochSimulator.app to your Applications folder.
  2. Crucial Step: Open Terminal and run this command to fix the "App is damaged" error:
    xattr -cr /Applications/BlochSimulator.app
    
  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.8.tar.gz (369.3 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.8-cp312-cp312-win_amd64.whl (427.1 kB view details)

Uploaded CPython 3.12Windows x86-64

blochsimulator-1.0.8-cp312-cp312-win32.whl (415.8 kB view details)

Uploaded CPython 3.12Windows x86

blochsimulator-1.0.8-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.8-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.8-cp312-cp312-macosx_14_0_arm64.whl (685.5 kB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

blochsimulator-1.0.8-cp311-cp311-win_amd64.whl (434.2 kB view details)

Uploaded CPython 3.11Windows x86-64

blochsimulator-1.0.8-cp311-cp311-win32.whl (424.5 kB view details)

Uploaded CPython 3.11Windows x86

blochsimulator-1.0.8-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.8-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.8-cp311-cp311-macosx_14_0_arm64.whl (688.8 kB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

blochsimulator-1.0.8-cp310-cp310-win_amd64.whl (433.7 kB view details)

Uploaded CPython 3.10Windows x86-64

blochsimulator-1.0.8-cp310-cp310-win32.whl (424.6 kB view details)

Uploaded CPython 3.10Windows x86

blochsimulator-1.0.8-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.8-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.8-cp310-cp310-macosx_14_0_arm64.whl (689.7 kB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

blochsimulator-1.0.8-cp39-cp39-win_amd64.whl (433.8 kB view details)

Uploaded CPython 3.9Windows x86-64

blochsimulator-1.0.8-cp39-cp39-win32.whl (424.8 kB view details)

Uploaded CPython 3.9Windows x86

blochsimulator-1.0.8-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.8-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.8-cp39-cp39-macosx_14_0_arm64.whl (689.9 kB view details)

Uploaded CPython 3.9macOS 14.0+ ARM64

File details

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

File metadata

  • Download URL: blochsimulator-1.0.8.tar.gz
  • Upload date:
  • Size: 369.3 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.8.tar.gz
Algorithm Hash digest
SHA256 27ce6bd4747d8619ce2f334a49d570dc011f1173bd5246b022fe8579ebf36690
MD5 4c305ecaaa870a42c05d05af66a447ad
BLAKE2b-256 b125498df160c6129aaae3b6587c4d0766714ecadd32381585026ac1f07de780

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 12ead1f15b2ad859f18a8a71f039e2352a3d26a8328d859bd8f8219ebd966a40
MD5 bf38bfdde483590f206c3aa6c1c8276a
BLAKE2b-256 b7b05ef9cc878a15f743a398fc994cf04347a2fe739471b03e5ade632b4b26c2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.8-cp312-cp312-win32.whl
  • Upload date:
  • Size: 415.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.8-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 9e112fc42c3c41f348d0c29d69015805dbf288196b66cb4858a489dc9a0c232d
MD5 e28c3d54859961540e895133ac0fcf16
BLAKE2b-256 c77b3940115bc41dd42199355243ddbaa55443fbf3a9751cabd190ee796aa916

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1d4c3ec52d82767c77a7a367f860bf2ae42745a79d39ea14f592a4bbe9b2e764
MD5 2c714be412a5e4ff886e43475ca6ad24
BLAKE2b-256 14fc2b3b68902a49be895ee8125c71d73523e6abb8d7d570bba41e7926eedbad

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 c6b49e2b3b12e332f598e498f75830dc2561919e70679acbb4ab8437e357b8f1
MD5 a06f4cd49af3892f09061cbacea96a1d
BLAKE2b-256 caf0efd498476714a61e1fee365af963552f217bec0e0d543fab29290fdbd448

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 6ec415c580f811314b8e3638793be5fe22d10475a6e38e872a7068501f70eda9
MD5 eca7b2191ad0ce3649c3ea6e0ecefdbc
BLAKE2b-256 2ec2babe3a382e62203377d6ebe643bdc54d387d966d08e77f2cd00e0c8dd301

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d629c82748d8f7fd4d15a23e15265dfa6611542b709fc7f8d0a5c603419061b6
MD5 56d516e3ff45e9d36934c3bc671b652e
BLAKE2b-256 67ec5c56784d4650d9bf302a36a516c4cb89d83dccf5609a89e499485572f469

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.8-cp311-cp311-win32.whl
  • Upload date:
  • Size: 424.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.8-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 236e4472eb1bf6cc8814b1e2c1778cd5cb5b25aacc820f6f703678741dd990e8
MD5 f57cc079d3b87fd79302b0539e4fcb3f
BLAKE2b-256 2c93de27461285ec38d9d3f95dbdc2f66de5dbdab677bd3a22b71c1900085104

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cc6e146d71a8e7d97665c082d718f641649c722ec1e51cd9c53d39eda7a9af59
MD5 bca939f7d4cd08028a0e356e847c73aa
BLAKE2b-256 e0244aa3f306c86621ab3348cff5ca7d23ef65955913f3eead9a5cb3179bffc7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 6cd70141d192a207e1b5cb013e975381d0e85753c56add38eb135879dba4f4fe
MD5 b65aa9e4d32b6cf20b311ea2294335f8
BLAKE2b-256 881ed3abc39e58067c02ef6557636ab268e5390b8777ff50fe68c1fe447903cf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 ff68b2661536f480e4fb0453d5ad2b847d48794e3328bd4af393b0cb147e7bde
MD5 8222e49364960933b4ec5e86a6014ecc
BLAKE2b-256 6454fe0a0e6ec63c2d998810764a7d6f0a9fb1c56710ba481639fb7e59f5ec41

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 471214736fce0c9c2fc3707751f2b3bbb318e13f5bef102422844bff7858928d
MD5 9e0763b361c3d4e079b05707faf0a5de
BLAKE2b-256 1574889a55c601a5a215404c9ddbe848b73829591258def3f1ef555cd6de5d50

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.8-cp310-cp310-win32.whl
  • Upload date:
  • Size: 424.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.8-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 12eb0f8808001c88ac79ebe6732140db11b80fb326310df79337df6f556bbcfc
MD5 049a39576074f7e3429019f82d00d591
BLAKE2b-256 ee50b5d7abe1fdbbe85194c1857fb480cc9e1b09c8dc8c739e86a330b6501126

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 89e3dbc4dc59e2a7dfc7bbf0900021afc1b48b59effa05f5efd34fefce443b85
MD5 1d19c0b901b9b2e763dcc19f321ee07d
BLAKE2b-256 04d367b1d7f96ae060ffbdc632ab46a52ea7c10e0d0dab2109c2854c15119f7c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 64bebb5cd0b4ea81682307c16c74486cdd65a9f2099c7f993a6b8dd4ab378d9c
MD5 ae5ce825e2c1204a1250b1fe670af64e
BLAKE2b-256 ffe3e47f142d93fdad6d690010ec199ea1542a1a3a6745a369efc33561bc8b52

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 b7b3442c3c7341e0a39c4b712d11eb3f28473af62cc973df67e44da91cff456d
MD5 d82bde5f5804a57a0d343223f122ec47
BLAKE2b-256 cbd0c810d215ab567ec1ee5b5343b0e54c76389938cacffd9437cca7fa9cd9e5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 54877ee0bc0db13f3e9841ef2196a3e27c929ffedef40a31a67041f4d8c348b4
MD5 6b19640397bb5dcb45df927ad73b8833
BLAKE2b-256 78cb025d2153f754f9e2a45d08d1c9d6a211b78be6ef7ca7be689807684fedd6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: blochsimulator-1.0.8-cp39-cp39-win32.whl
  • Upload date:
  • Size: 424.8 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.8-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 28bb596e555d213dff73274a27b5fede308426c08bcb0cc28081fb7f453b8026
MD5 c31fa62e68b83bc69e169c662e881600
BLAKE2b-256 54e8a9b8defbfb183f75addd0c5032d547a65bdcf89e81189c78af183fee1555

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1f41217acfa7775afd72e707d8c413c09b62049ecaafcf5a4371efbec673e442
MD5 82115cf2171091d8623f35c8847ba10c
BLAKE2b-256 95f9c75619f6a8f482cd7d9bd716f05c7b19038ecb7c746d1bfa849202934fac

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 85203e224a14f196bd732e8cae1e7914f8d70dc8eeeb3de841e5125bcd93ee2c
MD5 8c1e5dc4556e7bdc78ca1674568749ea
BLAKE2b-256 c9ba764d019aad0a2883cc7e0d48791f79c9716386d3826b06aa7c87acf8484b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-1.0.8-cp39-cp39-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 5d92406b2cb79947a00b9653f73eb9d486135300e691733e39d7bcf27f6530a1
MD5 48928dd2c01869b44153bffa748d50ae
BLAKE2b-256 1ad2402c786596323406cd914f2a4ec4fa78b75e2140912fd045b5a6ac8cd6c8

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