Mathematical background

This section is not intended as a tutorial for radio astronomy. It briefly summarises some key equations, with the intent of illustrating implementation choices made by this package.

Frequencies

This package works only in positive baseband frequencies, and is unaware of heterodyne systems. Where necessary, the signal will need to be mixed to this range before being provided as input. As an example, MeerKAT L-band digitisers receive signal in the range 856–1712 MHz, but mix it down to 0–856 MHz by negating every second sample (the digital equivalent of a 856 MHz mixing signal).

This has implications for delay compensation.

Complex voltages

A wave with frequency \(f\) and wave number \(k\) is considered to have a phasor of

\[e^{(2\pi ft - kz)j}\]

where \(t\) is time and \(z\) is position. In particular, phase measured at a fixed position (an antenna) increases with time.

Polyphase filter bank

A finite impulse response (FIR) filter is applied to the signal to condition the frequency-domain response. The filter is the product of a Hann window (to reduce spectral leakage) and a sinc (to broaden the peak to cover the frequency bin). Specifically, if there are \(n\) output channels and \(t\) taps in the polyphase filter bank, then the filter has length \(w = 2nt\), with coefficients

\[x_i = A\sin^2\left(\frac{\pi i}{w - 1}\right) \operatorname{sinc}\left(w_c\cdot \frac{i + \tfrac 12 - nt}{2n}\right),\]

where \(i\) runs from 0 to \(w - 1\). Here \(A\) is a normalisation factor which is chosen such that \(\sum_i x_i^2 = 1\). This ensures that given white Gaussian noise as input, the expected output power in a channel is the same as the expected input power in a digitised sample. Note that the input and output are treated as integers rather than as fixed-point values.

The tuning parameter \(w_c\) (specified by the --w-cutoff command-line option) scales the width of the response in the frequency domain. The default value is 1, which makes the width of the response (at -6dB) approximately equal the channel spacing.

Correlation products

Given a baseline (p, q) and time-varying channelised voltages \(e_p\) and \(e_q\), the correlation product is the sum of \(e_p \overline{e_q}\) over the accumulation period. This is computed in integer arithmetic and so is lossless except when saturation occurs.

Narrowband

Todo

Document the down-conversion filter

Delay and phase compensation

The delay sign convention is such that a input voltage sample with timestamp \(t\) will have an output timestamp of \(t + d\) (where \(d\) is the delay). In other words, the specified values are amounts by which the incoming signals should be delayed to align them.

To correctly apply delay with sub-sample precision, it is necessary to know the original (“sky”) frequency of the signal, before mixing and aliasing to baseband. The user supplies this indirectly by specifying the phase correction that must be applied at the centre frequency, i.e. \(-2\pi f_c d\), where \(f_c\) is the centre frequency. This calculation is provided by katpoint.delay.DelayCorrection.