EstimateZernikesBaseTask#

class lsst.ts.wep.task.EstimateZernikesBaseTask(**kwargs)#

Bases: Task

Base class for estimating Zernike coefficients from DonutStamps.

Parameters:

kwargs (Any)

Attributes Summary

wfAlgoConfig

Return the configuration for the WfAlgorithm.

wfAlgoName

Return the WfAlgorithmName enum from the subclass.

Methods Summary

estimateFromIndivStamps(donutStampsExtra, ...)

Estimate Zernike coefficients from individual donut stamps.

estimateFromPairs(donutStampsExtra, ...[, ...])

Estimate Zernike coefficients from pairs of donut stamps.

run(donutStampsExtra, donutStampsIntra[, ...])

Estimate Zernike coefficients (in microns) from the donut stamps.

Attributes Documentation

wfAlgoConfig#

Return the configuration for the WfAlgorithm.

wfAlgoName#

Return the WfAlgorithmName enum from the subclass.

Methods Documentation

estimateFromIndivStamps(donutStampsExtra, donutStampsIntra, wfEstimator, numCores=1)#

Estimate Zernike coefficients from individual donut stamps.

Parameters:
  • donutStampsExtra (DonutStamps) – Extra-focal donut postage stamps.

  • donutStampsIntra (DonutStamps) – Intra-focal donut postage stamps.

  • wfEstimator (WfEstimator) – The wavefront estimator object.

  • numCores (int) – Number of cores to parallelize over.

Return type:

tuple[array, dict]

Returns:

  • np.ndarray – Numpy array of estimated Zernike coefficients. The first axis indexes donut stamps, starting with extrafocal stamps, followed by intrafocal stamps. The second axis indexes the Noll coefficients.

  • dict – Metadata containing extra output from Zernike estimation. Each key is a type of output from the Zernike estimation method selected and contains a list of values, one for each donut.

estimateFromPairs(donutStampsExtra, donutStampsIntra, wfEstimator, numCores=1)#

Estimate Zernike coefficients from pairs of donut stamps.

Parameters:
  • donutStampsExtra (DonutStamps) – Extra-focal donut postage stamps.

  • donutStampsIntra (DonutStamps) – Intra-focal donut postage stamps.

  • wfEstimator (WfEstimator) – The wavefront estimator object.

  • numCores (int) – Number of cores to parallelize over.

Return type:

tuple[array, dict]

Returns:

  • np.ndarray – Numpy array of estimated Zernike coefficients. The first axis indexes donut pairs while the second axis indexes the Noll coefficients.

  • dict – Metadata containing extra output from Zernike estimation. Each key is a type of output from the Zernike estimation method selected and contains a list of values, one for each pair of donuts.

run(donutStampsExtra, donutStampsIntra, numCores=1)#

Estimate Zernike coefficients (in microns) from the donut stamps.

Parameters:
  • donutStampsExtra (DonutStamps) – Extra-focal donut postage stamps.

  • donutStampsIntra (DonutStamps) – Intra-focal donut postage stamps.

  • numCores (int) – Number of cores to parallelize over.

Returns:

A struct containing “zernikes”, which is a 2D numpy array, where the first axis indexes the pair of DonutStamps and the second axis indexes the Zernikes coefficients. The units are microns. Also contains “wfEstInfo”, which is a dictionary containing metadata with extra output from the wavefront estimation algorithm.

Return type:

lsst.pipe.base.Struct