DFT functions

C/C++

void sdp_dft_point_v00(const sdp_Mem *source_directions, const sdp_Mem *source_fluxes, const sdp_Mem *uvw_lambda, sdp_Mem *vis, sdp_Error *status)

Basic prediction of visibilities from point sources using a DFT.

Deprecated:

Use sdp_dft_point_v01 instead.

This version of the function is compatible with the memory layout of arrays used by RASCIL.

Input parameters source_directions and uvw_lambda are arrays of packed 3D coordinates.

Array dimensions are as follows, from slowest to fastest varying:

  • source_directions is 2D and real-valued, with shape:

    • [ num_components, 3 ]

  • source_fluxes is 3D and complex-valued, with shape:

    • [ num_components, num_channels, num_pols ]

  • uvw_lambda is 4D and real-valued, with shape:

    • [ num_times, num_baselines, num_channels, 3 ]

  • vis is 4D and complex-valued, with shape:

    • [ num_times, num_baselines, num_channels, num_pols ]

Parameters:
  • source_directions – Source direction cosines. Dimensions as above.

  • source_fluxes – Complex source fluxes. Dimensions as above.

  • uvw_lambda – Baseline (u,v,w) coordinates, in wavelengths. Dimensions as above.

  • vis – Output complex visibilities. Dimensions as above.

  • status – Error status.

void sdp_dft_point_v01(const sdp_Mem *source_directions, const sdp_Mem *source_fluxes, const sdp_Mem *uvw, const double channel_start_hz, const double channel_step_hz, sdp_Mem *vis, sdp_Error *status)

Basic prediction of visibilities from point sources using a DFT.

Input parameters source_directions and uvw are arrays of packed 3D coordinates.

Array dimensions are as follows, from slowest to fastest varying:

  • source_directions is 2D and real-valued, with shape:

    • [ num_components, 3 ]

  • source_fluxes is 3D and complex-valued, with shape:

    • [ num_components, num_channels, num_pols ]

  • uvw is 3D and real-valued, with shape:

    • [ num_times, num_baselines, 3 ]

  • vis is 4D and complex-valued, with shape:

    • [ num_times, num_baselines, num_channels, num_pols ]

Parameters:
  • source_directions – Source direction cosines. Dimensions as above.

  • source_fluxes – Complex source fluxes. Dimensions as above.

  • uvw – Baseline (u,v,w) coordinates, in metres. Dimensions as above.

  • channel_start_hz – Frequency of first channel, in Hz.

  • channel_step_hz – Frequency increment between channels, in Hz.

  • vis – Output complex visibilities. Dimensions as above.

  • status – Error status.

Python

ska_sdp_func.visibility.dft_point_v00(source_directions, source_fluxes, uvw_lambda, vis)

Basic prediction of visibilities from point sources using a DFT.

Deprecated since version 0.0.3: Use dft_point_v01() instead.

This version of the function is compatible with the memory layout of arrays used by RASCIL.

Parameters can be either numpy or cupy arrays, but must all be consistent. Computation is performed either on the CPU or GPU as appropriate.

Input parameters source_directions and uvw_lambda are arrays of packed 3D coordinates.

Array dimensions must be as follows:

  • source_directions is 2D and real-valued, with shape:

    • [ num_components, 3 ]

  • source_fluxes is 3D and complex-valued, with shape:

    • [ num_components, num_channels, num_pols ]

  • uvw_lambda is 4D and real-valued, with shape:

    • [ num_times, num_baselines, num_channels, 3 ]

  • vis is 4D and complex-valued, with shape:

    • [ num_times, num_baselines, num_channels, num_pols ]

Parameters:
  • source_directions (numpy.ndarray or cupy.ndarray) – Source direction cosines.

  • source_fluxes (numpy.ndarray or cupy.ndarray) – Complex source flux values.

  • uvw_lambda (numpy.ndarray or cupy.ndarray) – Baseline (u,v,w) coordinates, in wavelengths.

  • vis (numpy.ndarray or cupy.ndarray) – Output complex visibilities.

ska_sdp_func.visibility.dft_point_v01(source_directions, source_fluxes, uvw, channel_start_hz, channel_step_hz, vis)

Basic prediction of visibilities from point sources using a DFT.

Parameters can be either numpy or cupy arrays, but must all be consistent. Computation is performed either on the CPU or GPU as appropriate.

Input parameters source_directions and uvw are arrays of packed 3D coordinates.

Array dimensions must be as follows:

  • source_directions is 2D and real-valued, with shape:

    • [ num_components, 3 ]

  • source_fluxes is 3D and complex-valued, with shape:

    • [ num_components, num_channels, num_pols ]

  • uvw is 3D and real-valued, with shape:

    • [ num_times, num_baselines, 3 ]

  • vis is 4D and complex-valued, with shape:

    • [ num_times, num_baselines, num_channels, num_pols ]

Parameters:
  • source_directions (numpy.ndarray or cupy.ndarray) – Source direction cosines.

  • source_fluxes (numpy.ndarray or cupy.ndarray) – Complex source flux values.

  • uvw (numpy.ndarray or cupy.ndarray) – Baseline (u,v,w) coordinates, in metres.

  • channel_start_hz (float) – Frequency of first channel, in Hz.

  • channel_step_hz (float) – Frequency increment between channels, in Hz.

  • vis (numpy.ndarray or cupy.ndarray) – Output complex visibilities.