The most simple case (and probably the most usual) is when the calibration data are exposed the same time as the data. Thus the calibration data just require combining, to reduce the noise level, using the routine:
This combines a list of frames together using an associated list of (relative) exposure times. A typical invocation of MAKECAL in which the data has been collected with the same exposure time is:This uses all the frames in the darks/ directory to make a master dark frame. The exposure times given are 1 as the dark frames have exactly the same exposure time as the data. Note that if the input data do not have exactly the same exposure times an exact number of values must be returned, in the same order as the input names.% makecal in='darks/*' expose=1 out=master_dark
Correcting the data for the dark counts, or pre-flash, is performed by the routine:
which just subtracts a scaled master calibration frame from a list.
% calcor in='"rdata/*_debias,ffr/*_debias"' out='*_dark' cal=master_dark
expose=1
Performing pre-flash subtraction is just as straight-forward if the pre-flash calibration frames are exposed for the same time as the pre-flash on the data.
If the calibration data have different exposure times then an explicit list of data frame names is required, together with their associated times (all entered in the correct order). So you might use:
The contents of the text files darkframes.lis and frames.lis are the names of all the frames to be processed. The contents of the files darkexposures.lis and exposures.lis are the exposure times of the calibration data entered in the same order as the names. Of course these names and values could be supplied on the command line, or in response to a prompt -- terminating a line with a `-' forces reprompting for another line of values.% makecal in=^darkframes.lis out=master_dark expose=^darkexposures.lis % calcor in=^frames.lis out='*_dark' cal=master_dark expose=^exposures.lis
CCDPACK