Skip to content

Releases: astro-informatics/s2fft

v1.2.0

19 Dec 08:41
876e090
Compare
Choose a tag to compare

What's Changed

✨ New features

  • Performance improvements by @CosmoMatt in #200
  • Custom HEALPix FFT primitive when running on GPU by @ASKabalan in #204
  • Add stable high-spin transforms (precompute, standard) by @CosmoMatt in #230
  • Add stable forward/inverse memory efficient Wigner transforms by @CosmoMatt in #238
  • Add custom collective transforms by @CosmoMatt in #239
  • Avoid loops in s2fft.sampling.reindex functions to reduce compile and run times by @matt-graham in #245
  • Correct healpix_forward derivatives and add support for forward and higher order autodiff by @matt-graham in #244
  • Improvements to benchmarking system by @matt-graham in #248
  • Iterative refinement support for JAX and NumPy forward (spherical) transform implementations by @matt-graham in #241
  • Vectorize signal generator functions by @matt-graham in #252

📖 Documentation improvements

  • Feature/notebook plots by @CosmoMatt in #202
  • Execute main spherical transform notebook by @jasonmcewen in #203
  • Add low precision warning to docstring of inverse Wigner function by @ElisR in #220
  • Update citation details in docs and add CITATION.cff file by @matt-graham in #236
  • Indicate cubic memory overhead in generate_precomputes docstring by @matt-graham in #257

🐛 Bug fixes

  • Fix pass through of arguments to generate_precomputes in NumPy forward spherical transform by @matt-graham in #256
  • Fix failing test_transform_forward_healpix_iter test by @matt-graham in #258

🛠 Other changes

New Contributors

Full Changelog: v1.1.0...v1.2.0

v1.1.0

09 Apr 07:52
76fa862
Compare
Choose a tag to compare

This minor release of S2FFT aims to increase the accessibility of differentiable harmonic transforms to users without easy access to GPU compute resources. We provide custom JAX frontends for existing CPU bound C/C++ spherical harmonic libraries, at this point we capture the functionality of SSHT and HEALPix though in principle any spherical harmonics could easily be integrated.

Tip

For details on this approach see the original derivation in section 5.3.1 and 5.3.2 of Price & McEwen 2023.

Main changelog:

  • JAX frontend support for HEALPix C++ library
  • JAX frontend support for SSHT C library
  • Reverse mode gradients for above validated against finite difference

v1.0.2

05 Mar 12:37
b3d033c
Compare
Choose a tag to compare

Incremental version of S2FFT which adds support for:

  • PyTorch precompute transforms
  • Gauss-Legendre sampling schemes
  • JAX harmonic space rotation functions
  • JAX Risbo recursions

This version also implements some changes to reduce the compile time of HEALPix Fast Fourier transforms, though this issues is yet to be fully solved.

v1.0.1

13 Dec 16:31
c608309
Compare
Choose a tag to compare

This is a relatively small patch which attempts to mitigate the compile time of HEALPix transforms. Though this is unlikely to have solved the overall scaling of the compile time, it has reduced the time by a factor of ~4 which should help.

V1.0.0

27 Nov 10:02
3444a42
Compare
Choose a tag to compare

This is the initial beta release to accompany the associated paper (see badges). In addition this version is deployed on PyPi with universal wheels which should be straightforward to install for various python versions and machine architectures.

0.0.1

15 Feb 19:30
Compare
Choose a tag to compare

This is a pre-alpha release version for use by collaborators. Most functionality is in place, but development of minor additions will be ongoing. Please submit an issue if you have one and we will respond asap!