exosim.tasks.radiometric.compute_constant_read_noise#

Classes#

ComputeConstantReadNoise

Computes the read noise for each aperture in the provided table.

Module Contents#

class ComputeConstantReadNoise[source]#

Bases: exosim.tasks.task.Task

Computes the read noise for each aperture in the provided table.

Returns:

  • astropy.table.QTable – The input table with two additional columns: - ‘read_noise_variance’: computed read noise variance for each aperture - ‘read_noise’: computed total read noise for each aperture, normalized by the signal

  • astropy.units.Quantity – Array of read noise values for each aperture (normalized by the signal).

Raises:
  • ValueError – If required keys are missing in the description dictionary.

  • TypeError – If the signal is not a Quantity.

execute()[source]#

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

model(signal, aperture_table, description, multiaccum_gain)[source]#

Compute the read noise for each aperture using the provided parameters.

This method estimates the total read noise based on the per-pixel read noise value, the aperture area, the frame time, and the multiaccum gain. The area of each aperture is taken from the aperture_size column of the input table.

The total read noise variance is computed as:

\[\mathrm{read\_noise\_variance} = G \cdot \sigma_\mathrm{RN}^2 \cdot \frac{A}{t_\mathrm{frame}}\]

where

  • \(G\) is the multiaccum gain,

  • \(\sigma_\mathrm{RN}\) is the read noise per pixel (in ct),

  • \(A\) is the aperture area (in pixels),

  • \(t_\mathrm{frame}\) is the frame time (in seconds).

The read noise is then:

\[\mathrm{read\_noise} = \sqrt{\mathrm{read\_noise\_variance}}\]

The result is normalized by the input signal:

\[\mathrm{read\_noise\_norm} = \frac{\mathrm{read\_noise}}{S}\]

where \(S\) is the signal.

Parameters:
  • signal (astropy.units.Quantity) – Signal array for normalization.

  • aperture_table (astropy.table.QTable or array-like) – Table containing the aperture information with ‘aperture_size’ and ‘frame_time’ columns.

  • description (dict) – Dictionary containing the channel description with detector read noise parameters.

  • multiaccum_gain (float or Quantity) – Multiaccum gain factor.

Returns:

  • astropy.table.QTable – The input table with additional ‘read_noise_variance’ and ‘read_noise’ columns.

  • astropy.units.Quantity – Array of read noise values for each aperture (normalized by the signal).