zernikeFit

lsst.ts.wep.utils.zernikeFit(u: ndarray, v: ndarray, z: ndarray, jmin: int = 4, jmax: int = 22, obscuration: float = 0.612, mask: Optional[ndarray] = None) ndarray

Fit Zernike polynomials to the surface.

Parameters:
unp.ndarray

The x normalized pupil coordinate(s).

vnp.ndarray

The y normalized pupil coordinate(s). Must be same shape as u.

znp.ndarray

The wavefront surface evaluated at the u, v points.

jminint, optional

The minimum Noll index, inclusive. Must be >= 0. (the default is 4)

jmaxint

The maximum Noll index to fit, inclusive. Must be >= jmin. (the default is 22)

obscurationfloat, optional

The fractional obscuration. (the default is 0.612, corresponding to the Simonyi Survey Telescope.)

masknp.ndarray, optional

A mask for the surface. The Zernikes are only fit to the unmasked points. (the default is None)

Returns:
np.ndarray

The best fit Zernike coefficients in the same units as z.

Raises:
ValueError

If jmin is negative or jmax is less than jmin