Phase rotation functions
C/C++
-
void sdp_phase_rotate_uvw(const sdp_SkyCoord *phase_centre_orig, const sdp_SkyCoord *phase_centre_new, const sdp_Mem *uvw_in, sdp_Mem *uvw_out, sdp_Error *status)
Rotate (u,v,w) coordinates to a new phase centre.
Parameters
uvw_in
anduvw_out
are arrays of packed 3D coordinates.Array dimensions are as follows, from slowest to fastest varying:
uvw_in
is 3D and real-valued, with shape:[ num_times, num_baselines, 3 ]
uvw_out
is 3D and real-valued, with shape:[ num_times, num_baselines, 3 ]
- Parameters:
phase_centre_orig – Original phase centre.
phase_centre_new – New phase centre.
uvw_in – Input baseline (u,v,w) coordinates. Dimensions as above.
uvw_out – Output baseline (u,v,w) coordinates. Dimensions as above.
status – Error status.
-
void sdp_phase_rotate_vis(const sdp_SkyCoord *phase_centre_orig, const sdp_SkyCoord *phase_centre_new, const double channel_start_hz, const double channel_step_hz, const sdp_Mem *uvw, const sdp_Mem *vis_in, sdp_Mem *vis_out, sdp_Error *status)
Rotate visibilities to a new phase centre.
Parameter
uvw
is an array of packed 3D coordinates.Array dimensions are as follows, from slowest to fastest varying:
uvw
is 3D and real-valued, with shape:[ num_times, num_baselines, 3 ]
vis_in
is 4D and complex-valued, with shape:[ num_times, num_baselines, num_channels, num_pols ]
vis_out
is 4D and complex-valued, with shape:[ num_times, num_baselines, num_channels, num_pols ]
- Parameters:
phase_centre_orig – Original phase centre.
phase_centre_new – New phase centre.
channel_start_hz – Frequency of first channel, in Hz.
channel_step_hz – Frequency increment between channels, in Hz.
uvw – Original baseline (u,v,w) coordinates, in metres. Dimensions as above.
vis_in – Input visibility data. Dimensions as above.
vis_out – Output visibility data. Dimensions as above.
status – Error status.
Python
- ska_sdp_func.visibility.phase_rotate_uvw(phase_centre_orig, phase_centre_new, uvw_in, uvw_out)
Rotate (u,v,w) coordinates to a new phase centre.
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
uvw_in
anduvw_out
are arrays of packed 3D coordinates.Array dimensions must be as follows:
uvw_in
is 3D and real-valued, with shape:[ num_times, num_baselines, 3 ]
uvw_out
is 3D and real-valued, with shape:[ num_times, num_baselines, 3 ]
- Parameters:
- ska_sdp_func.visibility.phase_rotate_vis(phase_centre_orig, phase_centre_new, channel_start_hz, channel_step_hz, uvw, vis_in, vis_out)
Rotate visibilities to a new phase centre.
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 parameter
uvw
is an array of packed 3D coordinates.Array dimensions must be as follows:
uvw
is 3D and real-valued, with shape:[ num_times, num_baselines, 3 ]
vis_in
is 4D and complex-valued, with shape:[ num_times, num_baselines, num_channels, num_pols ]
vis_out
is 4D and complex-valued, with shape:[ num_times, num_baselines, num_channels, num_pols ]
- Parameters:
phase_centre_orig (SkyCoord, or astropy.coordinates.SkyCoord) – Original phase centre.
phase_centre_new (SkyCoord, or astropy.coordinates.SkyCoord) – New phase centre.
channel_start_hz (float) – Frequency of first channel, in Hz.
channel_step_hz (float) – Frequency incremenet between channels, in Hz.
uvw (numpy.ndarray or cupy.ndarray) – Original baseline (u,v,w) coordinates, in metres.
vis_in (numpy.ndarray or cupy.ndarray) – Input visibility data.
vis_out (numpy.ndarray or cupy.ndarray) – Output visibility data.