visisipy.optiland.analysis.zernike_coefficients#

Zernike coefficients analysis for Optiland.

Functions#

zernike_standard_coefficients(...)

Calculate the Zernike standard coefficients at the retina surface.

Module Contents#

visisipy.optiland.analysis.zernike_coefficients.zernike_standard_coefficients(backend: visisipy.optiland.backend.OptilandBackend, field_coordinate: visisipy.backend.FieldCoordinate | None = None, wavelength: float | None = None, field_type: visisipy.backend.FieldType = 'angle', sampling: visisipy.types.SampleSize | str | int = 64, maximum_term: int = 45, unit: visisipy.types.ZernikeUnit = 'microns') tuple[visisipy.wavefront.ZernikeCoefficients, optiland.wavefront.ZernikeOPD]#

Calculate the Zernike standard coefficients at the retina surface.

Parameters:
backendOptilandBackend

Reference to the Optiland backend.

field_coordinatetuple[float, float] | None, optional

The field coordinate for the Zernike calculation. When None, the first field in Optiland is used. Defaults to None.

wavelengthfloat | None, optional

The wavelength for the Zernike calculation. When None, the first wavelength in Optiland is used. Defaults to None.

field_typeLiteral[“angle”, “object_height”], optional

The type of field to be used when setting the field coordinate. This parameter is only used when field_coordinate is specified. Defaults to “angle”.

samplingSampleSize | str | int, optional

The sampling for the Zernike calculation. Defaults to 64.

maximum_termint, optional

The maximum term for the Zernike calculation. Defaults to 45.

unitZernikeUnit, optional

The unit for the Zernike coefficients. Must be either “microns” or “waves”. Defaults to “microns”.

Returns:
ZernikeCoefficients

Zernike standard coefficients.

ZernikeOPD

The raw Zernike OPD analysis output from Optiland.