SMARTS optical images are processed with the IRAF task CCDPROC using a bias prepared with the IRAF task ZEROCOMBINE and a domeflat or skyflat prepared with the IRAF task FLATCOMBINE. As of November 1, 2006, the SMARTS optical images are processed slightly differently. In order to remove the low-level horizontal "banding" that we have seen at times during the last six months, the overscan is now fit with a cubic spline function of order 11. All other steps remain the same. The old processing parameters can be found here.

Modified 11/01/2006
 
===============================================================================
Ten biases are taken each night and are combined into a single
bias frame using the IRAF task ZEROCOMBINE.

The IRAF task ZEROCOMBINE parameters are set as follows:

                                   I R A F  
                    Image Reduction and Analysis Facility
PACKAGE = ccdred
   TASK = zerocombine
    
input   =                       List of zero level images to combine
(output =                 ZERO) Output zero level name
(combine=              average) Type of combine operation
(reject =               minmax) Type of rejection
(ccdtype=                     ) CCD image type to combine
(process=                   no) Process images before combining?
(delete =                   no) Delete input images after combining?
(clobber=                   no) Clobber existing output image?
(scale  =                 none) Image scaling
(statsec=                     ) Image section for computing statistics
(nlow   =                    1) minmax: Number of low pixels to reject
(nhigh  =                    1) minmax: Number of high pixels to reject
(nkeep  =                    1) Minimum to keep (pos) or maximum to reject(neg)
(mclip  =                  yes) Use median in sigma clipping algorithms?
(lsigma =                   3.) Lower sigma clipping factor
(hsigma =                   3.) Upper sigma clipping factor
(rdnoise=                   0.) ccdclip: CCD readout noise (electrons)
(gain   =                   1.) ccdclip: CCD gain (electrons/DN)
(snoise =                   0.) ccdclip: Sensitivity noise (fraction)
(pclip  =                 -0.5) pclip: Percentile clipping parameter
(blank  =                   0.) Value if there are no pixels
(mode   =                   ql)

===============================================================================

VRI dome flats are observed every night, 10 exposures of each.  

JHK dome flats are observed every third night in rotation.  10 exposures 
are taken at each of the 7 dither positions (dither throw = 40).  10 
additional exposures at each dither position are then taken with the 
dome lamps off.  The final flat at each dither position is the difference 
between the combined lamp-on flat minus the combined lamp-off flat.  

B sky flats are taken due to undesirable 
artifacts present in the B domes.  A minimum of 3 images are taken every 
night weather permitting.  It is required that individual skyflats have different RA and 
DEC values.

In all cases, the individual flats are processed first with CCDPROC for 
the overscan and zero corrections, then combined with FLATCOMBINE.

FLATCOMBINE parameters are set as follows for the SKY flats:

                                   I R A F  
                    Image Reduction and Analysis Facility
PACKAGE = ccdred
   TASK = flatcombine
    
input   =                       List of flat field images to combine
(output =                 FLAT) Output flat field root name
(combine=               median) Type of combine operation
(reject =               minmax) Type of rejection
(ccdtype=                     ) CCD image type to combine
(process=                   no) Process images before combining?
(subsets=                   no) Combine images by subset parameter?
(delete =                   no) Delete input images after combining?
(clobber=                   no) Clobber existing output image?
(scale  =                 mode) Image scaling
(statsec=                     ) Image section for computing statistics
(nlow   =                    1) minmax: Number of low pixels to reject
(nhigh  =                    1) minmax: Number of high pixels to reject
(nkeep  =                    1) Minimum to keep (pos) or maximum to reject(neg)
(mclip  =                  yes) Use median in sigma clipping algorithms?
(lsigma =                   3.) Lower sigma clipping factor
(hsigma =                   3.) Upper sigma clipping factor
(rdnoise=                   0.) ccdclip: CCD readout noise (electrons)
(gain   =                   1.) ccdclip: CCD gain (electrons/DN)
(snoise =                   0.) ccdclip: Sensitivity noise (fraction)
(pclip  =                 -0.5) pclip: Percentile clipping parameter
(blank  =                   1.) Value if there are no pixels
(mode   =                   ql)


FLATCOMBINE parameters are set as follows for the DOME flats:

                                   I R A F  
                    Image Reduction and Analysis Facility
PACKAGE = ccdred
   TASK = flatcombine

input   =                       List of flat field images to combine
(output =                 FLAT) Output flat field root name
(combine=              average) Type of combine operation
(reject =             crreject) Type of rejection
(ccdtype=                     ) CCD image type to combine
(process=                   no) Process images before combining?
(subsets=                   no) Combine images by subset parameter?
(delete =                   no) Delete input images after combining?
(clobber=                   no) Clobber existing output image?
(scale  =                 mode) Image scaling
(statsec=                     ) Image section for computing statistics
(nlow   =                    1) minmax: Number of low pixels to reject
(nhigh  =                    1) minmax: Number of high pixels to reject
(nkeep  =                    1) Minimum to keep (pos) or maximum to reject(neg)
(mclip  =                  yes) Use median in sigma clipping algorithms?
(lsigma =                   3.) Lower sigma clipping factor
(hsigma =                   3.) Upper sigma clipping factor
(rdnoise=                  6.5) ccdclip: CCD readout noise (electrons)
(gain   =                  2.3) ccdclip: CCD gain (electrons/DN)
(snoise =                   0.) ccdclip: Sensitivity noise (fraction)
(pclip  =                 -0.5) pclip: Percentile clipping parameter
(blank  =                   1.) Value if there are no pixels
(mode   =                   ql)

===============================================================================
Images are processed, one filter type at a time, with a bias and a skyflat of 
the corresponding filter type using the IRAF task CCDPROC. The result is a 
processed image, prefixed with the letter "r", that have been OZF'ed 
(overscanned, flattened and zeroed) but not T'ed (trimmed).

When biases are not taken for a given night, the ZEROCOMBINEd bias from the
nearest available night is used instead.  This bias will have already gone
through CCDPROC with images of its same night.
The bias section for use in overscanning was determined by IMPLOT to extend
from less than 3 and more than 14, so [3:14,1:1024]) was chosen as the
overscan strip image section.

When 
contemporaneous skyflats are not available, FLATCOMBINEd skyflats from
previous nights are used instead.  These skyflats will have already been  
processed using their own contemporaneous biases.

The IRAF task CCDPROC parameters are set as follows:

                                   I R A F  
                    Image Reduction and Analysis Facility
PACKAGE = ccdred
   TASK = ccdproc
    
images  =    @in.(filtertype) )   List of CCD images to correct
(output =   @out.(filtertype) ) List of output CCD images
(ccdtype=                     ) CCD image type to correct
(max_cac=                    0) Maximum image caching memory (in Mbytes)
(noproc =                   no) List processing steps only?

(fixpix =                   no) Fix bad CCD lines and columns?
(oversca=                  yes) Apply overscan strip correction?
(trim   =                   no) Trim the image?
(zerocor=                  yes) Apply zero level correction?
(darkcor=                   no) Apply dark count correction?
(flatcor=                  yes) Apply flat field correction?
(illumco=                   no) Apply illumination correction?
(fringec=                   no) Apply fringe correction?
(readcor=                   no) Convert zero level image to readout correction?
(scancor=                   no) Convert flat field image to scan correction?

(readaxi=                 line) Read out axis (column|line)
(fixfile=                     ) File describing the bad lines and columns
(biassec=        [3:14,1:1024]) Overscan strip image section
(trimsec=                     ) Trim data section
(zero   =      ccd(night).bias) Zero level calibration image
(dark   =                     ) Dark count calibration image
(flat   = ccd(night).sky/domeflat(filter) ) Flat field images
(illum  =                     ) Illumination correction images
(fringe =                     ) Fringe correction images
(minrepl=                   1.) Minimum flat field value
(scantyp=            shortscan) Scan type (shortscan|longscan)
(nscan  =                    1) Number of short scan lines

(interac=                   no) Fit overscan interactively?
(functio=              spline3) Fitting function
(order  =                   11) Number of polynomial terms or spline pieces
(sample =                    *) Sample points to fit
(naverag=                    1) Number of sample points to combine
(niterat=                    1) Number of rejection iterations
(low_rej=                   3.) Low sigma rejection factor
(high_re=                   3.) High sigma rejection factor
(grow   =                   0.) Rejection growing radius
(mode   =                   ql)