Skip to main content

k-wave-python

Support Documentation Status codecov

A Python implementation of k-Wave — an acoustics toolbox for time-domain simulation of acoustic wave fields. Includes a pure NumPy/CuPy solver (backend="python") and an interface to the pre-compiled k-Wave C++ binaries (backend="cpp") with NVIDIA GPU support (sm 5.0–9.0a).

Mission

Increase the accessibility and reproducibility of k-Wave simulations for medical imaging, algorithmic prototyping, and testing.

Getting started

A collection of examples covers common simulation scenarios. Run any example locally:

uv run examples/ivp_homogeneous_medium.py

No GPU required — all examples run on CPU with NumPy.

Installation

Using uv (recommended):

uv add k-wave-python

Or with pip:

pip install k-wave-python

Development

Development instructions can be found here.

Related Projects

  1. k-Wave: A MATLAB toolbox for the time-domain simulation of acoustic wave fields.
  2. j-wave: Differentiable acoustic simulations in JAX.
  3. ADSeismic.jl: a finite difference acoustic simulator with support for AD and JIT compilation in Julia.
  4. stride: a general optimisation framework for medical ultrasound tomography.

Documentation

The documentation for k-wave-python can be found here.

Citation

@software{k-Wave-Python,
author = {Yagubbayli, Farid and Sinden, David and Simson, Walter},
license = {GPL-3.0},
title = {{k-Wave-Python}},
url = {https://github.com/waltsims/k-wave-python}
}

Contact

e-mail walter.a.simson@gmail.com.

Metadata

Release files for k-Wave-python 0.6.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for k-Wave-python 0.6.2
File Size Uploaded
k_wave_python-0.6.2.tar.gz 345.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for k-Wave-python 0.6.2
File Interpreter ABI Platform
k_wave_python-0.6.2-py3-none-any.whl Python 3 none any Details

Total release size: 570.3 kB

Release files / k_wave_python-0.6.2.tar.gz

Download URL k_wave_python-0.6.2.tar.gz
Size 345.7 kB
Tags Source
SHA-256 checksum
How to use checksums
c5ef30d0abeb02e83f9882d3e77c20c86d5bf3e3164e621cf50874a16099d62f
BLAKE2b-256 checksum
How to use checksums
13b6049e067cf5b9ce5ede9f8b274ed81570e7bd4ab7a72ec82e8b43cae0d472
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.9

Release files / k_wave_python-0.6.2-py3-none-any.whl

Download URL k_wave_python-0.6.2-py3-none-any.whl
Size 224.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
618e417cc939c0135fe45972db52bbd92342b880f54744957ac6d03eb1ab8d6d
BLAKE2b-256 checksum
How to use checksums
c3b8f3b1b27b65a98dacde3f653e40b429237823583ea75e4658ebd584f21469
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.9
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