hera_sim.noise.ThermalNoise

class hera_sim.noise.ThermalNoise(Tsky_mdl=None, omega_p=None, integration_time=None, channel_width=None, Trx=0, autovis=None, antpair=None, rng=None)[source]

Generate thermal noise based on a sky model.

Parameters:
  • Tsky_mdl (callable, optional) – A function of (lsts, freq) that returns the integrated sky temperature at that time/frequency. If not provided, assumes a power-law temperature with 180 K at 180 MHz and spectral index of -2.5.

  • omega_p (array_like or callable, optional) – If callable, a function of frequency giving the integrated beam area. If an array, same length as given frequencies.

  • integration_time (float, optional) – Integration time in seconds. By default, use the average difference between given LSTs.

  • channel_width (float, optional) – Channel width in Hz, by default the mean difference between frequencies.

  • Trx (float, optional) – Receiver temperature in K

  • autovis (float, optional) – Autocorrelation visibility amplitude. Used if provided instead of Tsky_mdl.

  • antpair (tuple of int, optional) – Antenna numbers for the baseline that noise is being simulated for. This is just used to determine whether to simulate noise via the radiometer equation or to just add a bias from the receiver temperature.

  • rng (np.random.Generator, optional) – Random number generator.

Notes

Considering the SNR in autocorrelations is typically very high, we only add a receiver temperature bias to the autocorrelations.

Methods

__call__(lsts, freqs, **kwargs)

Compute the thermal noise.

get_aliases()

Get all the aliases by which this model can be identified.

get_model(mdl)

Get a model with a particular name (including aliases).

get_models([with_aliases])

Get a dictionary of models associated with this component.

resample_Tsky(lsts, freqs[, Tsky_mdl, Tsky, ...])

Evaluate an array of sky temperatures.

Attributes

attrs_to_pull

Mapping between parameter names and Simulator attributes

is_multiplicative

Whether this systematic multiplies existing visibilities

is_randomized

Whether this systematic contains a randomized component

return_type

Whether the returned value is per-antenna, per-baseline, or the full array