ZernikePSFModel#
- class ctapipe.instrument.ZernikePSFModel(*args: t.Any, **kwargs: t.Any)[source]#
Bases:
PSFModelPSF model based on wavefront reconstruction using Zernike wavefront coefficients.
This model reconstructs the optical wavefront from a set of Zernike polynomial coefficients and computes the point spread function (PSF) by Fourier propagation through the telescope pupil. The resulting PSF naturally includes diffraction and wavefront aberrations and is evaluated for arbitrary field positions by allowing selected Zernike coefficients to vary with the source position in the focal plane.
The model includes:
Zernike polynomials in Noll indexing to describe the optical path difference (OPD) across the telescope pupil. This indexing convention maps the standard radial and azimuthal modes to a 1D sequence, matching industry standards such as Ansys Zemax.
Scalar Fourier optics to propagate the complex pupil field into the focal plane.
Polychromatic averaging over the Cherenkov emission spectrum using a configurable wavelength range and spectral weighting.
Optional Gaussian smoothing to approximate detector and residual instrumental broadening not explicitly included in the wavefront model.
In the current parameterization, field-dependent aberrations are represented by linear coma terms and quadratic astigmatism terms, providing a compact phenomenological description of off-axis optical degradation while retaining a physically motivated wavefront model.
Attributes Summary
Power-law index for Cherenkov spectrum weighting (dN/dλ ∝ λ^-index)
Radial coma growth.
Gaussian smoothing sigma applied to PSF intensity.
Angular width of the square grid used to represent a single point source's PSF, centered on the source position.
Diameter of the telescope pupil as a fraction of the FFT grid size.
Width of the sigmoid taper applied to the pupil edge in normalized pupil-radius units.
Number of samples across the FFT grid used to discretize the pupil.
Maximum wavelength for polychromatic averaging
Minimum wavelength for polychromatic averaging
Number of wavelength samples for polychromatic averaging
Horizontal trefoil.
Spherical.
Tilt X.
Tilt Y.
Defocus.
Astigmatism 45°.
Quadratic astigmatism growth.
Astigmatism 0°.
Quadratic astigmatism growth.
Vertical Coma.
Horizontal Coma.
Vertical trefoil.
Methods Summary
pdf(tel_id, lon, lat, lon0, lat0)Calculates the value of the psf at a given location.
Attributes Documentation
- cherenkov_spectrum_index#
Power-law index for Cherenkov spectrum weighting (dN/dλ ∝ λ^-index)
- coma_radial_growth#
Radial coma growth.
- focal_plane_smoothing_sigma_pix#
Gaussian smoothing sigma applied to PSF intensity.
- noll_max = 11#
- psf_extent#
Angular width of the square grid used to represent a single point source’s PSF, centered on the source position. Must be large enough to contain the full extent of the PSF (including aberration tails) or normalization will be biased low; not the telescope’s camera field of view.
- pupil_diameter_fraction#
Diameter of the telescope pupil as a fraction of the FFT grid size. Smaller values increase focal-plane sampling at the expense of undersampling the pupil, while larger values improve pupil sampling but reduce the field of view and sampling resolution of the computed PSF.
- pupil_edge_softness#
Width of the sigmoid taper applied to the pupil edge in normalized pupil-radius units. Larger values suppress diffraction ringing but slightly blur the effective aperture.
- pupil_size#
Number of samples across the FFT grid used to discretize the pupil. Larger values improve numerical accuracy and PSF sampling at the expense of increased memory usage and computation time.
- wavelength_max#
Maximum wavelength for polychromatic averaging
- wavelength_min#
Minimum wavelength for polychromatic averaging
- wavelength_samples#
Number of wavelength samples for polychromatic averaging
- z10#
Horizontal trefoil.
- z11#
Spherical.
- z2#
Tilt X.
- z3#
Tilt Y.
- z4#
Defocus.
- z5#
Astigmatism 45°.
- z5_theta2#
Quadratic astigmatism growth.
- z6#
Astigmatism 0°.
- z6_theta2#
Quadratic astigmatism growth.
- z7#
Vertical Coma.
- z8#
Horizontal Coma.
- z9#
Vertical trefoil.
Methods Documentation
- pdf(tel_id, lon, lat, lon0, lat0)[source]#
Calculates the value of the psf at a given location.
- Parameters:
- tel_idint
ID of the telescope for which the PSF is evaluated
- lonu.Quantity[angle]
longitude coordinate of the point on the focal plane where the psf is evaluated
- latu.Quantity[angle]
latitude coordinate of the point on the focal plane where the psf is evaluated
- lon0u.Quantity[angle]
longitude coordinate of the point source on the focal plane
- lat0u.Quantity[angle]
latitude coordinate of the point source on the focal plane
- Returns
- ———-
- psfnp.ndarray
value of the PSF at the specified location with the specified position of the point source