What's Changed
This release includes new interface improvements, updates to reach functional and testing parity with k-Wave v1.4.0, improved documentation, performance improvements, and fixes to k-Wave-python. We are happy to say that this release was also supported by new community contributors including djps, bvale1 , talg2324! Thanks to everyone for their work and support. We hope this release accelerates your work and look forward to hearing from you.
⚠️ This release contains breaking changes ⚠️
Interface refactoring
* Refactor kSpaceFirstOrder inputs by faridyagubbayli in https://github.com/waltsims/k-wave-python/pull/107
* Replace Array class with numpy-based Vector class by faridyagubbayli in https://github.com/waltsims/k-wave-python/pull/118
* Vectorize variables by faridyagubbayli in https://github.com/waltsims/k-wave-python/pull/124
k-Wave v1.4.0 changes
This release extends functional and testing coverage to k-Wave v1.4.0 MATLAB release. This includes migrating matlab functions to k-Wave-python and testing for correctness. These include:
* Python implementation of `makeCartRect` by faridyagubbayli in https://github.com/waltsims/k-wave-python/pull/126
* Add trim_zeros function and test by waltsims in https://github.com/waltsims/k-wave-python/pull/128
* Python implementation of `trimCartPoints` by faridyagubbayli in https://github.com/waltsims/k-wave-python/pull/134
* New funcs: get_affine_matrix() and compute_linear_transform() by faridyagubbayli in https://github.com/waltsims/k-wave-python/pull/146
* Update fwhm return values for v1.4.0 by waltsims in https://github.com/waltsims/k-wave-python/pull/148
* Add makeCartArc and tests by waltsims in https://github.com/waltsims/k-wave-python/pull/149
* Add get_delta_BLI and test by waltsims in https://github.com/waltsims/k-wave-python/pull/150
* Update focus_bowl_oneil to return complex axial pressure by waltsims in https://github.com/waltsims/k-wave-python/pull/154
* MATLAB data collector for testing kWaveArray by faridyagubbayli in https://github.com/waltsims/k-wave-python/pull/161
* Add make_cart_bowl by waltsims in https://github.com/waltsims/k-wave-python/pull/164
* Add make_cart_disc by waltsims in https://github.com/waltsims/k-wave-python/pull/165
* Add make_cart_spherical_segment and test by waltsims in https://github.com/waltsims/k-wave-python/pull/166
* Python implementation of `kWaveArray` & `get_off_grid_points(...)` by faridyagubbayli in https://github.com/waltsims/k-wave-python/pull/168
* Update pytest.yml to run on PRs as well by waltsims in https://github.com/waltsims/k-wave-python/pull/197
* Add custom element by bvale1 in https://github.com/waltsims/k-wave-python/pull/212
* Test nearest neighbor mode of resize function by faridyagubbayli in https://github.com/waltsims/k-wave-python/pull/216
Documentation updates
We have updated and extended the documentation of k-Wave by porting the documentation to readthedocs.
* rename pages to publish_pages by waltsims in https://github.com/waltsims/k-wave-python/pull/119
* Update README.md to fix broken docs link by waltsims in https://github.com/waltsims/k-wave-python/pull/123
* Create ruff.yml by waltsims in https://github.com/waltsims/k-wave-python/pull/131
* Migrate documentation to Readthedocs by waltsims in https://github.com/waltsims/k-wave-python/pull/152
* Clean up documentation by waltsims in https://github.com/waltsims/k-wave-python/pull/158
* Update README.md by waltsims in https://github.com/waltsims/k-wave-python/pull/170
More examples 🍾
* Example script refactor and added testing by waltsims in https://github.com/waltsims/k-wave-python/pull/108
* Examples/at linear array transducer by waltsims in https://github.com/waltsims/k-wave-python/pull/174
* Example of karray source by waltsims in https://github.com/waltsims/k-wave-python/pull/193
Performance improvements
* Auto chunking for HDF5 by djps in https://github.com/waltsims/k-wave-python/pull/222
* Accelerate computations by djps in https://github.com/waltsims/k-wave-python/pull/223
Fixes
* Update conversion.py - fix ordering in tolStar by djps in https://github.com/waltsims/k-wave-python/pull/172
* Clean up extra GOLDEN_ANGLES by waltsims in https://github.com/waltsims/k-wave-python/pull/178
* Update kwave_array.py removing discretization by djps in https://github.com/waltsims/k-wave-python/pull/195
* lower library verbosity by talg2324 in https://github.com/waltsims/k-wave-python/pull/196
* Update workflow checkout to v4 by waltsims in https://github.com/waltsims/k-wave-python/pull/200
* Update filters.py by djps in https://github.com/waltsims/k-wave-python/pull/202
* Update save_to_disk_func.py - fix dtype error by djps in https://github.com/waltsims/k-wave-python/pull/204
* fix typo by djps in https://github.com/waltsims/k-wave-python/pull/214
Dependency updates
* Bump sphinx-toolbox from 3.2.0 to 3.4.0 by dependabot in https://github.com/waltsims/k-wave-python/pull/99
* Bump deepdiff from 5.2.3 to 6.2.3 by dependabot in https://github.com/waltsims/k-wave-python/pull/87
* Bump gdown from 4.6.0 to 4.6.4 by dependabot in https://github.com/waltsims/k-wave-python/pull/110
* Bump k-Wave test version to v1.4.0 by waltsims in https://github.com/waltsims/k-wave-python/pull/116
* Bump m2r2 from 0.3.2 to 0.3.3.post2 by dependabot in https://github.com/waltsims/k-wave-python/pull/98
* Bump matplotlib from 3.6.3 to 3.7.1 by dependabot in https://github.com/waltsims/k-wave-python/pull/114
* Bump sphinx-copybutton from 0.5.1 to 0.5.2 by dependabot in https://github.com/waltsims/k-wave-python/pull/121
* Bump opencv-python from 4.7.0.68 to 4.7.0.72 by dependabot in https://github.com/waltsims/k-wave-python/pull/112
* Bump scipy from 1.7.3 to 1.10.1 by dependabot in https://github.com/waltsims/k-wave-python/pull/109
* Bump h5py from 3.6.0 to 3.8.0 by dependabot in https://github.com/waltsims/k-wave-python/pull/113
* Bump gdown from 4.6.4 to 4.7.1 by dependabot in https://github.com/waltsims/k-wave-python/pull/143
* Bump scikit-image from 0.19.3 to 0.21.0 by dependabot in https://github.com/waltsims/k-wave-python/pull/147
* Bump deepdiff from 6.2.3 to 6.3.1 by dependabot in https://github.com/waltsims/k-wave-python/pull/169
* Bump matplotlib from 3.7.1 to 3.7.2 by dependabot in https://github.com/waltsims/k-wave-python/pull/179
* Bump furo from 2022.12.7 to 2023.8.19 by dependabot in https://github.com/waltsims/k-wave-python/pull/189
* Bump h5py from 3.8.0 to 3.9.0 by dependabot in https://github.com/waltsims/k-wave-python/pull/186
* Bump opencv-python from 4.7.0.72 to 4.8.0.76 by dependabot in https://github.com/waltsims/k-wave-python/pull/198
New Contributors
* djps made their first contribution in https://github.com/waltsims/k-wave-python/pull/172
* talg2324 made their first contribution in https://github.com/waltsims/k-wave-python/pull/196
* bvale1 made their first contribution in https://github.com/waltsims/k-wave-python/pull/212
**Full Changelog**: https://github.com/waltsims/k-wave-python/compare/v0.2.1...v0.3.0