k-Wave 是一个用于 MATLAB 和 C++ 的免费开源声学工具箱,由 Bradley Treeby 和 Ben Cox(伦敦大学学院)以及 Jiri Jaros(布尔诺科技大学)开发。该软件专为复杂和组织真实介质中的时域声学和超声模拟而设计。仿真功能基于 k 空间伪谱方法,既快速又易于使用。工具箱包括:
声波传播的高级时域模型,可以解释非线性、声学异质性和幂律吸收(1D、2D 和 3D)
能够模拟压力和速度源,包括光声源以及诊断和治疗超声换能器
能够指定带有方向元素的任意检测表面,并可选择记录声压、粒子速度和声强度
优化的 C++ 代码版本,可非常大限度地提高大型模拟的计算性能
使用正向模型作为具有任意测量表面的光声层析成像的灵活时间反转图像重建算法的选项
一种快速、一步、光声图像重建算法,用于记录在线性 (2D) 或平面 (3D) 测量表面上的数据
用于调整可视化和性能的可选输入参数,包括用于生成电影和在图形处理单元 (GPU) 上运行模拟的选项
详尽的用户手册和许多简单易懂的教程示例来说明工具箱的功能
k-Plan经颅聚焦超声刺激仿真模拟规划软件是基于此软件算法开发的一款针对经颅聚焦超声刺激应用优化的商业软件,提供更加强大的功能。
Overview
k-Wave 是一个开源 MATLAB 工具箱,专为 1D、2D 或 3D 传播声波的时域仿真而设计 [1]。该工具箱具有广泛的功能,但其核心是一个先进的数值模型,可以解释线性和非线性波传播、异质材料参数的任意分布以及幂律吸声。
数值模型基于三个耦合的一阶偏微分方程的解,这些方程等价于 Westervelt 方程的广义形式 [2]。使用 k 空间伪谱方法求解方程,其中使用傅立叶配置方案计算空间梯度,使用 k 空间校正有限差分方案计算时间梯度。时间方案在均匀无损介质中线性波传播的限制是精确的,并且在更一般的情况下显着减少数值色散。
使用基于分数拉普拉斯算子 [3] 的线性积分微分算子来计算幂律声学吸收。分场完美匹配层 (PML) 用于吸收计算域边缘的波。与基于时域有限差分 (FDTD) 方案的模型相比,k-Wave 中使用的数值模型的主要优势在于精确模拟所需的空间和时间网格点更少。这意味着模型运行得更快并且使用更少的内存。在 k-Wave 用户手册和下面的参考资料中给出了该模型的详细描述。
[1] B. E. Treeby and B. T. Cox, "k-Wave: MATLAB toolbox for the simulation and reconstruction of photoacoustic wave-fields," J. Biomed. Opt., vol. 15, no. 2, p. 021314, 2010. download pdf
[2] B. E. Treeby, J. Jaros, A. P. Rendell, and B. T. Cox, "Modeling nonlinear ultrasound propagation in heterogeneous media with power law absorption using a k-space pseudospectral method," J. Acoust. Soc. Am., vol. 131, no. 6, pp. 4324-4336, 2012. download pdf
[3] B. E. Treeby and B. T. Cox, "Modeling power law absorption and dispersion for acoustic propagation using the fractional Laplacian," J. Acoust. Soc. Am., vol. 127, no. 5, pp. 2741-2748, 2010. download pdf (see also erratum)