droop

sofia_redux.instruments.forcast.droop.droop(data, header=None, frac=None, variance=None)[source]

Corrects droop electronic signal

The FORCAST arrays and readout electronics exhibit a linear response offset caused by he presence of a signal on the array. This effect is called “droop” since the result is a reduced signal that is proportional to the total signal in the 15 other pixels in row read from the multiplexer simultaneously with that pixel. The droop correction removes the droop offset by multiplying each pixel by a value derived from the sum of every 16th pixel in the same row all multiplied by an empirically determined offset fraction: droopfrac = 0.0035.

Parameters:
datanumpy.ndarray

Input dara array (nimage, nrow, ncol)

headerastropy.io.fits.header.Header, optional

Input FITS header; will be updated with a HISTORY message

fracfloat, optional

Channel suppression correction factor. If this keyword is not set, the configuration file will be checked for the key FRACDROOP. If not found, the default value of 0.0035 will be used.

variancenumpy.ndarray, optional

Variance array (nimage, nrow, ncol) to update in parallel with the data array. Note that, for now, it is assumed that there is no error in the droop correction. If variance is passed, it will be returned unmodified.

Returns:
numpy.ndarray, numpy.ndarray

The droop corrected array (nimage, nrow, ncol) or (nrow, ncol) propagated variance (nimage, nrow, ncol) or (nrow, ncol)