exosim.tasks.subexposures.instantaneousReadOut#

Classes#

InstantaneousReadOut

This task implements the instantaneous read out.

Module Contents#

class InstantaneousReadOut[source]#

Bases: exosim.tasks.task.Task

This task implements the instantaneous read out. It loads the readout configuration from a dictionary that is produced by PrepareInstantaneousReadOut. Then it creates the sub-exposure datacube, with sub-exposure for each NDRs in the ramp sampling scheme. Each of these sub-exposures collects more simulation steps, which have their own jitter offset. This Task iterates over the time steps to jitter the focal plane and pile it to the appropriate sub-exposure. The jittering is based on the focal plane oversampling factor. The contributions to each sub-exposures are averaged and the final product is multiplied by its integration time.

Returns:

sub-exposure cached signal class

Return type:

Counts

execute()[source]#

Class execution. It runs on call and executes all the task actions returning the outputs. It requires the input with correct keywords

force_power_conservation(out, parameters, focal_plane, fp_time, osf)[source]#
static getOversampleFactors(fp, ad_osf)[source]#

Used in oversample method to determine the shape of the arrays . :param fp: 2D focal plane :type fp: ndarray :param ad_osf: magnification factor :type ad_osf: int

Returns:

the x and y grids used in the input and output of the oversampling

Return type:

ndarray

static oversample(fp, ad_osf)[source]#

It increases the oversampling factor of the focal plane.

Parameters:
  • fp (ndarray) – 2D focal plane

  • ad_osf (int) – magnification factor

Returns:

2D focal plane sampled with the new oversampling factor

Return type:

ndarray

static jittering_the_focalplane_by_slice(fp, osf, start_index, end_index, x_jit, y_jit, fp_time, time_line_slice, ndr)[source]#

Same as jittering_the_focalplane but to operate only on a single slice fp

Parameters:
  • fp (numpy.array) –

  • osf (int) –

  • start_index (numpy.array) –

  • end_index (numpy.array) –

  • x_jit (numpy.array) –

  • y_jit (numpy.array) –

  • fp_time (numpy.array) –

  • time_line_slice (numpy.array) –

  • ndr (int) –

Return type:

numpy.array

static jittering_the_focalplane(fp, osf, start_index, end_index, x_jit, y_jit, fp_time)[source]#
Parameters:
  • fp (numpy.array) –

  • osf (int) –

  • start_index (numpy.array) –

  • end_index (numpy.array) –

  • x_jit (numpy.array) –

  • y_jit (numpy.array) –

  • fp_time (numpy.array) –

Return type:

numpy.array

static replicating_the_focalplane(fp, index, fp_time)[source]#
Parameters:
Return type:

numpy.ndarray