k-Wave-python 0.6.0__tar.gz → 0.6.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.claude/settings.local.json +45 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.git +1 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/CONTRIBUTING.md +29 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/ISSUE_TEMPLATE/bug_report.md +31 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/ISSUE_TEMPLATE/code_enhancement.md +28 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/ISSUE_TEMPLATE/config.yml +1 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/ISSUE_TEMPLATE/example.md +17 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/codecov.yml +5 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/dependabot.yml +11 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/workflows/codespell.yml +25 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/workflows/link-check.yml +35 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/workflows/pytest.yml +124 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/workflows/ruff.yml +9 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/workflows/run-examples.yml +56 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/workflows/test_example.yml +29 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/workflows/test_optional_dependencies.yml +29 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/workflows/test_pages.yml +18 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/Makefile +20 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/docs/README.md +1 -1
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/conf.py +101 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/development/development_environment.rst +187 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/examples_guide.rst +179 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/get_started/contrib.rst +4 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/get_started/first_simulation.rst +215 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/get_started/grid_overview.rst +25 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/get_started/legacy_licenses/gpl-3.0.rst +674 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/get_started/legacy_licenses/mit.rst +17 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/get_started/license.rst +30 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/get_started/medium_overview.rst +48 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/get_started/new_api.rst +137 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/get_started/sensor_overview.rst +66 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/get_started/source_overview.rst +52 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/index.rst +62 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.data.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.enums.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.executor.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kWaveSimulation.rst +9 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kWaveSimulation_helper.create_absorption_variables.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kWaveSimulation_helper.display_simulation_params.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kWaveSimulation_helper.expand_grid_matrices.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kWaveSimulation_helper.retract_transducer_grid_size.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kWaveSimulation_helper.rst +26 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kWaveSimulation_helper.save_to_disk_func.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kWaveSimulation_helper.scale_source_terms_func.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kWaveSimulation_helper.set_sound_speed_ref.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kgrid.rst +9 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kmedium.rst +9 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.ksensor.rst +9 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.ksource.rst +9 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kspaceFirstOrder.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kspaceFirstOrder2D.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kspaceFirstOrder3D.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.kspaceFirstOrderAS.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.ktransducer.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.options.rst +9 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.reconstruction.beamform.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.reconstruction.converter.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.reconstruction.rst +21 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.reconstruction.shifted_transform.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.reconstruction.tools.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.recorder.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.rst +42 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.checks.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.colormap.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.conversion.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.data.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.dotdictionary.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.filters.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.interp.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.io.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.mapgen.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.math.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.matrix.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.pml.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.rst +31 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.signals.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/kwave.utils.tictoc.rst +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/make.bat +35 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/reconstruction/index.rst +19 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/docs/reconstruction/time_reversal.rst +80 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/README.md +57 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_array_as_sensor/README.md +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_array_as_sensor/at_array_as_sensor.ipynb +299 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_array_as_sensor/at_array_as_sensor.py +166 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_array_as_source/README.md +9 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_array_as_source/at_array_as_source.ipynb +262 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_array_as_source/at_array_as_source.py +161 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_circular_piston_3D/README.md +5 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_circular_piston_3D/at_circular_piston_3D.ipynb +455 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_circular_piston_3D/at_circular_piston_3D.py +207 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_circular_piston_AS/README.md +5 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_circular_piston_AS/at_circular_piston_AS.ipynb +383 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_circular_piston_AS/at_circular_piston_AS.py +233 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_focused_annular_array_3D/README.md +5 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_focused_annular_array_3D/at_focused_annular_array_3D.ipynb +452 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_focused_annular_array_3D/at_focused_annular_array_3D.py +214 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_focused_bowl_3D/README.md +5 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_focused_bowl_3D/at_focused_bowl_3D.ipynb +451 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_focused_bowl_3D/at_focused_bowl_3D.py +233 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_focused_bowl_AS/README.md +5 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_focused_bowl_AS/at_focused_bowl_AS.ipynb +384 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_focused_bowl_AS/at_focused_bowl_AS.py +236 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_linear_array_transducer/README.md +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_linear_array_transducer/at_linear_array_transducer.ipynb +201 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/at_linear_array_transducer/at_linear_array_transducer.py +108 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/checkpointing/README.md +5 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/checkpointing/checkpoint.py +107 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/ivp_1D_simulation.py +81 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/ivp_photoacoustic_waveforms/README.md +16 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/ivp_photoacoustic_waveforms/ivp_photoacoustic_waveforms.ipynb +284 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/ivp_photoacoustic_waveforms/ivp_photoacoustic_waveforms.py +164 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/na_controlling_the_pml/README.md +21 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/na_controlling_the_pml/modified_matlab_example.m +68 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/na_controlling_the_pml/na_controlling_the_pml.ipynb +232 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/new_api_ivp_2D.py +39 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/new_api_transducer_3D.py +48 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/pr_2D_FFT_line_sensor/README.md +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/pr_2D_FFT_line_sensor/pr_2D_FFT_line_sensor.ipynb +298 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/pr_2D_FFT_line_sensor/pr_2D_FFT_line_sensor.py +154 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/pr_2D_TR_line_sensor/README.md +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/pr_2D_TR_line_sensor/pr_2D_TR_line_sensor.ipynb +335 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/pr_2D_TR_line_sensor/pr_2D_TR_line_sensor.py +182 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/pr_3D_FFT_planar_sensor/README.md +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/pr_3D_FFT_planar_sensor/pr_3D_FFT_planar_sensor.ipynb +313 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/pr_3D_FFT_planar_sensor/pr_3D_FFT_planar_sensor.py +205 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/pr_3D_TR_planar_sensor/README.md +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/pr_3D_TR_planar_sensor/pr_3D_TR_planar_sensor.ipynb +307 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/pr_3D_TR_planar_sensor/pr_3D_TR_planar_sensor.py +214 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/sd_directivity_modelling_2D/README.md +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/sd_directivity_modelling_2D/sd_directivity_modelling_2D.ipynb +244 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/sd_directivity_modelling_2D/sd_directivity_modelling_2D.py +126 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/sd_focussed_detector_2D/README.md +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/sd_focussed_detector_2D/sd_focussed_detector_2D.ipynb +207 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/sd_focussed_detector_2D/sd_focussed_detector_2D.py +107 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/sd_focussed_detector_3D/README.md +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/sd_focussed_detector_3D/sd_focussed_detector_3D.ipynb +275 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/sd_focussed_detector_3D/sd_focussed_detector_3D.py +132 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/unified_entry_point_demo.py +85 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/us_beam_patterns/README.md +7 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/us_beam_patterns/us_beam_patterns.ipynb +345 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/us_beam_patterns/us_beam_patterns.py +272 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/us_bmode_linear_transducer/README.md +8 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/us_bmode_linear_transducer/example_utils.py +16 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/us_bmode_linear_transducer/us_bmode_linear_transducer.ipynb +478 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/us_bmode_linear_transducer/us_bmode_linear_transducer.py +286 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/us_bmode_phased_array/README.md +9 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/us_bmode_phased_array/us_bmode_phased_array.ipynb +468 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/us_bmode_phased_array/us_bmode_phased_array.py +277 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/us_defining_transducer/README.md +8 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/us_defining_transducer/us_defining_transducer.ipynb +271 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/examples/us_defining_transducer/us_defining_transducer.py +148 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/kwave/bin/darwin/kspaceFirstOrder-OMP +0 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/kwave/cli/__init__.py +9 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/kwave/cli/commands/phantom.py +132 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/kwave/cli/commands/plan.py +77 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/kwave/cli/commands/run.py +88 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/kwave/cli/commands/sensor.py +40 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/kwave/cli/commands/session_cmd.py +39 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/kwave/cli/commands/source.py +43 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/kwave/cli/main.py +34 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/kwave/cli/schema.py +98 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/kwave/cli/session.py +226 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kspaceFirstOrder.py +33 -4
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/solvers/cpp_simulation.py +49 -1
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/solvers/kspace_solver.py +72 -23
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/kwave/utils/__init__.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/conversion.py +22 -10
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/kwave_array.py +49 -26
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/plans/release-strategy.md +435 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/pyproject.toml +5 -1
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/EXAMPLE_source_two.bmp +0 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/__init__.py +8 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/diff_utils.py +32 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/h5_summary.py +104 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/integration/__init__.py +0 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/integration/conftest.py +77 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/integration/test_ivp_1D.py +44 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/integration/test_ivp_2D.py +46 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/integration/test_parity_2D.py +122 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/integration/test_photoacoustic.py +71 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/integration/test_stubs.py +81 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/+private_kwave_functions/tolStar.m +231 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/+utils/TestRecorder.m +42 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/+utils/rand_vector_in_range.m +3 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_FocusAnnulusONeil.m +32 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_FocusBowlONeil.m +33 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_angularSpectrum.m +24 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_angularSpectrumCW.m +25 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_at_linear_array_transducer.m +131 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_attenComp.m +24 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_brenner.m +13 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_cart2grid.m +75 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_checkStability.m +50 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_computeLinearTransform.m +25 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_createCWSignals.m +22 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_example_ivp_1D.m +35 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_example_ivp_2D.m +33 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_example_parity_2D.m +58 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_example_photoacoustic.m +50 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_expandMatrix.m +53 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_fourierShift.m +40 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_gaussian.m +12 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_gaussianFilter.m +23 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_getAffineMatrix.m +25 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_getColorMap.m +13 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_getWin.m +92 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_get_delta_BLI.m +36 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_gradientSpect.m +19 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_hounsfield2density.m +9 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_interpCartData.m +76 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_kWaveArray.m +175 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_kWaveGrid.m +97 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeArc.m +36 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeBall.m +23 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeBowl.m +23 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeCartArc.m +23 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeCartBowl.m +22 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeCartCircle.m +25 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeCartDisc.m +22 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeCartRect.m +21 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeCartSphere.m +22 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeCartSphericalSegment.m +60 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeCircle.m +31 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeDisc.m +22 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeLine.m +26 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeMultiArc.m +20 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeMultiBowl.m +22 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeSphere.m +21 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_makeSphericalSection.m +20 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_maxND.m +24 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_minND.m +28 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_normvar.m +13 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_reorderBinarySensorData.m +12 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_reorderSensorData.m +20 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_resize.m +29 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_revolve2D.m +21 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_rotation_matrices.m +34 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_scaleSI.m +25 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_scaleTime.m +23 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_scanConversion.m +23 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_smooth.m +9 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_tenenbaum.m +14 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_tolStar.m +63 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_toneBurst.m +27 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_trimCartPoints.m +41 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_unmaskSensorData.m +63 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_writeAttributes.m +11 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_writeFlags.m +15 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_writeGrid.m +14 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/matlab_collectors/collect_writeMatrix.m +12 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/__init__.py +0 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/angularSpectrumCW_test.py +24 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/angularSpectrum_test.py +27 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/attenComp_test.py +29 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/cart2grid_test.py +63 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/computeLinearTransform_test.py +39 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/create_cw_signals_test.py +32 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/expandMatrix_test.py +34 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/focusBowlONeil_test.py +43 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/focusedAnnulusONeil_test.py +140 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/fourierShift_test.py +40 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/gaussianFilter_test.py +24 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/gaussian_test.py +17 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/getAffineMatrix_test.py +22 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/getColorMap_test.py +35 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/getDeltaBLI_test.py +26 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/getWin_test.py +48 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/h5io_test.py +87 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/hounsfield2density.py +21 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/kWaveArray_test.py +180 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/kWaveGrid_test.py +78 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeArc_test.py +38 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeBall_test.py +36 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeBowl_test.py +43 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeCartArc_test.py +47 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeCartBowl_test.py +27 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeCartCircle_test.py +41 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeCartRect_test.py +26 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeCartSphere_test.py +35 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeCartSphericalSegment_test.py +63 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeCircle_test.py +35 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeDisc_test.py +29 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeLine_test.py +45 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeMultiArc_test.py +30 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeMultiBowl_test.py +33 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeSphere_test.py +29 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/makeSphericalSection_test.py +37 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/maxND_test.py +30 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/minND_test.py +25 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/phase_shift_interpolate_test.py +65 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/reorderBinarySensorData_test.py +26 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/reorderSensorData_test.py +39 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/revolve2D_test.py +30 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/rotation_matrices_test.py +37 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/scaleSI_test.py +44 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/scaleTime_test.py +29 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/scanConversion_test.py +30 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/sharpness_test.py +64 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/smooth_test.py +18 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/test_check_stability.py +83 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/test_interpcartdata.py +70 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/test_linear_array_transducer.py +63 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/test_make_cart_disc.py +25 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/test_resize.py +30 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/tolStart_test.py +52 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/toneBurst_test.py +58 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/trimCartPoints_test.py +28 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/unmaskSensorData_test.py +44 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/utils/__init__.py +0 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/utils/check_equality.py +146 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/python_testers/utils/record_reader.py +28 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/matlab_test_data_collectors/run_all_collectors.m +38 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_cpp_io_in_parts.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_cpp_running_simulations.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_ivp_3D_simulation.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_ivp_axisymmetric_simulation.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_ivp_binary_sensor_mask.json +792 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_ivp_comparison_modelling_functions/input_1.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_ivp_comparison_modelling_functions/input_2.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_ivp_heterogeneous_medium.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_ivp_homogeneous_medium.json +792 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_ivp_loading_external_image.json +792 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_ivp_opposing_corners_sensor_mask.json +792 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_ivp_photoacoustic_waveforms/input_1.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_ivp_photoacoustic_waveforms/input_2.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_ivp_sensor_frequency_response/input_1.json +792 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_ivp_sensor_frequency_response/input_2.json +792 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_na_controlling_the_PML/input_1.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_na_controlling_the_PML/input_2.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_na_controlling_the_PML/input_3.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_na_controlling_the_PML/input_4.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_na_optimising_performance/input_1.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_na_optimising_performance/input_2.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_na_optimising_performance/input_3.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_pr_2D_FFT_line_sensor.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_pr_2D_TR_circular_sensor.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_pr_2D_TR_directional_sensors/input_1.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_pr_2D_TR_directional_sensors/input_2.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_pr_2D_TR_line_sensor.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_pr_3D_FFT_planar_sensor.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directional_array_elements.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_2D/input_1.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_2D/input_10.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_2D/input_11.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_2D/input_2.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_2D/input_3.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_2D/input_4.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_2D/input_5.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_2D/input_6.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_2D/input_7.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_2D/input_8.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_2D/input_9.json +812 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_3D/input_1.json +872 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_3D/input_10.json +872 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_3D/input_11.json +872 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_3D/input_2.json +872 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_3D/input_3.json +872 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_3D/input_4.json +872 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_3D/input_5.json +872 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_3D/input_6.json +872 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_3D/input_7.json +872 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_3D/input_8.json +872 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_directivity_modelling_3D/input_9.json +872 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_focussed_detector_2D.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_sd_sensor_directivity_2D.json +752 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_tvsp_3D_simulation.json +872 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_tvsp_doppler_effect.json +852 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_tvsp_homogeneous_medium_dipole.json +852 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_tvsp_homogeneous_medium_monopole.json +852 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_beam_patterns.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_1.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_10.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_11.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_12.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_13.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_14.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_15.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_16.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_17.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_18.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_19.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_2.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_20.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_21.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_22.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_23.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_24.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_25.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_26.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_27.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_28.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_29.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_3.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_30.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_31.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_32.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_33.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_34.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_35.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_36.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_37.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_38.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_39.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_4.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_40.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_41.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_42.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_43.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_44.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_45.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_46.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_47.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_48.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_49.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_5.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_50.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_51.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_52.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_53.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_54.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_55.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_56.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_57.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_58.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_59.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_6.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_60.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_61.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_62.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_63.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_64.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_65.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_66.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_67.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_68.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_69.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_7.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_70.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_71.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_72.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_73.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_74.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_75.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_76.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_77.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_78.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_79.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_8.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_80.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_81.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_82.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_83.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_84.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_85.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_86.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_87.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_88.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_89.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_9.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_90.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_91.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_92.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_93.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_94.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_95.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_linear_transducer/input_96.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_1.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_10.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_11.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_12.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_13.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_14.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_15.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_16.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_17.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_18.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_19.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_2.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_20.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_21.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_22.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_23.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_24.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_25.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_26.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_27.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_28.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_29.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_3.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_30.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_31.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_32.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_33.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_4.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_5.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_6.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_7.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_8.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_bmode_phased_array/input_9.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_defining_transducer.json +912 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/reference_outputs/out_us_transducer_as_sensor.json +932 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/setup_test.py +8 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test__init__.py +16 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_c_order.py +299 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_checks.py +143 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_cli/__init__.py +0 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_cli/conftest.py +45 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_cli/test_1d_ivp.py +133 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_cli/test_e2e.py +163 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_compat.py +88 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_cpp_io_in_parts.py +271 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_cpp_running_simulations.py +178 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_create_pixel_dim.py +64 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_display_simulation_params.py +81 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_element.py +74 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_executor.py +277 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_filterutils.py +168 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_ivp_3D_simulation.py +87 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_ivp_axisymmetric_karray_simulation.py +105 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_ivp_axisymmetric_simulation.py +74 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_ivp_binary_sensor_mask.py +71 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_ivp_comparison_modelling_functions.py +113 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_ivp_heterogeneous_medium.py +74 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_ivp_homogeneous_medium.py +69 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_ivp_loading_external_image.py +70 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_ivp_opposing_corners_sensor_mask.py +90 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_ivp_photoacoustic_waveforms.py +149 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_ivp_sensor_frequency_response.py +92 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_ksource.py +44 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_kspaceFirstOrder.py +70 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_kutils.py +309 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_math.py +160 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_misc.py +26 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_na_controlling_the_PML.py +123 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_na_optimising_performance.py +101 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_native_solver.py +353 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_pmlutils.py +150 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_pr_2D_FFT_line_sensor.py +93 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_pr_2D_TR_circular_sensor.py +85 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_pr_2D_TR_directional_sensors.py +113 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_pr_2D_TR_line_sensor.py +87 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_pr_3D_FFT_planar_sensor.py +84 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_reconstruction.py +243 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_sd_directional_array_elements.py +114 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_sd_directivity_modelling_2D.py +100 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_sd_directivity_modelling_3D.py +105 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_sd_focussed_detector_2D.py +66 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_sd_sensor_directivity_2D.py +95 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_sharpness_filters.py +101 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_simulation.py +126 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_simulation_execution_options.py +330 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_time_reversal.py +463 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_tvsp_3D_simulation.py +89 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_tvsp_doppler_effect.py +108 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_tvsp_homogeneous_medium_dipole.py +76 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_tvsp_homogeneous_medium_monopole.py +76 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_us_beam_patterns.py +189 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_us_bmode_linear_transducer.py +255 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_us_bmode_phased_array.py +233 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_us_defining_transducer.py +181 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_us_transducer_as_sensor.py +173 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_utils.py +420 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_validation.py +122 -0
- k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/tests/test_water.py +425 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/uv.lock +21 -5
- k_wave_python-0.6.1/.gitignore +47 -0
- k_wave_python-0.6.1/.pre-commit-config.yaml +39 -0
- k_wave_python-0.6.1/.readthedocs.yaml +14 -0
- k_wave_python-0.6.1/CITATION.cff +21 -0
- k_wave_python-0.6.1/Dockerfile +11 -0
- k_wave_python-0.6.1/LICENSE +165 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/PKG-INFO +24 -33
- k_wave_python-0.6.1/docs/README.md +66 -0
- k_wave_python-0.6.1/kwave/__init__.py +205 -0
- k_wave_python-0.6.1/kwave/compat.py +74 -0
- k_wave_python-0.6.1/kwave/data.py +121 -0
- k_wave_python-0.6.1/kwave/enums.py +22 -0
- k_wave_python-0.6.1/kwave/executor.py +150 -0
- k_wave_python-0.6.1/kwave/kWaveSimulation.py +1532 -0
- k_wave_python-0.6.1/kwave/kWaveSimulation_helper/__init__.py +7 -0
- k_wave_python-0.6.1/kwave/kWaveSimulation_helper/create_absorption_variables.py +130 -0
- k_wave_python-0.6.1/kwave/kWaveSimulation_helper/display_simulation_params.py +92 -0
- k_wave_python-0.6.1/kwave/kWaveSimulation_helper/expand_grid_matrices.py +317 -0
- k_wave_python-0.6.1/kwave/kWaveSimulation_helper/retract_transducer_grid_size.py +22 -0
- k_wave_python-0.6.1/kwave/kWaveSimulation_helper/save_to_disk_func.py +523 -0
- k_wave_python-0.6.1/kwave/kWaveSimulation_helper/scale_source_terms_func.py +395 -0
- k_wave_python-0.6.1/kwave/kWaveSimulation_helper/set_sound_speed_ref.py +91 -0
- k_wave_python-0.6.1/kwave/kgrid.py +701 -0
- k_wave_python-0.6.1/kwave/kmedium.py +232 -0
- k_wave_python-0.6.1/kwave/ksensor.py +142 -0
- k_wave_python-0.6.1/kwave/ksource.py +382 -0
- k_wave_python-0.6.1/kwave/kspaceFirstOrder.py +279 -0
- k_wave_python-0.6.1/kwave/kspaceFirstOrder2D.py +377 -0
- k_wave_python-0.6.1/kwave/kspaceFirstOrder3D.py +388 -0
- k_wave_python-0.6.1/kwave/kspaceFirstOrderAS.py +370 -0
- k_wave_python-0.6.1/kwave/kspaceLineRecon.py +128 -0
- k_wave_python-0.6.1/kwave/kspacePlaneRecon.py +132 -0
- k_wave_python-0.6.1/kwave/ktransducer.py +764 -0
- k_wave_python-0.6.1/kwave/options/__init__.py +11 -0
- k_wave_python-0.6.1/kwave/options/simulation_execution_options.py +337 -0
- k_wave_python-0.6.1/kwave/options/simulation_options.py +348 -0
- k_wave_python-0.6.1/kwave/reconstruction/__init__.py +11 -0
- k_wave_python-0.6.1/kwave/reconstruction/beamform.py +145 -0
- k_wave_python-0.6.1/kwave/reconstruction/time_reversal.py +150 -0
- k_wave_python-0.6.1/kwave/reconstruction/tools.py +65 -0
- k_wave_python-0.6.1/kwave/recorder.py +143 -0
- k_wave_python-0.6.1/kwave/solvers/__init__.py +7 -0
- k_wave_python-0.6.1/kwave/solvers/cpp_simulation.py +350 -0
- k_wave_python-0.6.1/kwave/solvers/kspace_solver.py +846 -0
- k_wave_python-0.6.1/kwave/solvers/native.py +30 -0
- k_wave_python-0.6.1/kwave/solvers/validation.py +108 -0
- k_wave_python-0.6.1/kwave/utils/__init__.py +0 -0
- k_wave_python-0.6.1/kwave/utils/angular_spectrum.py +389 -0
- k_wave_python-0.6.1/kwave/utils/angular_spectrum_cw.py +294 -0
- k_wave_python-0.6.1/kwave/utils/atten_comp.py +311 -0
- k_wave_python-0.6.1/kwave/utils/checks.py +297 -0
- k_wave_python-0.6.1/kwave/utils/colormap.py +93 -0
- k_wave_python-0.6.1/kwave/utils/conversion.py +518 -0
- k_wave_python-0.6.1/kwave/utils/data.py +208 -0
- k_wave_python-0.6.1/kwave/utils/dotdictionary.py +57 -0
- k_wave_python-0.6.1/kwave/utils/filters.py +615 -0
- k_wave_python-0.6.1/kwave/utils/interp.py +393 -0
- k_wave_python-0.6.1/kwave/utils/io.py +494 -0
- k_wave_python-0.6.1/kwave/utils/kwave_array.py +1009 -0
- k_wave_python-0.6.1/kwave/utils/mapgen.py +3113 -0
- k_wave_python-0.6.1/kwave/utils/math.py +467 -0
- k_wave_python-0.6.1/kwave/utils/matlab.py +165 -0
- k_wave_python-0.6.1/kwave/utils/matrix.py +438 -0
- k_wave_python-0.6.1/kwave/utils/plot.py +43 -0
- k_wave_python-0.6.1/kwave/utils/pml.py +159 -0
- k_wave_python-0.6.1/kwave/utils/sharpness_filters.py +126 -0
- k_wave_python-0.6.1/kwave/utils/signals.py +734 -0
- k_wave_python-0.6.1/kwave/utils/tictoc.py +44 -0
- k_wave_python-0.6.1/kwave/utils/typing.py +34 -0
- k_wave_python-0.6.1/make_docs.sh +4 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/plans/release-strategy.md +96 -74
- k_wave_python-0.6.1/pyproject.toml +128 -0
- k_wave_python-0.6.1/pytest.ini +7 -0
- k_wave_python-0.6.1/run_tests.sh +11 -0
- k_wave_python-0.6.1/uv.lock +2259 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/.claude/settings.local.json +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/.gitignore +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/.pre-commit-config.yaml +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/.readthedocs.yaml +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/CITATION.cff +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/Dockerfile +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/LICENSE +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/Makefile +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/__init__.py +0 -0
- {k_wave_python-0.6.0/kwave/utils → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/kwave/cli/commands}/__init__.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/compat.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/data.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/enums.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/executor.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kWaveSimulation.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kWaveSimulation_helper/__init__.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kWaveSimulation_helper/create_absorption_variables.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kWaveSimulation_helper/display_simulation_params.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kWaveSimulation_helper/expand_grid_matrices.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kWaveSimulation_helper/retract_transducer_grid_size.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kWaveSimulation_helper/save_to_disk_func.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kWaveSimulation_helper/scale_source_terms_func.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kWaveSimulation_helper/set_sound_speed_ref.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kgrid.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kmedium.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/ksensor.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/ksource.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kspaceFirstOrder2D.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kspaceFirstOrder3D.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kspaceFirstOrderAS.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kspaceLineRecon.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/kspacePlaneRecon.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/ktransducer.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/options/__init__.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/options/simulation_execution_options.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/options/simulation_options.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/reconstruction/__init__.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/reconstruction/beamform.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/reconstruction/time_reversal.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/reconstruction/tools.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/recorder.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/solvers/__init__.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/solvers/native.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/solvers/validation.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/angular_spectrum.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/angular_spectrum_cw.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/atten_comp.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/checks.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/colormap.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/data.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/dotdictionary.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/filters.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/interp.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/io.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/mapgen.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/math.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/matlab.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/matrix.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/plot.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/pml.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/sharpness_filters.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/signals.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/tictoc.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/kwave/utils/typing.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/make_docs.sh +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/pytest.ini +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/run_examples.py +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1/.claude/worktrees/add-agent-cli}/run_tests.sh +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/.gitignore +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/class_index.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/coverage_html_cb_6fb7b396.js +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/function_index.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/index.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/status.json +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/style_cb_8e611ae1.css +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2___init___py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_checks_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_colormap_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_conversion_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_data_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_dotdictionary_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_filters_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_interp_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_io_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_mapgen_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_math_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_matlab_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_matrix_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_pml_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_signals_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_tictoc_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_008abe0f134486c2_typing_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_08ccaf6f6fd0d069___init___py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_08ccaf6f6fd0d069_create_absorption_variables_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_08ccaf6f6fd0d069_display_simulation_params_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_08ccaf6f6fd0d069_expand_grid_matrices_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_08ccaf6f6fd0d069_retract_transducer_grid_size_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_08ccaf6f6fd0d069_save_to_disk_func_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_08ccaf6f6fd0d069_scale_source_terms_func_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_08ccaf6f6fd0d069_set_sound_speed_ref_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_af83d3eb1fd99cb4___init___py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_af83d3eb1fd99cb4_simulation_execution_options_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_af83d3eb1fd99cb4_simulation_options_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c3dba8f0d3a212d1___init___py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c3dba8f0d3a212d1_data_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c3dba8f0d3a212d1_enums_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c3dba8f0d3a212d1_executor_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c3dba8f0d3a212d1_kWaveSimulation_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c3dba8f0d3a212d1_kgrid_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c3dba8f0d3a212d1_kmedium_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c3dba8f0d3a212d1_ksensor_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c3dba8f0d3a212d1_ksource_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c3dba8f0d3a212d1_kspaceFirstOrder2D_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c3dba8f0d3a212d1_ktransducer_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c3dba8f0d3a212d1_recorder_py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c6e89a0ff279d0c3___init___py.html +0 -0
- {k_wave_python-0.6.0 → k_wave_python-0.6.1}/htmlcov/z_c6e89a0ff279d0c3_time_reversal_py.html +0 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
{
|
|
2
|
+
"permissions": {
|
|
3
|
+
"allow": [
|
|
4
|
+
"Bash(ls:*)",
|
|
5
|
+
"Bash(python:*)",
|
|
6
|
+
"Bash(uv run python:*)",
|
|
7
|
+
"Bash(PYTHONPATH=. uv run:*)",
|
|
8
|
+
"Bash(find:*)",
|
|
9
|
+
"Bash(grep:*)",
|
|
10
|
+
"WebSearch",
|
|
11
|
+
"WebFetch(domain:www.k-wave.org)",
|
|
12
|
+
"WebFetch(domain:nanobind.readthedocs.io)",
|
|
13
|
+
"WebFetch(domain:github.com)",
|
|
14
|
+
"WebFetch(domain:raw.githubusercontent.com)",
|
|
15
|
+
"Bash(.venv/bin/python:*)",
|
|
16
|
+
"Bash(git remote:*)",
|
|
17
|
+
"Bash(gh pr:*)",
|
|
18
|
+
"mcp__greptile__list_pull_requests",
|
|
19
|
+
"mcp__greptile__trigger_code_review",
|
|
20
|
+
"mcp__greptile__list_code_reviews",
|
|
21
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/ivp_photoacoustic_waveforms/ivp_photoacoustic_waveforms.py)",
|
|
22
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/pr_2D_FFT_line_sensor/pr_2D_FFT_line_sensor.py)",
|
|
23
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/pr_2D_TR_line_sensor/pr_2D_TR_line_sensor.py)",
|
|
24
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/at_array_as_sensor/at_array_as_sensor.py)",
|
|
25
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/at_array_as_source/at_array_as_source.py)",
|
|
26
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/sd_directivity_modelling_2D/sd_directivity_modelling_2D.py)",
|
|
27
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/sd_focussed_detector_2D/sd_focussed_detector_2D.py)",
|
|
28
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/sd_focussed_detector_3D/sd_focussed_detector_3D.py)",
|
|
29
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/at_circular_piston_3D/at_circular_piston_3D.py)",
|
|
30
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/at_circular_piston_AS/at_circular_piston_AS.py)",
|
|
31
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/at_focused_bowl_AS/at_focused_bowl_AS.py)",
|
|
32
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/at_focused_bowl_3D/at_focused_bowl_3D.py)",
|
|
33
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/at_focused_annular_array_3D/at_focused_annular_array_3D.py)",
|
|
34
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/at_linear_array_transducer/at_linear_array_transducer.py)",
|
|
35
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/pr_3D_FFT_planar_sensor/pr_3D_FFT_planar_sensor.py)",
|
|
36
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/pr_3D_TR_planar_sensor/pr_3D_TR_planar_sensor.py)",
|
|
37
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/us_defining_transducer/us_defining_transducer.py)",
|
|
38
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/us_beam_patterns/us_beam_patterns.py)",
|
|
39
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/us_bmode_phased_array/us_bmode_phased_array.py)",
|
|
40
|
+
"Bash(KWAVE_DEVICE=cpu uv run python examples/checkpointing/checkpoint.py)",
|
|
41
|
+
"Bash(KWAVE_FORCE_CPU=1 uv run python examples/pr_2D_FFT_line_sensor/pr_2D_FFT_line_sensor.py)",
|
|
42
|
+
"mcp__greptile__list_merge_request_comments"
|
|
43
|
+
]
|
|
44
|
+
}
|
|
45
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
gitdir: /Users/Walter/git/k-wave-python/.git/worktrees/add-agent-cli
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Contributing Guidelines
|
|
2
|
+
|
|
3
|
+
Thanks for your interest in contributing an example to k-wave-python!
|
|
4
|
+
|
|
5
|
+
## Issues
|
|
6
|
+
|
|
7
|
+
### Create a new issue
|
|
8
|
+
|
|
9
|
+
If you would like to contribute to this project, search to see if a related issue already exists. If a related issue doesn't exist, you can open a new issue using a relevant issue form.
|
|
10
|
+
|
|
11
|
+
### Solve an open issue
|
|
12
|
+
|
|
13
|
+
Have a look through our existing issues to find one that interests you.
|
|
14
|
+
You can narrow down the search using labels as filters.
|
|
15
|
+
If you find an issue to work on, you are welcome to open a PR with a fix.
|
|
16
|
+
|
|
17
|
+
## Make changes
|
|
18
|
+
|
|
19
|
+
Fork k-wave-python and make changes you would like to contribute to your fork.
|
|
20
|
+
|
|
21
|
+
## Open a Pull-Request
|
|
22
|
+
|
|
23
|
+
* Complete the "Ready for review" template so that we can review your PR. This template helps reviewers understand your changes and the purpose of your pull request.
|
|
24
|
+
|
|
25
|
+
* [Link PR to an issue](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue) if you are solving one.
|
|
26
|
+
|
|
27
|
+
* Don't forget to click the checkbox to [allow maintainer edits](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork) so you PR can be updated before a merge.
|
|
28
|
+
|
|
29
|
+
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug report
|
|
3
|
+
about: Create a report to help us improve
|
|
4
|
+
title: "[BUG]"
|
|
5
|
+
labels: bug
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
**Describe the bug**
|
|
11
|
+
A clear and concise description of what the bug is.
|
|
12
|
+
|
|
13
|
+
**To Reproduce**
|
|
14
|
+
Steps to reproduce the behavior:
|
|
15
|
+
1. Go to '...'
|
|
16
|
+
2. Click on '....'
|
|
17
|
+
3. Scroll down to '....'
|
|
18
|
+
4. See error
|
|
19
|
+
|
|
20
|
+
**Expected behavior**
|
|
21
|
+
A clear and concise description of what you expected to happen.
|
|
22
|
+
|
|
23
|
+
**Screenshots**
|
|
24
|
+
If applicable, add screenshots to help explain your problem.
|
|
25
|
+
|
|
26
|
+
**Desktop (please complete the following information):**
|
|
27
|
+
- OS: [e.g. Windows/Linux]
|
|
28
|
+
- Version [e.g. 22]
|
|
29
|
+
|
|
30
|
+
**Additional context**
|
|
31
|
+
Add any other context about the problem here.
|
k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/ISSUE_TEMPLATE/code_enhancement.md
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Code Enhancement
|
|
3
|
+
about: Suggest changes to improve code quality, reduce complexity, and increase efficiency
|
|
4
|
+
title: "[ENHANCE] Brief description of enhancement"
|
|
5
|
+
labels: enhancement
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Description of the Enhancement
|
|
11
|
+
Provide a clear and concise description of what you want to happen. Explain the current state and the exact changes.
|
|
12
|
+
|
|
13
|
+
## Justification for the Enhancement
|
|
14
|
+
<!-- Explain why these changes should be made. How do they benefit the project? -->
|
|
15
|
+
1. **Reduces Complexity**: Detail how the changes simplify the code, e.g. reducing the number of lines or eliminating redundant functions.
|
|
16
|
+
2. **Improves Efficiency**: Describe how the changes will enhance performance, e.g. decreasing execution time, or reducing memory consumption.
|
|
17
|
+
3. **Improve Readability**: Describe how readability benefits from changes.
|
|
18
|
+
|
|
19
|
+
## Impact of Changes
|
|
20
|
+
<!-- Discuss any possible impacts this change might have on other parts of the project. -->
|
|
21
|
+
List any other components or modules that might be affected by these changes.
|
|
22
|
+
|
|
23
|
+
## Screenshots/Examples
|
|
24
|
+
<!-- Add screenshot or other means of showing improvement-->
|
|
25
|
+
If applicable, add screenshots, code snippets, or links to help illustrate the enhancement.
|
|
26
|
+
|
|
27
|
+
## Additional Context
|
|
28
|
+
Add any other context or information about the enhancement here.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
blank_issues_enabled: false
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Example
|
|
3
|
+
about: Request an example to help others get started
|
|
4
|
+
title: "[Example]"
|
|
5
|
+
labels: example
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
**Describe the example**
|
|
11
|
+
What example do you wish was included in k-wave-python? What functionality of principle should it display?
|
|
12
|
+
|
|
13
|
+
**Sources**
|
|
14
|
+
If applicable, add sources of the example from literature or other projects.
|
|
15
|
+
|
|
16
|
+
**Additional context**
|
|
17
|
+
Add any other context about the example here.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Feature request
|
|
3
|
+
about: Suggest an idea for this project
|
|
4
|
+
title: '[Feature]'
|
|
5
|
+
labels: enhancement
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
**Is your feature request related to a problem? Please describe.**
|
|
11
|
+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
|
12
|
+
|
|
13
|
+
**Describe the solution you'd like**
|
|
14
|
+
A clear and concise description of what you want to happen.
|
|
15
|
+
|
|
16
|
+
**Describe alternatives you've considered**
|
|
17
|
+
A clear and concise description of any alternative solutions or features you've considered.
|
|
18
|
+
|
|
19
|
+
**Additional context**
|
|
20
|
+
Add any other context or screenshots about the feature request here.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# To get started with Dependabot version updates, you'll need to specify which
|
|
2
|
+
# package ecosystems to update and where the package manifests are located.
|
|
3
|
+
# Please see the documentation for all configuration options:
|
|
4
|
+
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
|
|
5
|
+
|
|
6
|
+
version: 2
|
|
7
|
+
updates:
|
|
8
|
+
- package-ecosystem: "pip" # See documentation for possible values
|
|
9
|
+
directory: "/" # Location of package manifests
|
|
10
|
+
schedule:
|
|
11
|
+
interval: "weekly"
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
name: Spell Check
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [ main ]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [ main ]
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
spellcheck:
|
|
11
|
+
name: Spell Check
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v3
|
|
15
|
+
|
|
16
|
+
- name: Set up Python
|
|
17
|
+
uses: actions/setup-python@v4
|
|
18
|
+
with:
|
|
19
|
+
python-version: '3.10'
|
|
20
|
+
|
|
21
|
+
- name: Install codespell
|
|
22
|
+
run: pip install codespell
|
|
23
|
+
|
|
24
|
+
- name: Run codespell
|
|
25
|
+
run: codespell --config .codespellrc
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
name: Markdown Link Validator
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
pull_request:
|
|
5
|
+
push:
|
|
6
|
+
branches: [ main, master ]
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
linkChecker:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
permissions:
|
|
12
|
+
contents: read
|
|
13
|
+
steps:
|
|
14
|
+
- name: Checkout repository
|
|
15
|
+
uses: actions/checkout@v4
|
|
16
|
+
with:
|
|
17
|
+
fetch-depth: 1
|
|
18
|
+
|
|
19
|
+
- name: Check links with lychee
|
|
20
|
+
# See https://github.com/lycheeverse/lychee-action
|
|
21
|
+
uses: lycheeverse/lychee-action@v2
|
|
22
|
+
with:
|
|
23
|
+
args: >-
|
|
24
|
+
--verbose
|
|
25
|
+
--no-progress
|
|
26
|
+
--max-concurrency 20
|
|
27
|
+
--exclude-path "docs/get_started/legacy_licenses/"
|
|
28
|
+
--exclude-link-local
|
|
29
|
+
--exclude "https://doi.org/"
|
|
30
|
+
--exclude "https://pubs.aip.org"
|
|
31
|
+
--exclude "https://www.gnu.org"
|
|
32
|
+
--exclude "https://fsf.org"
|
|
33
|
+
--exclude "http://www.k-wave.org"
|
|
34
|
+
"**/*.md" "**/*.rst"
|
|
35
|
+
fail: true
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
name: pytest
|
|
2
|
+
|
|
3
|
+
on: [push, pull_request]
|
|
4
|
+
|
|
5
|
+
jobs:
|
|
6
|
+
collect_references:
|
|
7
|
+
name: collect_references
|
|
8
|
+
outputs:
|
|
9
|
+
MATLAB_REFS_HASH: ${{ steps.matlab-refs-hash.outputs.MATLAB_REFS_HASH }}
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- name: checkout repository
|
|
13
|
+
uses: actions/checkout@v4
|
|
14
|
+
with:
|
|
15
|
+
path: k-Wave-python
|
|
16
|
+
# Calculate hash value that will be used as a cache key
|
|
17
|
+
- name: Calculate matlab references hash
|
|
18
|
+
id: matlab-refs-hash
|
|
19
|
+
run: |
|
|
20
|
+
MATLAB_REFS_HASH=$(find ./k-Wave-python/tests/matlab_test_data_collectors/matlab_collectors -type f | xargs sha1sum | sha1sum | awk '{ print $1 }');
|
|
21
|
+
echo "MATLAB_REFS_HASH=$MATLAB_REFS_HASH" >> $GITHUB_OUTPUT
|
|
22
|
+
# Pull cache if exists, otherwise cache will be created at the specified path
|
|
23
|
+
- name: Cache collected references
|
|
24
|
+
uses: actions/cache@v3
|
|
25
|
+
id: matlab-refs-cache
|
|
26
|
+
env:
|
|
27
|
+
cache-name: cache-matlab-references
|
|
28
|
+
with:
|
|
29
|
+
key: ${{ steps.matlab-refs-hash.outputs.MATLAB_REFS_HASH }}
|
|
30
|
+
path: ./collectedValues.tar.gz
|
|
31
|
+
- name: Checkout reference k-Wave repo
|
|
32
|
+
uses: actions/checkout@v4
|
|
33
|
+
if: ${{ steps.matlab-refs-cache.outputs.cache-hit != 'true' }}
|
|
34
|
+
with:
|
|
35
|
+
repository: ucl-bug/k-wave
|
|
36
|
+
path: k-wave
|
|
37
|
+
ref: v1.4.0
|
|
38
|
+
- name: setup MATLAB
|
|
39
|
+
uses: matlab-actions/setup-matlab@v1
|
|
40
|
+
if: ${{ steps.matlab-refs-cache.outputs.cache-hit != 'true' }}
|
|
41
|
+
- name: run reference generation
|
|
42
|
+
uses: matlab-actions/run-command@v1
|
|
43
|
+
if: ${{ steps.matlab-refs-cache.outputs.cache-hit != 'true' }}
|
|
44
|
+
with:
|
|
45
|
+
command: |
|
|
46
|
+
ls;
|
|
47
|
+
pwd;
|
|
48
|
+
if exist('k-wave/k-Wave'); ls 'k-wave/k-Wave'; end;
|
|
49
|
+
addpath('k-Wave-python','k-wave/k-Wave');
|
|
50
|
+
cd k-Wave-python/tests/matlab_test_data_collectors;
|
|
51
|
+
run_all_collectors;
|
|
52
|
+
- name: Compress generated references
|
|
53
|
+
uses: a7ul/tar-action@v1.1.0
|
|
54
|
+
if: ${{ steps.matlab-refs-cache.outputs.cache-hit != 'true' }}
|
|
55
|
+
with:
|
|
56
|
+
command: c
|
|
57
|
+
cwd: ./k-Wave-python/tests/matlab_test_data_collectors/matlab_collectors/
|
|
58
|
+
files: |
|
|
59
|
+
./collectedValues
|
|
60
|
+
outPath: collectedValues.tar.gz
|
|
61
|
+
- name: Upload reference values artifact
|
|
62
|
+
id: artifact-upload-step
|
|
63
|
+
uses: actions/upload-artifact@v4
|
|
64
|
+
with:
|
|
65
|
+
name: matlab_reference_test_values
|
|
66
|
+
path: collectedValues.tar.gz
|
|
67
|
+
# overwrite: true
|
|
68
|
+
|
|
69
|
+
- name: Output artifact URL
|
|
70
|
+
run: echo 'Artifact URL is ${{ steps.artifact-upload-step.outputs.artifact-url }}'
|
|
71
|
+
test:
|
|
72
|
+
needs: collect_references
|
|
73
|
+
strategy:
|
|
74
|
+
matrix:
|
|
75
|
+
os: [ "windows-latest", "ubuntu-latest" , "macos-latest"]
|
|
76
|
+
python-version: [ "3.10", "3.11", "3.12", "3.13" ]
|
|
77
|
+
runs-on: ${{matrix.os}}
|
|
78
|
+
steps:
|
|
79
|
+
- uses: actions/checkout@v4
|
|
80
|
+
# Pull the cache based on the hash value
|
|
81
|
+
- name: Cache collected references
|
|
82
|
+
uses: actions/cache@v3
|
|
83
|
+
id: cache-matlab-refs
|
|
84
|
+
env:
|
|
85
|
+
cache-name: cache-matlab-references
|
|
86
|
+
with:
|
|
87
|
+
key: ${{ needs.collect_references.outputs.MATLAB_REFS_HASH }}
|
|
88
|
+
path: ./collectedValues.tar.gz
|
|
89
|
+
fail-on-cache-miss: true
|
|
90
|
+
enableCrossOsArchive: true
|
|
91
|
+
# Now we have the references archive available in this job, proceed by unpacking it
|
|
92
|
+
- name: unpack collectedValues
|
|
93
|
+
uses: a7ul/tar-action@v1.1.0
|
|
94
|
+
with:
|
|
95
|
+
command: x
|
|
96
|
+
cwd: ./tests/matlab_test_data_collectors/python_testers/
|
|
97
|
+
files: ${{github.workspace}}/collectedValues.tar.gz
|
|
98
|
+
- name: where are the files?
|
|
99
|
+
run: |
|
|
100
|
+
ls ./tests/matlab_test_data_collectors/python_testers/
|
|
101
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
102
|
+
uses: actions/setup-python@v5
|
|
103
|
+
with:
|
|
104
|
+
python-version: ${{ matrix.python-version }}
|
|
105
|
+
cache: 'pip'
|
|
106
|
+
- name: Install dependencies
|
|
107
|
+
run: |
|
|
108
|
+
pip install '.[test]'
|
|
109
|
+
- name: Test with pytest
|
|
110
|
+
run: |
|
|
111
|
+
coverage run
|
|
112
|
+
- name: Create coverage report
|
|
113
|
+
run: |
|
|
114
|
+
coverage xml
|
|
115
|
+
- name: Upload coverage reports to Codecov
|
|
116
|
+
uses: codecov/codecov-action@v4
|
|
117
|
+
with:
|
|
118
|
+
env_vars: ${{matrix.os}},${{ matrix.python-version }}
|
|
119
|
+
fail_ci_if_error: true
|
|
120
|
+
flags: ${{matrix.os}},${{ matrix.python-version }}
|
|
121
|
+
name: ${{matrix.os}},${{ matrix.python-version }}
|
|
122
|
+
verbose: true
|
|
123
|
+
env:
|
|
124
|
+
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
name: Run K-Wave Examples
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
schedule:
|
|
5
|
+
- cron: '0 0 * * 1' # Every Monday at 00:00 UTC
|
|
6
|
+
workflow_dispatch: # Manual trigger
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
discover-examples:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
outputs:
|
|
12
|
+
example_paths: ${{ steps.find-examples.outputs.examples }}
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v4
|
|
15
|
+
- id: find-examples
|
|
16
|
+
run: |
|
|
17
|
+
# Find all Python files in examples subdirectories
|
|
18
|
+
EXAMPLES=$(find examples -name "*.py" -not -path "*/\.*" | jq -R -s -c 'split("\n")[:-1]')
|
|
19
|
+
echo "examples=$EXAMPLES" >> "$GITHUB_OUTPUT"
|
|
20
|
+
|
|
21
|
+
run-examples:
|
|
22
|
+
needs: discover-examples
|
|
23
|
+
runs-on: ubuntu-latest
|
|
24
|
+
timeout-minutes: 60 # 1 hour timeout per example
|
|
25
|
+
strategy:
|
|
26
|
+
fail-fast: false # Continue running other examples even if one fails
|
|
27
|
+
matrix:
|
|
28
|
+
example: ${{ fromJson(needs.discover-examples.outputs.example_paths) }}
|
|
29
|
+
|
|
30
|
+
steps:
|
|
31
|
+
- name: Checkout repository
|
|
32
|
+
uses: actions/checkout@v4
|
|
33
|
+
|
|
34
|
+
- name: Install system dependencies
|
|
35
|
+
run: |
|
|
36
|
+
sudo apt-get update
|
|
37
|
+
sudo apt-get install -y ffmpeg
|
|
38
|
+
|
|
39
|
+
- name: Set up Python
|
|
40
|
+
uses: actions/setup-python@v5
|
|
41
|
+
with:
|
|
42
|
+
python-version: '3.10' # Matches requires-python from pyproject.toml
|
|
43
|
+
cache: 'pip'
|
|
44
|
+
|
|
45
|
+
- name: Install dependencies
|
|
46
|
+
run: |
|
|
47
|
+
python -m pip install --upgrade pip
|
|
48
|
+
# Install the package with example dependencies
|
|
49
|
+
pip install -e ".[example]"
|
|
50
|
+
|
|
51
|
+
- name: Run example
|
|
52
|
+
env:
|
|
53
|
+
KWAVE_FORCE_CPU: 1
|
|
54
|
+
run: |
|
|
55
|
+
echo "Running example: ${{ matrix.example }}"
|
|
56
|
+
python "${{ matrix.example }}"
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
name: test_example
|
|
2
|
+
|
|
3
|
+
on: workflow_dispatch # disabled: gdown fails due to Google Drive bot detection
|
|
4
|
+
|
|
5
|
+
jobs:
|
|
6
|
+
test_example:
|
|
7
|
+
strategy:
|
|
8
|
+
matrix:
|
|
9
|
+
os: [ "windows-latest", "ubuntu-latest" , "macos-latest"]
|
|
10
|
+
python-version: [ "3.10", "3.11", "3.12", "3.13" ]
|
|
11
|
+
runs-on: ${{matrix.os}}
|
|
12
|
+
steps:
|
|
13
|
+
- uses: actions/checkout@v4
|
|
14
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
15
|
+
uses: actions/setup-python@v5
|
|
16
|
+
with:
|
|
17
|
+
python-version: ${{ matrix.python-version }}
|
|
18
|
+
cache: 'pip'
|
|
19
|
+
- name: Install dependencies
|
|
20
|
+
run: |
|
|
21
|
+
pip install -e '.[example]'
|
|
22
|
+
- name: Run example script
|
|
23
|
+
run: |
|
|
24
|
+
python3 examples/us_bmode_linear_transducer/us_bmode_linear_transducer.py
|
|
25
|
+
- name: Upload example results
|
|
26
|
+
uses: actions/upload-artifact@v4
|
|
27
|
+
with:
|
|
28
|
+
name: example_bmode_reconstruction_results_${{ matrix.os }}_${{ matrix.python-version }}
|
|
29
|
+
path: ${{ github.workspace }}/example_bmode.png
|
k_wave_python-0.6.1/.claude/worktrees/add-agent-cli/.github/workflows/test_optional_dependencies.yml
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
name: test_optional_requirements
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
paths:
|
|
6
|
+
- 'pyproject.toml'
|
|
7
|
+
pull_request:
|
|
8
|
+
paths:
|
|
9
|
+
- 'pyproject.toml'
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
test_install:
|
|
13
|
+
strategy:
|
|
14
|
+
matrix:
|
|
15
|
+
os: [ "windows-latest", "ubuntu-latest" , "macos-latest"]
|
|
16
|
+
python-version: [ "3.10", "3.11", "3.12", "3.13" ]
|
|
17
|
+
extra_requirements: [ "test", "examples", "docs", "dev", "all" ]
|
|
18
|
+
runs-on: ${{matrix.os}}
|
|
19
|
+
steps:
|
|
20
|
+
- uses: actions/checkout@v4
|
|
21
|
+
# Pull the cache based on the hash value
|
|
22
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
23
|
+
uses: actions/setup-python@v5
|
|
24
|
+
with:
|
|
25
|
+
python-version: ${{ matrix.python-version }}
|
|
26
|
+
cache: 'pip'
|
|
27
|
+
- name: Install dependencies
|
|
28
|
+
run: |
|
|
29
|
+
pip install '.[${{ matrix.extra_requirements }}]'
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
name: test_pages
|
|
2
|
+
on: [push]
|
|
3
|
+
|
|
4
|
+
jobs:
|
|
5
|
+
build:
|
|
6
|
+
runs-on: ubuntu-latest
|
|
7
|
+
steps:
|
|
8
|
+
- uses: actions/checkout@master
|
|
9
|
+
with:
|
|
10
|
+
fetch-depth: 0 # otherwise, you will fail to push refs to dest repo
|
|
11
|
+
- uses: actions/setup-python@v5
|
|
12
|
+
with:
|
|
13
|
+
python-version: '3.10'
|
|
14
|
+
cache: 'pip'
|
|
15
|
+
- name: Build and Commit
|
|
16
|
+
uses: waltsims/pages@pyproject.toml-support
|
|
17
|
+
with:
|
|
18
|
+
pyproject_toml_deps: ".[docs]"
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Minimal makefile for Sphinx documentation
|
|
2
|
+
#
|
|
3
|
+
|
|
4
|
+
# You can set these variables from the command line, and also
|
|
5
|
+
# from the environment for the first two.
|
|
6
|
+
SPHINXOPTS ?=
|
|
7
|
+
SPHINXBUILD ?= sphinx-build
|
|
8
|
+
SOURCEDIR = .
|
|
9
|
+
BUILDDIR = _build
|
|
10
|
+
|
|
11
|
+
# Put it first so that "make" without argument is like "make help".
|
|
12
|
+
help:
|
|
13
|
+
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
|
14
|
+
|
|
15
|
+
.PHONY: help Makefile
|
|
16
|
+
|
|
17
|
+
# Catch-all target: route all unknown targets to Sphinx using the new
|
|
18
|
+
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
|
|
19
|
+
%: Makefile
|
|
20
|
+
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
This project is a Python implementation of v1.4.0 of the [MATLAB toolbox k-Wave](http://www.k-wave.org/) as well as an
|
|
9
9
|
interface to the pre-compiled v1.3 of k-Wave simulation binaries, which support NVIDIA sm 5.0 (Maxwell) to sm 9.0a (Hopper) GPUs.
|
|
10
10
|
|
|
11
|
-
**New in v0.6.0:** Unified `kspaceFirstOrder()` API with a pure NumPy/CuPy solver. See the [API guide](https://k-wave-python.readthedocs.io/en/latest/get_started/new_api.html).
|
|
11
|
+
**New in v0.6.0:** Unified `kspaceFirstOrder()` API with a pure NumPy/CuPy solver. See the [API guide](https://k-wave-python.readthedocs.io/en/latest/get_started/new_api.html). The `kspaceFirstOrder()` API is experimental and may change before v1.0.0.
|
|
12
12
|
|
|
13
13
|
## Mission
|
|
14
14
|
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
# Configuration file for the Sphinx documentation builder.
|
|
2
|
+
#
|
|
3
|
+
# For the full list of built-in configuration values, see the documentation:
|
|
4
|
+
# https://www.sphinx-doc.org/en/master/usage/configuration.html
|
|
5
|
+
|
|
6
|
+
# -- Project information -----------------------------------------------------
|
|
7
|
+
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
|
|
8
|
+
|
|
9
|
+
from kwave import __version__
|
|
10
|
+
|
|
11
|
+
project = "k-Wave-python"
|
|
12
|
+
copyright = "2024, Walter Simson, Farid Yagubbayli"
|
|
13
|
+
author = "Walter Simson, Farid Yagubbayli"
|
|
14
|
+
version = __version__
|
|
15
|
+
|
|
16
|
+
# -- General configuration ---------------------------------------------------
|
|
17
|
+
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
|
|
18
|
+
|
|
19
|
+
extensions = [
|
|
20
|
+
"sphinx.ext.autodoc",
|
|
21
|
+
"sphinx.ext.githubpages",
|
|
22
|
+
"sphinx_toolbox.code",
|
|
23
|
+
"sphinx_copybutton",
|
|
24
|
+
"sphinx.ext.coverage",
|
|
25
|
+
"sphinx.ext.napoleon",
|
|
26
|
+
"sphinx.ext.viewcode",
|
|
27
|
+
"sphinx_mdinclude",
|
|
28
|
+
"sphinx.ext.extlinks", # Enables :ghfile: external links
|
|
29
|
+
]
|
|
30
|
+
|
|
31
|
+
# Provide a simple GitHub branch/sha fallback for linking to example files.
|
|
32
|
+
# Priority: explicit override via _GITHUB_BRANCH →
|
|
33
|
+
# READTHEDOCS_GIT_IDENTIFIER (commit) →
|
|
34
|
+
# READTHEDOCS_GIT_BRANCH / GITHUB_REF_NAME →
|
|
35
|
+
# "master".
|
|
36
|
+
import os
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def _detect_current_branch() -> str:
|
|
40
|
+
"""Return a branch/commit identifier for GitHub links with minimal logic.
|
|
41
|
+
|
|
42
|
+
Order: _GITHUB_BRANCH override → READTHEDOCS_GIT_IDENTIFIER (commit) →
|
|
43
|
+
READTHEDOCS_GIT_BRANCH / GITHUB_REF_NAME → "master".
|
|
44
|
+
"""
|
|
45
|
+
return (
|
|
46
|
+
os.getenv("_GITHUB_BRANCH")
|
|
47
|
+
or os.getenv("READTHEDOCS_GIT_IDENTIFIER")
|
|
48
|
+
or os.getenv("READTHEDOCS_GIT_BRANCH")
|
|
49
|
+
or os.getenv("GITHUB_REF_NAME")
|
|
50
|
+
or "master"
|
|
51
|
+
)
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
_GITHUB_BRANCH = _detect_current_branch()
|
|
55
|
+
|
|
56
|
+
# Define an extlink so we can write :ghfile:`examples/foo.py` in .rst/.md
|
|
57
|
+
extlinks = {
|
|
58
|
+
"ghfile": (
|
|
59
|
+
f"https://github.com/waltsims/k-wave-python/blob/{_GITHUB_BRANCH}/%s",
|
|
60
|
+
"%s", # pass-through caption
|
|
61
|
+
),
|
|
62
|
+
"ghdir": (
|
|
63
|
+
f"https://github.com/waltsims/k-wave-python/tree/{_GITHUB_BRANCH}/%s",
|
|
64
|
+
"%s",
|
|
65
|
+
),
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
source_suffix = [".rst", ".md"]
|
|
69
|
+
templates_path = ["_templates"]
|
|
70
|
+
exclude_patterns = ["README.md", "_build", "Thumbs.db", ".DS_Store"]
|
|
71
|
+
|
|
72
|
+
language = "en"
|
|
73
|
+
|
|
74
|
+
# -- Options for HTML output -------------------------------------------------
|
|
75
|
+
# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
|
|
76
|
+
html_theme = "furo"
|
|
77
|
+
html_theme_options = {
|
|
78
|
+
"source_repository": "https://github.com/waltsims/k-wave-python",
|
|
79
|
+
"source_branch": _GITHUB_BRANCH,
|
|
80
|
+
"source_directory": "docs/",
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
html_static_path = ["_static"]
|
|
84
|
+
|
|
85
|
+
# -- Options for todo extension ----------------------------------------------
|
|
86
|
+
# https://www.sphinx-doc.org/en/master/usage/extensions/todo.html#configuration
|
|
87
|
+
|
|
88
|
+
todo_include_todos = True
|
|
89
|
+
|
|
90
|
+
# -- Options for autodoc ----------------------------------------------------
|
|
91
|
+
# https://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html#configuration
|
|
92
|
+
|
|
93
|
+
# Automatically extract typehints when specified and place them in
|
|
94
|
+
# descriptions of the relevant function/method.
|
|
95
|
+
autodoc_typehints = "description"
|
|
96
|
+
|
|
97
|
+
# Don't show class signature with the class' name.
|
|
98
|
+
autodoc_class_signature = "separated"
|
|
99
|
+
|
|
100
|
+
# Remove module name from object names
|
|
101
|
+
add_module_names = False
|