ivis.utils.dcasacore

Measurement Set I/O Utilities

This module provides tools for extracting and filtering visibility data from radio interferometric Measurement Sets (MS), either in serial or parallel mode. It supports both casacore.tables and optional dask-ms backends.

Functions

  • phasecenter_casacore(ms)

  • read_channel_casacore(...)

  • readmsl(...) / readmsl_no_parallel(...)

Returned data are stored in a VisData dataclass containing visibility coordinates, data, noise estimates, beam indices, and sky positions.

Author: Antoine Marchal

Functions

phasecenter_casacore(ms)

Extracts the phase center (RA/Dec) from the FIELD table of a Measurement Set.

phasecenter_dask(ms)

(Dask version) Extracts the phase center from FIELD table of MS using dask-ms.

process_ms(ms, uvmin, uvmax, ...)

Process a single MS file and return the extracted data.

read_channel_casacore(ms_path, uvmin, uvmax, ...)

Read a single frequency channel from a Measurement Set using casacore.tables.

readms_dask(ms_path, uvmin, uvmax, chunks, ...)

(Obsolete) Reads a single channel from an MS using dask-ms and filters baselines.

readmsl(msl, uvmin, uvmax, target_frequency, ...)

Parallelized version of readmsl using ProcessPoolExecutor.

readmsl_no_parallel(msl, uvmin, uvmax, ...)

Classes

VisData(uu, vv, ww, sigma, data, beam, ...)

class ivis.utils.dcasacore.VisData(uu, vv, ww, sigma, data, beam, coords, frequency, velocity)[source]

Bases: object

beam: ndarray
coords: ndarray
data: ndarray
frequency: ndarray
sigma: ndarray
uu: ndarray
velocity: ndarray
vv: ndarray
ww: ndarray
ivis.utils.dcasacore.phasecenter_casacore(ms)[source]

Extracts the phase center (RA/Dec) from the FIELD table of a Measurement Set.

ivis.utils.dcasacore.phasecenter_dask(ms)[source]

(Dask version) Extracts the phase center from FIELD table of MS using dask-ms.

ivis.utils.dcasacore.process_ms(ms, uvmin, uvmax, target_frequency, target_channel, k)[source]

Process a single MS file and return the extracted data.

ivis.utils.dcasacore.read_channel_casacore(ms_path, uvmin, uvmax, target_frequency, target_channel)[source]

Read a single frequency channel from a Measurement Set using casacore.tables.

Parameters:
  • ms_path (str) – Path to the Measurement Set directory.

  • uvmin (float) – Minimum baseline length in wavelengths.

  • uvmax (float) – Maximum baseline length in wavelengths.

  • target_frequency (Quantity) – Target frequency (in Hz).

  • target_channel (int) – Index of the desired frequency channel.

Returns:

  • freq (float) – Extracted channel frequency (Hz).

  • vel (Quantity) – Computed velocity in the LSRK frame.

  • uvw_lambda (ndarray) – (N, 3) array of baseline vectors in units of lambda.

  • sigma_i (ndarray) – Estimated noise.

  • stokes_i (ndarray) – Stokes I visibilities.

  • ra_hms, dec_dms (str) – RA/Dec of phase center in HMS/DMS string format.

ivis.utils.dcasacore.readms_dask(ms_path, uvmin, uvmax, chunks, target_frequency)[source]

(Obsolete) Reads a single channel from an MS using dask-ms and filters baselines.

ivis.utils.dcasacore.readmsl(msl, uvmin, uvmax, target_frequency, target_channel, n_workers)[source]

Parallelized version of readmsl using ProcessPoolExecutor.

ivis.utils.dcasacore.readmsl_no_parallel(msl, uvmin, uvmax, target_frequency, target_channel)[source]