diff --git a/CHANGELOG.md b/CHANGELOG.md index 485ff5d..4185dc1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,46 +1,67 @@ # Changelog + All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Changed + +- Minimum Python version bumped to 3.11 +- Upgraded plumkdocs to ^1.0.0 + ## [0.2.1] - 2024-09-17 + ### Changed + - Upgraded `jaxdf` dependency ## [0.2.0] - 2023-12-18 + ### Fixed + - Fixed arguments error in helmholtz notebook ### Changed + - `Medium` objects are now `jaxdf.Module`s, which is based on `equinox` modules. It is also a [parametric module for dispatching operators](https://beartype.github.io/plum/parametric.html), meaning that there's a type difference betwee `Medium[FourierSeries]` and `Medium[FiniteDifferences]`, for example. - The settings of time domain acoustic simulations are now set using a `TimeWavePropagationSettings`. This also includes an attribute to explicity set the reference sound speed. ### Added + - Added a logger in `jwave.logger` ### Removed + - Removed `pressure_from_density` from `jwave.acoustics.conversion`, as it was a duplicate ## [0.1.5] - 2023-09-27 + ### Added + - Added `numbers_with_smallest_primes` utility to find grids with small primes for efficient FFT when using FourierSeries ### Fixed + - Restored `default_params` for the helmholtz operators that wen missing since the last jaxdf update ## [0.1.4] - 2023-06-29 + ### Changed + - Refactored `save_video` to use opencv. ### Deprecated + - `plot_complex_field` has been deprecated in favor of `display_complex_field` ### Removed + - Removed the uncertainty propagation notebook example. For a more in depth example of using linear uncertainty propagation see [this repository](https://github.com/ucl-bug/linear-uncertainty) ### Added + - Exposed `points_on_circle` function to generate points on a circle - Exposed `unit_fibonacci_sphere` function - Exposed `fibonacci_sphere` function @@ -49,56 +70,77 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - Exposed bli_function that is used to compute the band limited interpolant ## [0.1.3] - 2023-06-28 + ### Added + - Added off grid sensors [@tomelse] ## [0.1.2] - 2023-06-22 + ### Changed + - updated documentation - made imageio and tqdm optional dependencies ## [0.1.1] - 2023-06-22 + ### Fixed + - fixed pypi classifiers ## [0.1.0] - 2023-06-22 + ### Added + - `k0` is automatically calculated in the Convergent Born Series, if not given, using the fromula from Osnabrugge et al. ### Fixed + - updated for new `Array` type in `jax` 0.4.x ### Changed + - reverted checkpoint to only step checkpoints for time varying simulations. Soon jwave will use diffrax for advanced checkpointing ## [0.0.4] - 2022-11-04 + ### Added + - Convergent Born series. ### Fixed + - Correctly handles Nyquist frequency for Helmholtz operator, to improve agreement with k-Wave. - Fixed incorrect domain size for angular spectrum. - Angular spectrum is only dispatched on `pressure` types. ## [0.0.3] - 2022-07-05 + ### Added + - Angular spectrum method for single frequency sources. - Differentiable rayleigh integral (from a plane) ## [0.0.2] - 2022-06-23 + ### Added + - Generate `TimeHarmonicSource` from point sources. ### Fixed + - Helmholtz notebook parameters bug. ## [0.0.1] - 2022-06-07 + ### Added + - Finite differences helmholtz tested. - Extract time varying params without running the simulation. - Windows one-line installer ### Fixed + - Using numpy operations in TimeAxis for static fields. - Pml for 1D and 3D simulations. - Plotting functions of `jwave.utils` now work with both `Field`s and arrays. @@ -116,4 +158,3 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), [0.0.3]: https://github.com/ucl-bug/jwave/compare/0.0.2...0.0.3 [0.0.2]: https://github.com/ucl-bug/jwave/compare/0.0.1...0.0.2 [0.0.1]: https://github.com/ucl-bug/jwave/releases/tag/0.0.1 - diff --git a/pyproject.toml b/pyproject.toml index b88738a..eb472a7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,10 +20,10 @@ license = "LGPL-3.0-only" classifiers=[ "Intended Audience :: Education", "Intended Audience :: Science/Research", - "Programming Language :: Python :: 3.8", - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "Environment :: GPU", "Environment :: GPU :: NVIDIA CUDA", "Environment :: GPU :: NVIDIA CUDA :: 11.6", @@ -50,7 +50,7 @@ packages = [ "Support" = "https://discord.gg/VtUb4fFznt" [tool.poetry.dependencies] -python = "^3.9" +python = "^3.11" jaxdf = "^0.2.8" matplotlib = "^3.0.0" @@ -69,7 +69,7 @@ mkdocs-mermaid2-plugin = "^0.6.0" mkdocstrings-python = "^1.1.2" python-kacl = "^0.4.6" pymdown-extensions = "^10.0.1" -plumkdocs = "0.0.2" +plumkdocs = "^1.0.0" tqdm = "^4.65.0" opencv-python = "^4.7.0.72"