OpdMetrology¶
- class lsst.ts.imsim.OpdMetrology¶
Bases:
object
Initialization of OPD metrology class.
OPD: Optical path difference.
Attributes Summary
Methods Summary
calc_fwhm_eff
(pssn)Calculate the effective FWHM.
calc_gq_value
(value_list)Calculate the GQ value.
calc_pssn
(wavelength_in_um[, opd_fits_file, ...])Calculate the PSSN based on OPD map.
Get the default field X, Y of LSST WFS on GQ.
get_zk_from_opd
([opd_fits_file, opd_map, ...])Get the wavefront error of OPD in the basis of annular Zernike polynomials.
rm_piston_tip_tilt_from_opd
([opd_fits_file, ...])Remove the piston (z1), x-tilt (z2), and y-tilt (z3) from the OPD map.
Set default values for LSST WFS field X, Y and weighting ratio.
set_wgt_and_field_xy_of_gq
(cam_type)Set the GQ weighting ratio and field X, Y.
Attributes Documentation
- wt¶
Methods Documentation
- calc_fwhm_eff(pssn: float) float ¶
Calculate the effective FWHM.
FWHM: Full width at half maximum. PSSN: Normalized point source sensitivity.
Parameters¶
- pssnfloat
PSSN value.
Returns¶
- float
Effective FWHM.
- calc_gq_value(value_list: list[float] | numpy.ndarray) float ¶
Calculate the GQ value.
GQ: Gaussian quadrature
Parameters¶
- value_listlist or numpy.ndarray
List of value (PSSN, effective FWHM, dm5, ellipticity).
Returns¶
- float
GQ value.
Raises¶
- ValueError
Length of wt ratio != length of value list.
- calc_pssn(wavelength_in_um: float, opd_fits_file: str | None = None, opd_map: numpy.ndarray | None = None, zen: int = 0, debug_level: int = 0) float ¶
Calculate the PSSN based on OPD map.
PSSN: Normalized point source sensitivity. OPD: Optical path difference.
Parameters¶
- wavelength_in_umfloat
Wavelength in microns.
- opd_fits_filestr, optional
OPD FITS file. Units need to be microns. (the default is None.)
- opd_mapnumpy.ndarray, optional
OPD map data. Units need to be microns. (the default is None.)
- zenfloat, optional
Telescope zenith angle in degree. (the default is 0.)
- debug_levelint, optional
Debug level. The higher value gives more information. (the default is 0.)
Returns¶
- float
Calculated PSSN.
- get_default_lsst_wfs_gq() tuple[list[float], list[float], list[int]] ¶
Get the default field X, Y of LSST WFS on GQ.
WFS: Wavefront sensor. GQ: Gaussian quadrature
Returns¶
- list
Field X in degree.
- list
Field Y in degree.
- list
Detector IDs of extra-focal sensor in raft.
- get_zk_from_opd(opd_fits_file: str | None = None, opd_map: numpy.ndarray | None = None, zk_terms: int = 22, obscuration: float = 0.61) tuple[numpy.ndarray, numpy.ndarray, numpy.ndarray, numpy.ndarray] ¶
Get the wavefront error of OPD in the basis of annular Zernike polynomials.
OPD: Optical path difference.
Parameters¶
- opd_fits_filestr, optional
OPD FITS file. (the default is None.)
- opd_mapnumpy.ndarray, optional
OPD map data. (the default is None.)
- zk_termsint, optional
Number of terms of annular Zk (z1-z22 by default). (the default is 22.)
- obscurationfloat, optional
Obscuration of annular Zernike polynomial. (the default is 0.61.)
Returns¶
- numpy.ndarray
Annular Zernike polynomials. For imSim OPD, the unit is nm.
- numpy.ndarray
OPD map.
- numpy.ndarray
Meshgrid x in OPD map.
- numpy.ndarray
Meshgrid y in OPD map.
Raises¶
- ValueError
The x, y dimensions of OPD are different.
- rm_piston_tip_tilt_from_opd(opd_fits_file: str | None = None, opd_map: numpy.ndarray | None = None) tuple[numpy.ndarray, numpy.ndarray, numpy.ndarray] ¶
Remove the piston (z1), x-tilt (z2), and y-tilt (z3) from the OPD map.
OPD: Optical path difference.
Parameters¶
- opd_fits_filestr, optional
OPD FITS file. (the default is None.)
- opd_mapnumpy.ndarray, optional
OPD map data. (the default is None.)
Returns¶
- numpy.ndarray
OPD map after removing the affection of z1-z3.
- numpy.ndarray
Meshgrid x in OPD map.
- numpy.ndarray
Meshgrid y in OPD map.
- set_default_lsst_wfs_gq() None ¶
Set default values for LSST WFS field X, Y and weighting ratio.