pffit

pffit fits a series of Zernike polynomials to the phase and amplitude of a pupil function image (you can use phretavr to construct such an image from the slices through a point spread function (PSF)). The results of the fit can then be used to characterize the imaging system during deconvolution. You can use pfimage to construct an image of the fit.

To use pffit, invoke it from the command line. The expected form of the command line is (optional parts are shown in brackets):

    pffit pupil_image_input fit_output \
        [-residual=name] [-tol=t] \
        [-w=w1[:w2...]] \
        [-zernike_amp=n[:m]] \
        [-zernike_phase=n[:m]]

or

    pffit -h

where the latter form simply prints a description of the expected input parameters and then exits. The meanings of the different entries on the command line are:

pupil_image_input
pupil_image_input is expected to be the name of the Priism image file containing an image of the pupil function to fit. Conventions for pupil function images are described in the deconvolution documentation.
fit_output
fit_output is the name of the file to hold the fit results. The file will be text and the deconvolution documentation describes the file's format.
-residual=name
Causes pffit to write an image of the residuals (input pupil function minus the fit result) to the file with the given name. By default, pffit does not write the residuals.
-tol=t
Sets the relative tolerance to use when determining the rank of the least-squares problem matrix. The tolerance should be approximately the largest relative error in the pupil function input values. The default tolerance is .0001.
-w=w1[:w2...]
Limits the wavelengths to process. A wavelength may be specified by its zero-based index in the input file or by its wavelength. By default, pffit processes all wavelengths in the input.
-zernike_amp=n[:m]
Sets the Zernike polynomials used to fit the pupil function amplitude: terms whose radial polynomial is less than order n or terms whose radial polynomial are order n and whose angular portion have the form k*theta where k is in [0, m] are used. If n is less than zero, the amplitude is not fit and is assumed to be uniform within the bounds set by the numerical aperture. If you omit m, pffit will assume it is equal to n. By default n is equal to eight and m is equal to zero.
-zernike_phase=n[:m]
Sets the Zernike polynomials used to fit the pupil function phase: terms whose radial polynomial is less than order n or terms whose radial polynomial is order n and whose angular portion have the form k*theta where k is in [0, m] are used. If n is less than zero, the phase is not fit and is assumed to be zero within the bounds set by the numerical aperture. If you omit m, pffit will assume it is equal to n. By default n is equal to eight and m is equal to zero.

Related Priism Topics

Deconvolution | phretavr | pfimage | Priism