IARC Acqisition Modes Explained.
1. Supported Modes SINGLE - classic fowler sample mode. DOUBLE - classic fowler sample-pedestal mode. RAMP - A sample up the ramp implemenation. (NOT SUPPORTED BY SPEX) RAW - save all array readouts. (NOT SUPPORTED BY SPEX) terms RESET - A reset readout - the array is readout (pixel-by-pixel) while resetting the array. The array readout time is identical to the samples readouts. The data is not sampled. SAM - A sample readout. This readout is a pixel-by-pixel readout. The data is sampled. PED - a sample readout, but referred to as a pedestal data set. ITIME_NDR - a sample readout. During intergration the array is continuous readout. The ITIME_NDR are readout that are sample, but ignore in order to set the SAM, PED readout to the correct integration times. NRD - In fowler method, the SAM and PED readouts can be repeated in succession. Taking multiple readouts then later averaging them reduces the noise. RO_SEC - The to clock out the array for sampling or pixel-by-pixel resets in seconds. SINGLE The array is reset. (H2RG is pixel-by-pixel reset, Aladdin is global reset) A serial of samples * ndr are added together to form 1 coadd frame. The coadds are summed for the final FITS images. ( RESET [ITIME_NDR] [SAM * NDR] ) * coadd. TBD: The integration time is mesured from the reset to the midpoint of [SAM*NDR]. IARC parameters: -m mode = set to SINGLE -r ndr = NDR value. -c coadd = COADD value. --itime_ndrs N = ITIME_NDR value. ic_readout: n_image_count = ((iarc_setup.n_ndr_count) + iarc_setup.itime_ndrs)*iarc_setup.n_coadd_count; data_handler: coadds all the images. Data stored in int array[]. Single mode timing with pixel-by-pixel reset- H2RG Array Whe pixel-by-pixel reset, the reset is done by clocking thought the array at the same frequency as sampling, except each pixel is reset, rather that sampled. The intergration time between the 1st array pixel and the last array pixel are equal. For multiple NDR the ITIME of the images is the average integration time of the NDR samples. itime = (ITIME_NDR*RO_SEC) + (1.+(NDR-1)/2.)*RO_SEC Single mode timing with global resets - Aladdin The global resets, a relative short clocking pulse is used to reset all the pixel on the array simultaneously. When the array is read out, the actual integration time between the 1st pixel, and the last increase by the readout sampling rate. The itime for a singel readout is the average integration time for of all the pixels. For multiple NDR the ITIME of the images is the average integration time of the NDR samples. itime = (ITIME_NDR*RO_SEC) + (NDR * RO_SEC)/2 DOUBLE The array is reset. (H2RG is pixel-by-pixel reset, Aladdin is global reset) PED samples are summed. (NDR are supported). After the integration time, SAM samples are summed. (NDR are supported). A coadd is SAM-PED. The coadds are summed to produce a FITS 1 image. ( RESET, [PED * NDR], [ITIME_NDR], [SAM * NDR] ) * coadd. The integration is the time between SAM and it corresponding PED frame. IARC parameters: -m mode = set to DOUBLE -r ndr = NDR value. -c coadd = COADD value. --itime_ndrs N = ITIME_NDR value. ic_readout: iarc_setup.n_img_count = ((iarc_setup.n_ndr_count * 2) + iarc_setup.itime_ndrs) *iarc_setup.n_coadd_count; data_handler: image = sumof( ped_ndr , -sam_ndr ) Data stored in int array[]. itime = (ITIME_NDR*RO_SEC) + (NDR * RO_SEC); RAMP The array is reset. A series of readout are used to calculated the slope. The slope values are output as a FITS images (using floats). IARC parameters: -m mode = set to RAMP -r ndr = NDR value. // Set to 0 --itime_ndrs N = ITIME_NDR value. // Use itime_ndrs to setup number of images ic_readout: n_img_count = (iarc_setup.n_ndr_count) + iarc_setup.itime_ndrs; data_handler: add readout used to determine slope. Data stored in float array[]. ASK: maybe, n_img_count = itime_ndrs? Is coadd parameter truly ignored? How about returning: slope, intercept, and estimated 'Image' all as floats. RAW The array is reset. A series of individual readouts are readout and saved. Number of FITS producted are ITIME_NDR. RESET [ITIME_NDR] The integration time of each frame is N*ITIME_NDR(sec) IARC parameters: -m mode = set to RAW -r ndr = NDR value (set this to 0) // set to 0 -c coadd = COADD value. // set to 1 --itime_ndrs N = number image to readout. // use this to set the number of RAW images. ic_readout: n_img_count = (iarc_setup.n_ndr_count + iarc_setup.itime_ndrs) * iarc_setup.n_coadd_count; data_handler: add readout used to determine slope. Data stored in short array[]. ASK: Is coadd parameter truly ignored? Or is coadds a series of RAW?