Fourier-Wigner Transform#

s2fft.precompute_transforms.fourier_wigner.forward_transform(f: np.ndarray, L: int, N: int, precomps: tuple[np.ndarray, np.ndarray] | None = None, reality: bool = False, sampling: str = 'mw') np.ndarray#

Computes the forward Wigner transform using the Fourier decomposition algorithm.

Parameters:
  • f (np.ndarray) – Function sampled on the rotation group.

  • L (int) – Harmonic band-limit.

  • N (int) – Azimuthal band-limit.

  • precomps (tuple[np.ndarray, np.ndarray], optional) – Fourier coefficients of the reduced Wigner d-functions and the corresponding upsampled quadrature weights. Defaults to None.

  • reality (bool, optional) – Whether the signal on the sphere is real. If so, conjugate symmetry is exploited to reduce computational costs. Defaults to False.

  • sampling (str, optional) – Sampling scheme. Supported sampling schemes include {“mw”, “mwss”}. Defaults to “mw”.

Returns:

Wigner coefficients of function f.

Return type:

np.ndarray

s2fft.precompute_transforms.fourier_wigner.forward_transform_jax(f: jnp.ndarray, L: int, N: int, precomps: tuple[jnp.ndarray, jnp.ndarray] | None = None, reality: bool = False, sampling: str = 'mw') jnp.ndarray#

Computes the forward Wigner transform using the Fourier decomposition algorithm (JAX).

Parameters:
  • f (jnp.ndarray) – Function sampled on the rotation group.

  • L (int) – Harmonic band-limit.

  • N (int) – Azimuthal band-limit.

  • precomps (tuple[np.ndarray, np.ndarray], optional) – Fourier coefficients of the reduced Wigner d-functions and the corresponding upsampled quadrature weights. Defaults to None.

  • reality (bool, optional) – Whether the signal on the sphere is real. If so, conjugate symmetry is exploited to reduce computational costs. Defaults to False.

  • sampling (str, optional) – Sampling scheme. Supported sampling schemes include {“mw”, “mwss”}. Defaults to “mw”.

Returns:

Wigner coefficients of function f.

Return type:

jnp.ndarray

s2fft.precompute_transforms.fourier_wigner.inverse_transform(flmn: np.ndarray, L: int, N: int, precomps: tuple[np.ndarray, np.ndarray] | None = None, reality: bool = False, sampling: str = 'mw') np.ndarray#

Computes the inverse Wigner transform using the Fourier decomposition algorithm.

Parameters:
  • flmn (np.ndarray) – Wigner coefficients.

  • L (int) – Harmonic band-limit.

  • N (int) – Azimuthal band-limit.

  • precomps (tuple[np.ndarray, np.ndarray], optional) – Fourier coefficients of the reduced Wigner d-functions and the corresponding upsampled quadrature weights. Defaults to None.

  • reality (bool, optional) – Whether the signal on the sphere is real. If so, conjugate symmetry is exploited to reduce computational costs. Defaults to False.

  • sampling (str, optional) – Sampling scheme. Supported sampling schemes include {“mw”, “mwss”}. Defaults to “mw”.

Returns:

Pixel-space function sampled on the rotation group.

Return type:

np.ndarray

s2fft.precompute_transforms.fourier_wigner.inverse_transform_jax(flmn: jnp.ndarray, L: int, N: int, precomps: tuple[jnp.ndarray, jnp.ndarray] | None = None, reality: bool = False, sampling: str = 'mw') jnp.ndarray#

Computes the inverse Wigner transform using the Fourier decomposition algorithm (JAX).

Parameters:
  • flmn (jnp.ndarray) – Wigner coefficients.

  • L (int) – Harmonic band-limit.

  • N (int) – Azimuthal band-limit.

  • precomps (tuple[np.ndarray, np.ndarray], optional) – Fourier coefficients of the reduced Wigner d-functions and the corresponding upsampled quadrature weights. Defaults to None.

  • reality (bool, optional) – Whether the signal on the sphere is real. If so, conjugate symmetry is exploited to reduce computational costs. Defaults to False.

  • sampling (str, optional) – Sampling scheme. Supported sampling schemes include {“mw”, “mwss”}. Defaults to “mw”.

Returns:

Pixel-space function sampled on the rotation group.

Return type:

jnp.ndarray