Skip to content

Notes on measurement operator

Luke Pratley edited this page May 16, 2017 · 8 revisions

#Measurement Operator The measurement operator maps between the model of the sky and what the telescope would measure. For a radio interferometric telescope, this is a model of the radio sky and its Fourier coefficients. Ideally, the model of the sky could be Fourier transformed directly to get the coefficients, but this is not computationally possible for large images and many coefficients. As an approximation, an FFT is used, with interpolation of coefficients off the FFT grid as an approximation.

The code

template <class T>
    sopt::LinearTransform<T>
    init_degrid_operator_2d(const utilities::vis_params &uv_vis_input, const t_uint &imsizey,
                            const t_uint &imsizex, const t_real &cell_x, const t_real &cell_y,
                            const t_real &oversample_ratio = 2, const t_uint &power_iters = 100,
                            const t_real &power_tol = 1e-4, const std::string &kernel = "kb",
                            const t_uint Ju = 4, const t_uint Jv = 4,
                            const std::string &ft_plan = "measure", const bool w_term = false,
                            const t_real &energy_chirp_fraction = 1,
                            const t_real &energy_kernel_fraction = 1) {

The vectors uv_vis_input.u, uv_vis_input.v, uv_vis_input.w represent the coordinates in the Fourier domain. For small field of view, we assume that w=0, and the coordinates are on a 2D (u, v) plane.

The uv_vis_input.weights are the weights applied to each measurement. This would be the inverse of the covariance matrix of the measurements, which we assume to be diagonal.

imsizey and imsizex are the height and width of the model image in pixels.

oversample_ratio