Zernike polynomials are orthogonal on the unit circle and are commonly used in optics for phase aberrations.
Use zernike_fcn3.m to generate Zernike polynomials. Input includes a vector of the desired polynomials; these do not have to be consecutive. Possible polynomial orderings include:
'noll' = Bob Noll's original ordering
'fringe' = Univ. of Arizona Zernike set
'original'= original order of zernfun.m
'default' = the 'fringe' (UofA) set + more terms
zernike_fcn3.m does consistency checking, selects the appropriate m & n values for a particular ordering and then calls zernfun.m to generate the polynomials.
Use zernike_coeffs3.m to fit Zernike polynomial to an input function. Since zernike_coeffs3.m calls zernike_fcn3.m, these files are automatically consistent with each other, unlike some previous functions.