Primary Beams

WODEN has been written to include stationary primary beams. That means the beam is pointed at a constant azimuth / zenith angle during an observation. These are the beam models available at the moment:

  • None - gains of 1.0, leakages 0.0

  • Gaussian - a frequency dependent Gaussian beam; FWHM can be set by user

  • EDA2 - a single MWA dipole on an infinite ground screen

  • MWA analytic - an analytic model of the MWA primary beam

  • MWA FEE (coarse) - the Fully Embedded Element MWA model (1.28 MHz frequency resolution)

  • MWA FEE (interp) - frequency interpolated MWA FEE model (80 kHz resolution between 167 - 197 MHz)

See below for details on each model.

MWA Fully Embedded Element

The Murchison Widefield Array (MWA, Tingay et al. 2013) has 16 bow-tie dipoles arranged in a 4 by 4 grid as receiving elements, yielding a grating-lobe style primary beam.

WODEN uses the mwa_hyperbeam implementation of the MWA Fully Embedded Element (FEE) Beam pattern (Sokolowski et al. 2017), which to date is the most accurate model of the MWA primary beam. This model is defined in a spherical harmonic coordinate system, which is polarisation-locked to instrumental azimuth / elevation coordinates. WODEN however uses Stokes parameters to define it’s visibilities, so employs the hyperbeam option to rotate the beam about parallactic angle (as calculated using erfa) to align it into the Stokes frame.

Due to convention issues with whether ‘X’ means East-West or North-South, and whether azimuth starts towards North and increase towards East, the rotation inside hyperbeam also applies a reordering of polarisations. For an exhaustive investigation into why this is necessary to obtain the expected Stokes parameters, see polarised_source_and_FEE_beam.ipynb which lives here

I can define the Jones matrix of the primary beam as:

\[\begin{split}\mathbf{J_\mathrm{linear}} = \begin{bmatrix} g_{x} & D_{x} \\ D_{y} & g_{y} \\ \end{bmatrix}.\end{split}\]

Here, the subscript \(x\) means a polarisation angle of \(0^\circ\) and \(y\) an angle of \(90^\circ\), \(g\) means a gain term, and \(D\) means a leakage term (so \(x\) means North-South and \(y\) is East-West). Under this definition, a typical zenith-pointing looks like this (after rotation):

../_images/hyperbeam_jones.png

These plots are down to a zenith angle of about 20 deg, with northward at the top. If we assume the sky is totally Stokes I, this will yield linear polarisations (where ‘XX’ is North-South and ‘YY’ is East-West) like this:

../_images/hyperbeam_linear_pols.png

The MWA beam is electronically steered, which can be defined via integer delays and supplied to the MWA FEE beam. run_woden.py can read these directly from an MWA metafits file, or can be directly supplied using the --MWA_FEE_delays argument.

Coarse resolution model --primary_beam=MWA_FEE

The frequency resolution of the default MWA FEE model, which is stored in the file mwa_full_embedded_element_pattern.h5, is 1.28 MHz. If you need a smooth frequency response, this might not be the best option for you, as you’ll end up with something like this plot, which shows the linear Stokes towards an interesting direction as a function of frequency (very low gain but should have a curved response):

../_images/hyperbeam_vs_freq.svg

Interpolated resolution model --primary_beam=MWA_FEE_interp

Recently, Daniel Ung interpolated the spherical harmonic coefficients of the MWA FEE model, to produce a new hdf5 file, MWA_embedded_element_pattern_rev2_interp_167_197MHz.h5. This new file has an 80 kHz resolution, so if look at the frequency behaviour in the same direction as the coarse model shown above:

../_images/hyperbeam_vs_freq_interp.svg

we see that the frequency behaviour of the beam is well described and smooth.

Warning

However, this model is only interpolated between 167 and 197 MHz. Anything below 167 MHz will give the 167 MHz response, and similarly for above 197 MHz.

MWA Analytic

If you want something representative of the MWA beam, which is smooth in frequency, the analytic MWA beam model (copied over from the RTS) is a good option. It lacks the mutual coupling effects present in the FEE model, and is purely real, but when we plot the linear Stokes on the sky we see decent agreement with the FEE beam.

Todo

Capture the actual mathematics behind the model so people can reproduce

../_images/MWAanaly_instrumental_pols.png

EDA2

The 2nd version of the Engineering Development Array (EDA2, Wayth et al. 2017), is an SKA_LOW test station, which swaps the planned logarithmic ‘christmas tree’ dipoles for MWA bow-tie dipoles. Currently, WODEN just assumes a perfect dipole with an infinite ground screen as a beam model. This makes the primary beam entirely real, with no leakage terms. Explicitly, the beam model is

\[\begin{split}\mathcal{G} = 2\sin\left(\pi \frac{2h}{\lambda} \cos(\theta) \right) \\ g_x = \mathcal{G}\arccos\left(\sin(\theta)\cos(\phi)\right) \\ g_y = \mathcal{G}\arccos\left(\sin(\theta)\sin(\phi)\right)\end{split}\]

where \(h\) is the height of the dipole, \(\lambda\) is the wavelength, \(\theta\) is the zenith angle, \(\phi\) is the azimuth angle. I’ve set \(h=0.3\) m.

The beams basically see the whole sky (this image shows some \(\mathbf{J_\mathrm{linear}}\) values at 70 MHz):

../_images/EDA2_jones.png

Note

The EDA2 beam is neither physically nor electronically steered, so it always points towards zenith.

Gaussian

This is a toy case of a symmetric (major = minor) Gaussian primary beam. The beam gets smaller on the sky with increasing frequency, but both polarisations are identical. You can control the pointing of the beam (which remains constant in az/za for a single observation) via an initial RA/Dec pointing (--gauss_ra_point, --gauss_dec_point), and the FWHM of the beam (--gauss_beam_FWHM) at a reference frequency (--gauss_beam_ref_freq).

I’ve implemented this beam by creating a cosine angle coordinate system locked to the initial hour angle and declination of the specified RA,Dec pointing \(l_\mathrm{beam}, m_\mathrm{beam}, n_\mathrm{beam}\). The beam is then calculated as

\[G(l_\mathrm{beam}, m_\mathrm{beam}) = \exp \left( -\left( al_\mathrm{beam}^2 + 2bl_\mathrm{beam}m_\mathrm{beam} + cm_\mathrm{beam}^2 \right) \right)\]

where

\[\begin{split}a = \frac{\cos(\phi_{\mathrm{PA}})^2}{2\sigma_l^2} + \frac{\sin(\phi_{\mathrm{PA}})^2}{2\sigma_m^2} \\ b = -\frac{\sin(2\phi_{\mathrm{PA}})}{4\sigma_l^2} + \frac{\sin(2\phi_{\mathrm{PA}})}{4\sigma_m^2} \\ c = \frac{\sin(\phi_{\mathrm{PA}})^2}{2\sigma_l^2} + \frac{\cos(\phi_{\mathrm{PA}})^2}{2\sigma_m^2}.\end{split}\]

Currently, I have set the position angle of the beam \(\phi_{\mathrm{PA}}=0\) the std \(\sigma_l = \sigma_m\) to be equal, as:

\[\sigma_l = \sigma_m = \frac{\sin(\varphi_0)}{ 2\sqrt{2\ln(2)} }\frac{\nu_0}{\nu}\]

where \(\varphi_0\) is the desired FWHM at reference frequency \(\nu_0\), and \(\nu\) is the frequency to calculate the beam at.

An example of a zenith pointing, with \(\varphi_0 = 10^\circ, \nu_0=100\) MHz looks like:

../_images/Gaussian_jones_zenith.png

Using the same settings with an off-zenith pointing yields:

../_images/Gaussian_jones_offzenith.png

which at least visually looks like we are getting realistic-ish projection effects of the beam towards the horizon.

Note

The machinery is there to have different major / minor axes and a position angle if this is desired. Just open an issue on the github if you want this implemented.