make_l1

romanisim.l1.make_l1(counts, read_pattern, read_noise=None, pedestal=None, pedestal_extra_noise=None, rng=None, seed=None, gain=None, inv_linearity=None, crparam=None, persistence=None, tstart=None, saturation=None)

Make an L1 image from a total electrons image.

This apportions the total electrons among the different resultants and adds some instrumental effects (linearity, IPC, CRs, persistence, …).

Parameters:
countsgalsim.Image

Total electrons delivered to each pixel

read_patternint or list[list]

MA table number or list of lists giving indices of reads entering each resultant.

read_noisenp.ndarray[ny, nx] (float) or float

Read noise in DN entering into each read

pedestalnp.ndarray[ny, nx] (float) or float

Reset level in electrons

pedestal_extra_noisenp.ndarray[ny, nx] (float) or float

Extra noise in electrons entering into each pixel (i.e., degenerate with pedestal)

rnggalsim.BaseDeviate

Random number generator to use

seedint, optional

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

gainfloat or np.ndarray[float], optional

Gain in electron/DN for converting electrons to DN

inv_linearityromanisim.nonlinearity.NL, optional

Object describing the inverse non-linearity corrections.

crparamdict, optional

Keyword arguments to romanisim.cr.simulate_crs. If None, no cosmic rays are simulated.

persistenceromanisim.persistence.Persistence, optional

Persistence instance describing persistence-affected pixels

tstartastropy.time.Time, optional

Time of exposure start

saturationfloat, optional

Saturation level in DN

Returns:
l1np.ndarray[n_resultant, ny, nx]

Resultants image array in DN including systematic effects

dqnp.ndarray[n_resultant, ny, nx]

DQ array marking saturated pixels and cosmic rays