argosim.imaging_utils module#

Imaging utils.

This module contains functions to perform radio interferometric imaging.

Authors:

Ezequiel Centofanti <ezequiel.centofanti@cea.fr> Samuel Gullin <gullin@ia.forth.gr>

argosim.imaging_utils.add_noise_uv(vis, uv_mask, sigma=0.1, seed=None)[source]#

Add noise in uv-plane.

Function to add white gaussian noise to the visibilities in the uv-plane.

Parameters:
  • vis (np.ndarray) – The visibilities.

  • mask (np.ndarray) – The uv sampling mask.

  • sigma (float) – The standard deviation of the noise.

  • seed (int) – Optional seed to set.

Returns:

vis – The visibilities with added noise.

Return type:

np.ndarray

argosim.imaging_utils.compute_visibilities_grid(sky_uv, uv_mask)[source]#

Compute visibilities gridded.

Function to compute the visibilities from the fourier sky and the uv sampling mask.

Parameters:
  • sky_uv (np.ndarray) – The sky model in Fourier/uv domain.

  • uv_mask (np.ndarray) – The uv sampling mask.

Returns:

visibilities – Gridded visibilities on the uv-plane.

Return type:

np.ndarray

argosim.imaging_utils.grid_uv_samples(uv_samples, sky_uv_shape, fov_size, mask_type='binary', weights=None)[source]#

Grid uv samples.

Compute the uv sampling mask from the uv samples.

Parameters:
  • uv_samples (np.ndarray) – The uv samples coordinates in meters.

  • sky_uv_shape (tuple) – The shape of the sky model in pixels.

  • fov_size (tuple) – The field of view size in degrees.

  • mask_type (str) – The type of mask to use. Choose between ‘binary’, ‘histogram’ and ‘weighted’.

  • weights (np.ndarray) – The weights to use for the mask type ‘weighted’.

Returns:

  • uv_mask (np.ndarray) – The uv sampling mask.

  • uv_samples_indices (np.ndarray) – The indices of the uv samples in pixel coordinates.

argosim.imaging_utils.simulate_dirty_observation(sky, track, fov_size, multi_band=False, freqs=None, beam=None, sigma=0.2, seed=None)[source]#

Simulate dirty observation.

Function to simulate a radio observation of the sky model from the track uv-samples.

Parameters:
  • sky (np.ndarray) – The sky model image.

  • track (np.ndarray) – The uv sampling points.

  • fov_size (float) – The field of view size in degrees.

  • multi_band (bool) – If True, simulate a multi-band observation.

  • freqs (list) – The frequency list for the multi-band simulation.

  • beam (Beam) – The beam object to apply to the sky, only used in multi-band simulations.

  • sigma (float) – The standard deviation of the noise.

  • seed (int) – Optional seed to set for reproducibility in noise realisation.

Returns:

  • obs (np.ndarray) – The dirty observation(s).

  • dirty_beam (np.ndarray) – The dirty beam(s).

argosim.imaging_utils.sky2uv(sky)[source]#

Sky to uv plane.

Function to compute the Fourier transform of the sky.

Parameters:

sky (np.ndarray) – The sky image.

Returns:

sky_uv – The Fourier transform of the sky.

Return type:

np.ndarray

argosim.imaging_utils.uv2sky(uv)[source]#

Uv to sky.

Function to compute the inverse Fourier transform of the uv plane.

Parameters:

uv (np.ndarray) – The image in the uv/Fourier domain.

Returns:

sky – The image in the sky domain.

Return type:

np.ndarray