Creates and files a flat field derived from eight frames using object masking to reduce artifacts
It performs a null debiassing, bad-pixel masking, and dark subtraction before combining the sky frames pixel by pixel to to make the flat. See the “Notes” for further details. The parameters of the flat are filed in the index of flats for future selection and use of the flat.
For best results the field observed should contain few stars and no bright ones.
A World Co-ordinate System (WCS) using the AIPS convention is created in the headers should no WCS already exist.
For IRCAM, old headers are reordered and structured with headings before groups of related keywords. The comments have units added or appear in a standard format. Four deprecated headers are removed. FITS-violating headers are corrected. Spurious instrument names are changed to IRCAM3.
The bad-pixel mask applied is $ORAC_DATA_CAL/bpm.
Each dark-subtracted frame has thresholds applied beyond which pixels are flagged as bad. The lower limit is 5 standard deviations below the mode, but constrained to the range −100 to 1. The upper limit is 1000 above the saturation limit for the detector in the mode used.
The flat field is created iteratively. First an approximate flat-field is created by combining normalised sky frames using the median at each pixel. This flat field is applied to the sky frames. Sources within the flat-fielded frames are detected, and masked in the dark-subtracted frames. The first stage is repeated but applied to the masked frames to create the final flat field.
Intermediate frames are deleted.
Sub-arrays are supported.
There are flats for each waveplate angle and also for 90 and 135 degrees, made by
copying the original flat frame. This is to permit both flats made at each angle
(SKY_FLAT_POL_ANGLE), or with the angles combined as here. Each flat is called
flat_<filter>_pol<waveplate_angle>_<group_number>.
The
<waveplate_angle>
is the integer part of the angle, e.g. 22, 67; where
<filter>
is the filter name (excluding the +pol), and
<group_number>
is the frame number of the group. For each subsequent cycle of the recipe, the recipe makes new flats which have a
_c<cycle_number>
suffix, where <cycle_number>
is the number of the cycle, counting from one.
The flats are filed in $ORAC_DATA_OUT/index.flat.
The processing engines are from the Starlink packages Ccdpack, Kappa, Figaro, and EXTRACTOR.
Uses the Starlink NDF format.
History is recorded within the data files.
The title of the data is propagated through the intermediate file to the flat.
Error propagation is controlled by the USEVAR parameter.