Skip to main content

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 with classic waveform simulation and an event-based Sequence mode for Pulseq workflows.

Demo

Sequence mode

Sequence workspace

Sequence Mode: Demonstration of different EPI sequence modes on a spherical object, including multi-repetition and multi-slice acquisitions with B0 inhomogeneities. Generated EPI, CSI, and bSSFP sequences can be exported as Pulseq .seq files.

Classic simulation

Spin Echo Animation

Free Mode: Demonstration of a spin-echo simulation.

Features

Simulation and sequence design

Fast C-based Bloch solver with parallel processing support. The GUI can be used in 2 modes:

Free Mode

Free mode lets you investigate the behaviour of spins over a range of frequencies and spatial positions. Good for education and learning MRI concepts such as off-resonances, relaxation, basic sequences, rf pulses etc.

Features:

  • Endpoint and full time-resolved simulations
  • Configurable tissue properties including T1, T2, proton density, and initial magnetization.
  • Parameter sweeps with final-state or full time-resolved result collection.
  • RF pulse design for rectangular, sinc, Gaussian, adiabatic half/full passage, and BIR-4 pulses
  • Sequence support for FID, spin echo, gradient echo, inversion recovery, slice-selective excitation, EPI, and SSFP.
  • Live magnetization, signal, spectrum, spatial-profile, heatmap, and 3D-vector views.

Sequence mode

A mode that lets you load, generate and simulate Pulseq .seq sequences. In addition, an interactive 3D phantom and B1 Tx/Rx designer is provided.

Features:

  • Interactive generation of Pulseq EPI, centre-out 2D spiral, 2D CSI, spoiled 2D FLASH, Cartesian 3D bSSFP, alternating-frequency spectrally selective 3D bSSFP, and Cartesian or spiral-phyllotaxis radial 3D multi-echo bSSFP sequences, with export to .seq files and reproducing Jupyter notebooks.
  • Spin Probe mode enables the investigation of the behaviour of spectral/spatial spin distributions during sequences.
  • Spectral and dynamic phantom design with spatial peak distributions, pyruvate-to-lactate kinetics, spatial B0 inhomogeneity maps, and optional time-dependent B0 offsets.
  • B1 Transmit Receive design, letting you choose between uniform, 3D birdcage, 3D surface coil B1 fields.
  • A dimension-aware Reconstruction Explorer for interactive 2D/3D k-space and image views, echo/repetition/slice selection, CSI voxel spectra, receive-coil combination, simulated pool comparison, and known-frequency linear IDEAL estimates.

Visualization and analysis and reproducibility

Project files that contain current parameter selection, selected sequence, phantom and B1 can be saved and loaded. The tool has different ways to visualize and export bloch simulations:

Free Mode

The time-resolved bevahiour of spins during and after RF Pulse can be visualized in a multitude of ways, including a 3D vector view, heatmaps, spectral and spatial profiles. Additionally, simulation results can be exported as

Sequence Mode

Loaded and generated sequences can be inspected in a sequence viewer. A 3D phantom design viewer in addition to a 3D B1 design viewer are provided.

  • Experimental export of simulated acquisitions as Bruker raw datasets, including fid and/or rawdata.job0 plus the associated parameter files.
  • Automatically generated Jupyter notebooks using the parameters selected in the GUI.

Get started

Desktop application

Download the standalone application for Windows or macOS from GitHub Releases. This is the recommended option for interactive simulation and requires no Python installation. Windows downloads and Python wheels target 64-bit systems. Was mainly tested on macOS 26.5.2.

As I did not pay for the Apple Developer Program, the app is unlicensed and will be put in quarantine after unzipping and installation upon the first run. How to run it anyways:

Activation on macOS

After downloading the application, move BlochSimulator.app to your Applications folder and launch it. If macOS blocks the first launch:

  1. Dismiss the warning.
  2. Open System Settings > Privacy & Security and scroll to Security.
  3. Find the message that BlochSimulator.app was blocked and click Open Anyway.
  4. Launch BlochSimulator again.

Alternatively, after verifying that you trust the downloaded application, remove its quarantine flag in Terminal:

xattr -cr /Applications/BlochSimulator.app

Python package

Install the full blochsimulator from PyPI including GUI and pulseq skills (recommended):

pip install "blochsimulator[gui,pulseq]"

or

pip install blochsimulator

The package exposes the full simulation API for Python scripts, Jupyter notebooks, and custom analysis pipelines, but no graphical user interface or pulseq skulls

Usage

GUI application

Once installed, launch the GUI from the applications folder or a terminal:

blochsimulator-gui

Jupyter Notebook/ Python API

The bloch simulator can be used in both jupyter notebooks or via python api

Jupyter Notebook

You can launch the interactive GUI directly from a cell in your local Jupyter Notebook. You can also export the selected GUI simulation as a notebook. See the spin-echo reproduction and spin-echo analysis examples.

# Install from PyPI once, if needed
!pip install blochsimulator[gui,pulseq]"

# Launch the GUI
!blochsimulator-gui

This requires Jupyter to run on your local machine; it does not work on a headless remote server or Google Colab.

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()
More Python API examples

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  # Position scale: 10 mm
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}")

Xarray integration

For advanced analysis, you can convert simulation results directly to an xarray.Dataset. This provides named dimensions, coordinates, and automatic metadata tracking.

# Convert last result to xarray
ds = sim.get_results_as_xarray()

# Access data with named dimensions
# Dimensions: (time, position, frequency)
print(ds.mx.dims)

# Powerful selection and plotting
ds.signal.sel(frequency=0, method='nearest').plot()

# Metadata is preserved in attributes
print(ds.attrs['t1'], ds.attrs['te'])

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)

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
)

Documentation

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

Development

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

Developer setup and manual desktop build

Install from source

The Python package supports Python 3.9 or later. Desktop GUI development and PyInstaller app builds use the shared Python 3.12 runtime declared in .python-version, so the source GUI and packaged app do not silently use different interpreters.

  • Windows: Install Python from python.org and select Add Python to PATH. Install Visual Studio Build Tools with Desktop development with C++.
  • macOS: Install Python from python.org or with brew install python. Install the compiler with xcode-select --install. For optional OpenMP acceleration, install libomp with Homebrew.
  • Linux: Install Python and a compiler with sudo apt install python3 python3-pip build-essential on Ubuntu/Debian, or install the corresponding Python and Development Tools packages on Fedora.

Clone the repository and install it in editable mode:

git clone https://github.com/LucaNagel/bloch_sim_gui.git
cd bloch_sim_gui
pip install -e .

For desktop GUI development, use the shared launcher instead of invoking an arbitrary python or python3 from PATH:

./scripts/run_gui.sh

Both this launcher and scripts/build_pyinstaller.sh use .venv-packaging. The current repository is installed there in editable mode, preventing an old installed BlochSimulator package from shadowing the working tree. Set BLOCH_PYTHON=/path/to/python3.12 if Python 3.12 is not discoverable as python3.12.

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

Build the desktop application

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 operating system is required.

Prerequisites:

  • macOS: Xcode CLT; brew install libomp
  • Windows: Python 3.9+ and MSVC Build Tools for the C extension
  • Linux: gcc/g++; ensure libgomp is available

Quick build:

./scripts/build_pyinstaller.sh

The artifact is written to dist/BlochSimulator as a single binary, with an .exe suffix on Windows.

The equivalent explicit commands use the same environment:

.venv-packaging/bin/python setup.py build_ext --inplace
.venv-packaging/bin/python -m PyInstaller bloch_gui.spec --noconfirm

Run the packaged application with ./dist/BlochSimulator on macOS/Linux or dist\\BlochSimulator.exe on Windows.

Runtime data and exports:

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

Project 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

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 that the .so or .pyd file is in the expected package 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. As of July 2026, the original source is unfortunately unavailable. A Python adaptation of the code is available 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

License

This project is licensed under the GNU General Public License v3.0. You may copy, distribute, and modify the software under the terms of GPLv3. Modified versions distributed to others must also be licensed under GPLv3 and include the corresponding source code.

Contact

Luca Nagel

Download files

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

Source Distribution

blochsimulator-2.5.0.tar.gz (1.2 MB view details)

Uploaded Source

Built Distributions

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

blochsimulator-2.5.0-cp314-cp314-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.14Windows x86-64

blochsimulator-2.5.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

blochsimulator-2.5.0-cp314-cp314-macosx_14_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.14macOS 14.0+ ARM64

blochsimulator-2.5.0-cp313-cp313-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.13Windows x86-64

blochsimulator-2.5.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (2.4 MB view details)

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

blochsimulator-2.5.0-cp313-cp313-macosx_14_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.13macOS 14.0+ ARM64

blochsimulator-2.5.0-cp312-cp312-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.12Windows x86-64

blochsimulator-2.5.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (2.4 MB view details)

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

blochsimulator-2.5.0-cp312-cp312-macosx_14_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

blochsimulator-2.5.0-cp311-cp311-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.11Windows x86-64

blochsimulator-2.5.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (2.5 MB view details)

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

blochsimulator-2.5.0-cp311-cp311-macosx_14_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

blochsimulator-2.5.0-cp310-cp310-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.10Windows x86-64

blochsimulator-2.5.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (2.4 MB view details)

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

blochsimulator-2.5.0-cp310-cp310-macosx_14_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

blochsimulator-2.5.0-cp39-cp39-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.9Windows x86-64

blochsimulator-2.5.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

blochsimulator-2.5.0-cp39-cp39-macosx_14_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.9macOS 14.0+ ARM64

File details

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

File metadata

  • Download URL: blochsimulator-2.5.0.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for blochsimulator-2.5.0.tar.gz
Algorithm Hash digest
SHA256 284929ae6ba2a0eb04553a8be00bb2e89564813def34c7145e30488a6b559d5f
MD5 de3d7084c07323922c5263d93710d412
BLAKE2b-256 1d586b6daea2e4ecc412f4166d9803d1979f262f08bd09114852cf4a6a4ae4cb

See more details on using hashes here.

File details

Details for the file blochsimulator-2.5.0-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 948d208b10e3b284df330ef2df3f21d6001bf1c27652cc6d661fc9d4a063e509
MD5 ec334d9234f59f0be5196e1fc56d1f39
BLAKE2b-256 b78b7e4a41468e161535973757c823041cb2370d140bb34565c629002b39e912

See more details on using hashes here.

File details

Details for the file blochsimulator-2.5.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a6a77fe5e006c6a1c87c2325cca135d49da300db9f08d5e4a0c5958162532461
MD5 838e68c74c3bed4f9989e0cba9e6d749
BLAKE2b-256 1487a3b2061c9603434b97ad530225d62e3156ab5ba105172075aae5ee396c4c

See more details on using hashes here.

File details

Details for the file blochsimulator-2.5.0-cp314-cp314-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp314-cp314-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 5ca0815019b2f4220ecb4e72aa2eae6160d56b4551ca391c41f4b79ca63cacb6
MD5 67575cc08471e9fa5532cd387e1b31ad
BLAKE2b-256 c6908ff3b30114ba8abd0e2573d846dd04310040d5fdc6a0f0400f80e0dc91b8

See more details on using hashes here.

File details

Details for the file blochsimulator-2.5.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 bf85d1b231574aa85e3797914fbdab7a09cd0c67f839d8318a51574e8389521f
MD5 46bb0e85332adf4fbf780192a75a4059
BLAKE2b-256 90ea5f0916ac63032de9f93514b5a368e2f91bf9838183d499285915a66e7318

See more details on using hashes here.

File details

Details for the file blochsimulator-2.5.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 784b55889316fc404a50962d81b1f7f9e98af31ff659a4398c18537dd35357e4
MD5 46e5318d0c3e8293880feb744a6e4e31
BLAKE2b-256 835b4d193c6767aa6eda9aedb87e741d985f7f4c7523fe915f24d4f6d76c450a

See more details on using hashes here.

File details

Details for the file blochsimulator-2.5.0-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 8dc993badf7d3dc4a6d1811cfca1951a1ff1a8dbd6d4b55da640ae4c572a3578
MD5 bdd58632b1102dedd809ec63604a6821
BLAKE2b-256 25852f9649cecc4c94a9d682147a88a55be87590a3bdadb9b7a39cecf084ffbe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 aae73ce6d5145ed1da11f9c398371818bc0df2d033178455f946f8d0c7168aff
MD5 8cc7e5ac1529d7b0973c70fa88d1a37a
BLAKE2b-256 6ef1d721c44ea805612c355e5ae2eb22489f08d6a19c6a628b6251ba0dee2e5a

See more details on using hashes here.

File details

Details for the file blochsimulator-2.5.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1d68dfc4c87f348dbe540127c16143aacc8578d6f47418bc87993596fcc1783b
MD5 f328c636d693581fcb1554c8eaf50300
BLAKE2b-256 3863ab9ef23bc6ff4ad038dc4cdbdc03b9eed975b0d4e2b065170fc5f686b341

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 454a73bb99499dc8f3775dab9992445ac2749c09880a78260df0296460318264
MD5 8bec87d709fb01859ad1a22daa6753b7
BLAKE2b-256 bfc20f70fdb188c7bf83d3fffc3455dc9c9164938fb7293bdcca4914197abda7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 801d97526c5d58dedb3d3bbbfdcc48866e4e8707778d1d16ed67b46869a554bd
MD5 280a8970b46532f31eee748fd57b7aa2
BLAKE2b-256 0d8021638549a31f9db935e404b84fdda22e3d691faa45f8968b664ddad3be53

See more details on using hashes here.

File details

Details for the file blochsimulator-2.5.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 28526130ac3e9d3654353e98757a05aa9f83f7800c63ef79543f25d50fbc2bc0
MD5 a01539bd469202c845ff4f1ea2f9194e
BLAKE2b-256 805d8a7599cd9c249d4e391b0b78cf8842614fad0717d60f6fbc98fa101bc026

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 661e2e3637003490e6f530ce38173b4800bc78e6659d1093347e40c27c4df27e
MD5 061ac6089b525fca4814d59d76529b71
BLAKE2b-256 3e44ed0ac3fead55650cb30438b7318b30ade55262fe5108993dd4cc8d2f23e8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f901a7688ffd4a0402f52d09870536b78ffa4546aff05b042fae2e026dcbb17b
MD5 8c1b8004d33126af612ce24b5174bc01
BLAKE2b-256 9770b77f14b813a3633ba70a4d6d46bbb1a2132d51dfcb91ff123dfef00ce905

See more details on using hashes here.

File details

Details for the file blochsimulator-2.5.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 772c90f69c141042a35da6e45ffc17e25f093210ec88e8ae50fa0435191c1076
MD5 d2296c5c3343aac0736baab287d79e74
BLAKE2b-256 4421219c50d7e4a024cebfcd616c6487021c1fbabfa8d44e732d84bc4e70b713

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 dabe6dd7cdcb4ffae48108a167181d14654e9b93ca170313bd8ff5ae7a99eb19
MD5 68af4eaf33ed68ada59af4c73cf40336
BLAKE2b-256 47bd2d8f7a6a958cd53a5bf1f1c63ab3c3154e8de25070ea38d5b67064a274be

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 628dd207256dbe447438af6fb6128bc26e4377ddfcbd3e14438d033c8a9e75a4
MD5 2fa80d561a25c5530afdb99f3e11874b
BLAKE2b-256 a6903db0c5f0e299f5ec9ec6691ecc582881aaac5bc20a64a142337d4ae6e8b1

See more details on using hashes here.

File details

Details for the file blochsimulator-2.5.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 24db1720bb0da8698ac0a3fe0b7c4c47a8f6cf2d898f8215825e5f9a884a0619
MD5 9e7ea8606b417cc7768e7de6dccff032
BLAKE2b-256 27768e99439c0cb5ded56294663298a01ad73e3e4eb0c3a8036f975148b194c1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for blochsimulator-2.5.0-cp39-cp39-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 d2fffdae0c83c34cfc7458f6ddd9d0a318db91b3e65c1726fb56c117d86ce367
MD5 d6afb237b0e2ba0889c5f7274ccca9ac
BLAKE2b-256 939744c4c77d935ee1b6969a8e1528df6ed4c2b88fe8b2777277462ad4bb9410

See more details on using hashes here.

Release history Release notifications | RSS feed

2.6.4

19 files

2.6.3

19 files

2.6.2

19 files

2.6.0

19 files

This release

2.5.0 This release

19 files

2.4.0

19 files

2.3.0

19 files

2.1.2

19 files

2.1.1

19 files

2.0.0

19 files

1.1.0

21 files

1.0.15

21 files

1.0.13

21 files

1.0.12

21 files

1.0.11

21 files

1.0.10

21 files

1.0.9

21 files

1.0.8

21 files

1.0.7

21 files

1.0.6

30 files

1.0.5

30 files

1.0.4

30 files

1.0.3

30 files

1.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page