PhotonTransferCurveExtractTask

PhotonTransferCurveExtractTask constructs a photon transfer curve (PTC) dataset from a single pair of flat field exposures.

Processing summary

PhotonTransferCurveExtractTask runs these operations:

  1. Pairs exposures together by either exposure time (the default) or by exposure id (in the case where the exposure time does not track with the observed flux).

  2. Measures the mean, variances, and covariances from the difference of the pair of exposures.

  3. Persists these results in a set of partial PTC datasets.

Python API summary

from lsst.cp.pipe.ptc.cpExtractPtcTask import PhotonTransferCurveExtractTask
classPhotonTransferCurveExtractTask(*, config=None, log=None, initInputs=None, **kwargs)

Task to measure covariances from flat fields...

attributeconfig

Access configuration fields and retargetable subtasks.

methodrun(inputExp, inputDims, taskMetadata)

Measure covariances from difference of flat pairs...

See also

See the PhotonTransferCurveExtractTask API reference for complete details.

Retargetable subtasks

No subtasks.

Configuration fields

binSize

Default
1
Field type

int Field

Bin the image by this factor in both dimensions.

connections

Data type

lsst.pipe.base.config.Connections

Field type

ConfigField

Configurations describing the connections of the PipelineTask to datatypes

detectorMeasurementRegion

Default
'AMP'
Field type

str ChoiceField (optional)

Choices
'AMP'

Amplifier of the detector.

'FULL'

Full image.

None

Field is optional

Region of each exposure where to perform the calculations (amplifier or full image).

doGain

Default
True
Field type

bool Field

Calculate a gain per input flat pair.

edgeMaskLevel

Default
'DETECTOR'
Field type

str ChoiceField (optional)

Choices
'DETECTOR'

Mask only the edges of the full detector.

'AMP'

Mask edges of each amplifier.

None

Field is optional

Mask edge pixels in which coordinate frame: DETECTOR or AMP?

gainCorrectionType

Default
'FULL'
Field type

str ChoiceField (optional)

Choices
'NONE'

No correction.

'SIMPLE'

First order correction.

'FULL'

Second order correction.

None

Field is optional

Correction type for the gain.

maskNameList

Default
['SUSPECT', 'BAD', 'NO_DATA', 'SAT']
Field type

str ListField

Mask list to exclude from statistics calculations.

matchByExposureId

Default
False
Field type

bool Field

Should exposures be matched by ID rather than exposure time?

maxMeanSignal

Default
{'ALL_AMPS': 1000000.0}
Field type

DictField

Key type

str

Value type

float

Maximum values (inclusive) of mean signal (in ADU) below which to consider, per amp. The same cut is applied to all amps if this dictionary is of the form {‘ALL_AMPS’: value}

maximumRangeCovariancesAstier

Default
8
Field type

int Field

Maximum range of covariances as in Astier+19

minMeanSignal

Default
{'ALL_AMPS': 0.0}
Field type

DictField

Key type

str

Value type

float

Minimum values (inclusive) of mean signal (in ADU) per amp to use. The same cut is applied to all amps if this parameter [dict] is passed as {‘ALL_AMPS’: value}

minNumberGoodPixelsForCovariance

Default
10000
Field type

int Field

Minimum number of acceptable good pixels per amp to calculate the covariances (via FFT or direclty).

nIterSigmaClipPtc

Default
3
Field type

int Field

Number of sigma-clipping iterations for afwMath.StatisticsControl()

nSigmaClipPtc

Default
5.5
Field type

float Field

Sigma cut for afwMath.StatisticsControl()

numEdgeSuspect

Default
0
Field type

int Field

Number of edge pixels to be flagged as untrustworthy.

saveLogOutput

Default
True
Field type

bool Field

Flag to enable/disable saving of log output for a task, enabled by default.

saveMetadata

Default
True
Field type

bool Field

Flag to enable/disable metadata saving for a task, enabled by default.

thresholdDiffAfwVarVsCov00

Default
1.0
Field type

float Field

If the absolute fractional differece between afwMath.VARIANCECLIP and Cov00 for a region of a difference image is greater than this threshold (percentage), a warning will be issued.