Directory

This directory is designed to to help those familiar with other calibration and imaging packages navigate the Algorithm Reference Library.

Data containers used by ARL

See data_models.memory_data_models for the following definitions:

Create empty data set for observation (a-la makeMS)

  • For Visibility: processing_components.visibility.create_visibility()

  • For BlockVisibility: processing_components.visibility.create_blockvisibility()

Read existing Measurement Set

Casacore must be installed:

  • List contents of a MeasurementSet: processing_components.visibility.list_ms()

  • Creates a list of Visibilities, one per FIELD_ID and DATA_DESC_ID: processing_components.visibility.create_visibility_from_ms()

  • Creates a list of BlockVisibilities, one per FIELD_ID and DATA_DESC_ID: processing_components.visibility.create_blockvisibility_from_ms()

Gridding and degridding

  • Convolutional gridding: processing_library.fourier_transforms.convolutional_grid()

  • Convolutional degridding: processing_library.fourier_transforms.convolutional_degrid()

Visibility weighting and tapering

  • Weighting: processing_components.imaging.weight_visibility()

  • Gaussian tapering: processing_components.imaging.taper_visibility_gaussian()

  • Tukey tapering: processing_components.imaging.taper_visibility_tukey()

Visibility Predict and Invert

  • Predict BlockVisibility or Visibility for Skycomponent processing_components.imaging.predict_skycomponent_visibility()

  • Predict by de-gridding visibilities workflows.serial.imaging_serial.predict_list_serial_workflow()

  • Invert by gridding visibilities workflows.serial.imaging_serial.invert_list_serial_workflow()

Deconvolution

  • Deconvolution processing_components.image.deconvolve_cube() wraps:

  • Restore: processing_components.image.restore_cube()

Calibration

  • Create empty gain table: processing_components.calibration.create_gaintable_from_blockvisibility()

  • Solve for complex gains: processing_components.calibration.solve_gaintable()

  • Apply complex gains: processing_components.calibration.apply_gaintable()

Coordinate transforms

  • Station/baseline (XYZ <-> UVW): processing_library.coordinate_support

  • Source (spherical -> tangent plane): processing_library.coordinate_support

  • Phase rotation: processing_components.visibility.phaserotate_visibility()

Image

  • Image operations: processing_components.image()

  • Import from FITS: processing_components.image.import_image_from_fits()

  • Export from FITS: processing_components.image.export_image_to_fits()

  • Reproject coordinate system: processing_components.image.reproject_image()

  • Smooth image: processing_components.image.smooth_image()

  • FFT: processing_library.image.fft_image()

  • Remove continuum: processing_components.image.remove_continuum_image()

  • Convert polarisation:

  • From Stokes To Polarisation: processing_components.image.convert_stokes_to_polimage()

  • From Polarisation to Stokes: processing_components.image.convert_polimage_to_stokes()

Visibility

  • Append/sum/divide/QA: processing_components.visibility()

  • Remove continuum: processing_components.visibility.remove_continuum_blockvisibility()

  • Integrate across channels: processing_components.visibility.integrate_visibility_by_channel()

  • Coalesce (i.e. BDA) processing_components.visibility.coalesce_visibility()

  • Decoalesce (i.e. BDA) processing_components.visibility.decoalesce_visibility()

Workflows directory

Workflows coordinate processing using the data models, processing components, and processing library. These are high level functions, and are available in arlexecute (i.e. dask) version and sometimes scalar version.

Calibration workflows

  • Calibrate workflow: workflows.arlexecute.calibration.calibrate_list_arlexecute_workflow()

  • Calibrate workflow: workflows.serial.calibration.calibrate_list_serial_workflow()

Imaging workflows

  • Invert: workflows.arlexecute.imaging.invert_list_arlexecute_workflow()

  • Predict: workflows.arlexecute.imaging.predict_list_arlexecute_workflow()

  • Deconvolve: workflows.arlexecute.imaging.deconvolve_list_arlexecute_workflow()

  • Invert: workflows.serial.imaging.invert_list_serial_workflow()

  • Predict: workflows.serial.imaging.predict_list_serial_workflow()

  • Deconvolve: workflows.serial.imaging.deconvolve_list_serial_workflow()

Pipeline workflows

  • ICAL: workflows.arlexecute.pipelines.ical_list_arlexecute_workflow()

  • Continuum imaging: workflows.arlexecute.pipelines.continuum_imaging_list_arlexecute_workflow()

  • Spectral line imaging: workflows.arlexecute.pipelines.spectral_line_imaging_list_arlexecute_workflow()

  • MPCCAL: workflows.arlexecute.pipelines.mpccal_skymodel_list_arlexecute_workflow()

  • ICAL: workflows.serial.pipelines.ical_list_serial_workflow()

  • Continuum imaging: workflows.serial.pipelines.continuum_imaging_list_serial_workflow()

  • Spectral line imaging: workflows.serial.pipelines.spectral_line_imaging_list_serial_workflow()

Simulation workflows

  • Testing and simulation support: workflows.arlexecute.simulation.simulate_list_arlexecute_workflow()

  • Testing and simulation support: workflows.serial.simulation.simulate_list_serial_workflow()

Execution

  • Execution framework (an interface to Dask): wrappers.arlexecute.execution_support.arlexecute()