visisipy.optiland.analysis.psf#
PSF analyses for Optiland.
Functions#
|
Calculate the FFT Point Spread Function (PSF) at the retina surface. |
|
Calculate the Huygens Point Spread Function (PSF) at the retina surface. |
Module Contents#
- visisipy.optiland.analysis.psf.fft_psf(backend: visisipy.optiland.OptilandBackend, field_coordinate: visisipy.types.FieldCoordinate | None = None, wavelength: float | None = None, field_type: visisipy.types.FieldType = 'angle', sampling: visisipy.types.SampleSize | str | int = 128) tuple[pandas.DataFrame, optiland.psf.VectorialFFTPSF | optiland.psf.ScalarFFTPSF]#
Calculate the FFT Point Spread Function (PSF) at the retina surface.
- Parameters:
- backendOptilandBackend
Reference to the Optiland backend.
- field_coordinatetuple[float, float], optional
The field coordinate (x, y) in mm. If None, the first field in Optiland is used. Defaults to None.
- wavelengthfloat, optional
The wavelength in μm. If None, the first wavelength in Optiland is used. Defaults to None.
- field_typeLiteral[“angle”, “object_height”], optional
The field type. Either “angle” or “object_height”. Defaults to “angle”. This parameter is only used if field_coordinate is not None.
- samplingSampleSize | str | int, optional
The size of the ray grid used to sample the pupil, either string (e.g. ‘32x32’) or int (e.g. 32). Defaults to 128.
- Returns:
- DataFrame
The PSF data as a pandas DataFrame.
- VectorialFFTPSF | ScalarFFTPSF
The Optiland FFTPSF object.
- visisipy.optiland.analysis.psf.huygens_psf(backend: visisipy.optiland.OptilandBackend, field_coordinate: visisipy.types.FieldCoordinate | None = None, wavelength: float | None = None, field_type: visisipy.types.FieldType = 'angle', pupil_sampling: visisipy.types.SampleSize | str | int = 128, image_sampling: visisipy.types.SampleSize | str | int = 128) tuple[pandas.DataFrame, optiland.psf.VectorialHuygensPSF | optiland.psf.ScalarHuygensPSF]#
Calculate the Huygens Point Spread Function (PSF) at the retina surface.
- Parameters:
- backendOptilandBackend
Reference to the Optiland backend.
- field_coordinatetuple[float, float], optional
The field coordinate (x, y) in mm. If None, the first field in Optiland is used. Defaults to None.
- wavelengthfloat, optional
The wavelength in μm. If None, the first wavelength in Optiland is used. Defaults to None.
- field_typeLiteral[“angle”, “object_height”], optional
The field type. Either “angle” or “object_height”. Defaults to “angle”. This parameter is only used if field_coordinate is not None.
- pupil_samplingSampleSize | str | int, optional
The size of the ray grid used to sample the pupil, either string (e.g. ‘32x32’) or int (e.g. 32). Defaults to 128.
- image_samplingSampleSize | str | int, optional
The size of the PSF grid, either string (e.g. ‘32x32’) or int (e.g. 32). Defaults to 128.
- Returns:
- DataFrame
The PSF data as a pandas DataFrame.
- VectorialHuygensPSF | ScalarHuygensPSF
The Optiland HuygensPSF object.