Visibility

rascil.processing_components.visibility.base Module

Base simple visibility operations, placed here to avoid circular dependencies

Functions

vis_summary(vis)

Return string summarizing the Visibility

copy_visibility(vis[, zero])

Copy a visibility

create_visibility_from_ms(msname[, channum, ...])

Minimal MS to Visibility converter

create_visibility_from_uvfits(fitsname[, ...])

Minimal UVFIT to Visibility converter

create_visibility(config, times, frequency, ...)

Create a Visibility from Configuration, hour angles, and direction of source

phaserotate_visibility(vis, newphasecentre)

Phase rotate from the current phase centre to a new phase centre

export_visibility_to_ms(msname, vis_list[, ...])

Minimal Visibility to MS converter

extend_visibility_to_ms(msname, bvis)

list_ms(msname[, ack])

List sources and data descriptors in a MeasurementSet

generate_baselines(nant)

Generate mapping from antennas to baselines

get_baseline(ant1, ant2, baselines)

Given the antenna numbers work out the baseline number.

rascil.processing_components.visibility.operations Module

Visibility operations

Functions

concatenate_visibility_frequency(bvis_list)

Concatenate a list of Visibility's in frequency

concatenate_visibility(vis_list[, dim])

Concatenate a list of visibilities

subtract_visibility(vis, model_vis[, inplace])

Subtract model_vis from vis, returning new visibility

qa_visibility(vis[, context])

Assess the quality of Visibility

remove_continuum_visibility(vis[, degree, mask])

Fit and remove continuum visibility

divide_visibility(vis, modelvis)

Divide visibility by model forming visibility for equivalent point source

integrate_visibility_by_channel(vis)

Integrate visibility across all channels, returning new visibility

average_visibility_by_channel(vis[, ...])

Average visibility by groups of channels, returning list of new visibility

convert_visibility_to_stokes(vis)

Convert the polarisation frame data into Stokes parameters.

convert_visibility_to_stokesI(vis)

Convert the polarisation frame data into Stokes I dropping other polarisations, return new Visibility

convert_visibility_stokesI_to_polframe(vis)

Convert the Stokes I into full polarisation, return new Visibility

rascil.processing_components.visibility.visibility_fitting Module

Visibility fitting

Functions

fit_visibility(vis, sc[, tol, niter, ...])

Fit a single component to a visibility

rascil.processing_components.visibility.visibility_geometry Module

Functions for calculating geometry of a Visibility

Functions

calculate_visibility_transit_time(bvis[, ...])

Find the UTC time of the nearest transit

calculate_visibility_hourangles(bvis)

Return hour angles for location, utc_time, and direction

calculate_visibility_parallactic_angles(bvis)

Return parallactic angles for location, utc_time, and direction

calculate_visibility_azel(bvis)

Return az el for a location, utc_time, and direction

rascil.processing_components.visibility.visibility_selection Module

Visibility selection functions

Visibility selection can be done using xarray capabilities. For example, for flag all long baselines:

bvis["flags"] = xarray.where(
    bvis["uvdist_lambda"] > 20000.0, bvis["flags"], 1.0
)

To select by row number:

selected_bvis = bvis.isel({"time": slice(5, 7)})

To select by frequency channel:

selected_bvis = bvis.isel({"frequency": slice(1, 3)})

To select by frequency:

selected_bvis = bvis.sel({"frequency": slice(0.9e8, 1.2e8)})

To select by frequency and polarisation:

selected_bvis = bvis.sel(
    {"frequency": slice(0.9e8, 1.2e8), "polarisation": ["XX", "YY"]}
).dropna(dim="frequency", how="all")

In addition there are rascil functions which wrap up more complex selections. To flag all data in uvrange uvmin, uvmax (wavelengths):

bvis = visibility_flag_uvrange(bvis, uvmin, uvmax)

Note that this is not a selection operator but flags the unwanted data instead.

To select all data with dishes/stations with distance from the array centre in a range rmin, rmax (metres):

selected_bvis = visibility_select_r_range(bvis, rmin, rmax)

Functions

visibility_select_uv_range(bvis[, uvmin, uvmax])

Flag in-place all visibility data outside uvrange uvmin, uvmax (wavelengths)

visibility_select_r_range(bvis[, rmin, rmax])

Select a visibility with stations in a range of distance from the array centre