add_read_noise_to_resultants

romanisim.l1.add_read_noise_to_resultants(resultants, tij, read_noise=None, rng=None, seed=None)

Adds read noise to resultants.

The resultants get Gaussian read noise with sigma = sigma_read/sqrt(N). This is not quite right. In reality read noise is added during each read. This is the same as adding to the resultants and dividing by sqrt(N) except for quantization; this additional subtlety is currently ignored.

Note: Pedestal noise is now added in apportion_counts_to_resultants before non-linearity is applied, not here.

Parameters:
resultantsnp.ndarray[n_resultant, ny, nx] (float)

resultants array, giving each of n_resultant resultant images

tijlist[list[float]]

list of lists of readout times for each read entering a resultant

read_noisefloat or np.ndarray[ny, nx] (float)

read noise or read noise image for adding to resultants

rnggalsim.BaseDeviate

Random number generator to use

seedint

Seed for populating RNG. Only used if rng is None.

Returns:
np.ndarray[n_resultant, ny, nx] (float)

resultants with added read noise