psfsim.zernike

Functions

zernike_radial(n, m, rho)

Radial Zernike functions.

zernike(n, m, rho, theta[, normalized])

Complete Zernike polynomial Z_n^m(rho, theta)

noll_to_zernike(j)

Taken from https://louisdesdoigts.github.io/dLux/API/utils/zernikes/

Module Contents

zernike_radial(n, m, rho)[source]

Radial Zernike functions.

Cross checked with https://desc-docs.readthedocs.io/en/v0.12.0/notebooks/zernike_eval.html. Corrected minus sign in some previous versions.

Compute radial part of Zernike polynomial Rnm(rho).

Parameters:
  • n (int) – Radial order (n >= 0).

  • m (int) – Azimuthal order (abs m <= n, n-m even).

  • rho (float or np.ndarray of float) – Radial coordinate array (0 <= rho <= 1).

Returns:

Radial polynomial values

Return type:

float or np.ndarray of float

zernike(n, m, rho, theta, normalized=True)[source]

Complete Zernike polynomial Z_n^m(rho, theta) :param n: azimuthal order :param m: radial order :param rho: radial coordinates (0 <= rho <= 1) :param theta: angular coordinates :param normalized: whether to normalize

Returns:

Complex array if m != 0, real array otherwise

noll_to_zernike(j)[source]

Taken from https://louisdesdoigts.github.io/dLux/API/utils/zernikes/ Calculate the radial and azimuthal orders of the Zernike polynomial.

Parameters:

j (int) – The Zernike (noll) index.

Returns:

n, m – The radial and azimuthal orders of the Zernike polynomial.

Return type:

tuple[int]