Skip to main content

Karoo Array Telescope primary beam model library

Project description

katbeam

Primary beam model library for the MeerKAT project, providing functionality to compute simplified beam patterns of MeerKAT antennas.

JimBeam class

MeerKAT simplified primary beam models for L and UHF bands

A cosine aperture taper (Essential Radio Astronomy, Condon & Ransom, 2016, page 83, link) is used as a simplified model of the co-polarisation primary beams. While the sidelobe level accuracy may be coincidental, the model attains a good fit to measurements for the mainlobe region. The model is parameterised by measured frequency dependent pointing, and frequency dependent full width half maximum beam widths (FWHM). The MeerKAT beams are measured using holography techniques, and an averaged result at 60 degrees elevation is used here to determine the frequency dependent parameter values. The pointing errors are determined in the aperture plane using standard phase fitting techniques, while the FWHM values are measured in the beam plane along axis-aligned cuts through the beam centers.

Notes:

  1. This model is a simplification.
  2. The actual beam varies per antenna, and depends on environmental factors.
  3. Since per-antenna pointing errors during an observation often exceed 1 arc minute, the nett ‘imaging primary beam’ will be slightly broader, and could be approximated by averaging several individual antenna beams with respective antenna pointing errors inserted.
  4. Depending on the usecase it may be necessary to do reference pointing (or use another technique) to remove the antenna pointing errors during the observation in order to use a beam model successfully.

Request:

As a user, please email the author (mattieu@ska.ac.za) with details about your usecase requirements. This may influence future releases. A general description, what extent of the beams are needed, pixelation, frequency resolution, and accuracy requirements are of interest.

Example usage:

import matplotlib.pylab as plt
from katbeam import JimBeam

def showbeam(beam,freqMHz=1000,pol='H',beamextent=10.):
    margin=np.linspace(-beamextent/2.,beamextent/2.,128)
    x,y=np.meshgrid(margin,margin)
    if pol=='H':
        beampixels=beam.HH(x,y,freqMHz)
    elif pol=='V':
        beampixels=beam.VV(x,y,freqMHz)
    else:
        beampixels=beam.I(x,y,freqMHz)
        pol='I'
    plt.clf()
    plt.imshow(beampixels,extent=[-beamextent/2,beamextent/2,-beamextent/2,beamextent/2])
    plt.title('%s pol beam\nfor %s at %dMHz'%(pol,beam.name,freqMHz))
    plt.xlabel('deg')
    plt.ylabel('deg')

uhfbeam=JimBeam('MKAT-AA-UHF-JIM-2020')
showbeam(uhfbeam,800,'H',10)

History

0.1 (2020-10-15)

  • Initial release of katbeam

Project details


Release history Release notifications | RSS feed

This version

0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for katbeam, version 0.1
Filename, size File type Python version Upload date Hashes
Filename, size katbeam-0.1-py2.py3-none-any.whl (7.9 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size katbeam-0.1.tar.gz (5.8 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page