drift.telescope.cylinder

Classes

CylinderTelescope([latitude, longitude])

Common functionality for all Cylinder Telescopes.

PolarisedCylinderTelescope([latitude, longitude])

A complete class for an Unpolarised Cylinder telescope.

UnpolarisedCylinderTelescope([latitude, ...])

A complete class for an Unpolarised Cylinder telescope.

class drift.telescope.cylinder.CylinderTelescope(latitude=45, longitude=0, **kwargs)

Bases: TransitTelescope

Common functionality for all Cylinder Telescopes.

num_cylinders

The number of cylinders.

Type:

integer

num_feeds

Number of regularly spaced feeds along each cylinder.

Type:

integer

cylinder_width

Width in metres.

Type:

scalar

feed_spacing

Gap between feeds in metres.

Type:

scalar

in_cylinder

Include in cylinder correlations?

Type:

boolean

touching

Are the cylinders touching (no spacing between them)?

Type:

boolean

cylspacing

If not touching this is the spacing in metres.

Type:

scalar

Initialise a telescope object.

Parameters:
  • latitude (scalar) – Position on the Earths surface of the telescope (in degrees).

  • longitude (scalar) – Position on the Earths surface of the telescope (in degrees).

feed_positions_cylinder(cylinder_index)

Get the feed positions on the specified cylinder.

Parameters:

cylinder_index (integer) – The cylinder index, an integer from 0 to self.num_cylinders.

Returns:

feed_positions – The positions in the telescope plane of the receivers. Packed as [[u1, v1], [u2, v2], …].

Return type:

np.ndarray

property fwhm_e

Full width half max of the E-plane antenna beam.

property fwhm_h

Full width half max of the H-plane antenna beam.

property u_width

The approximate physical width (in the u-direction) of the dish/telescope etc, for calculating the maximum (l,m).

property v_width

The approximate physical length (in the v-direction) of the dish/telescope etc, for calculating the maximum (l,m).

class drift.telescope.cylinder.PolarisedCylinderTelescope(latitude=45, longitude=0, **kwargs)

Bases: CylinderTelescope, SimplePolarisedTelescope

A complete class for an Unpolarised Cylinder telescope.

Initialise a telescope object.

Parameters:
  • latitude (scalar) – Position on the Earths surface of the telescope (in degrees).

  • longitude (scalar) – Position on the Earths surface of the telescope (in degrees).

beamx(feed, freq)

Beam for the X polarisation feed.

Parameters:
  • feed (integer) – Index for the feed.

  • freq (integer) – Index for the frequency.

Returns:

beam – Healpix maps (of size [self._nside, 2]) of the field pattern in the theta and phi directions.

Return type:

np.ndarray

beamy(feed, freq)

Beam for the Y polarisation feed.

Parameters:
  • feed (integer) – Index for the feed.

  • freq (integer) – Index for the frequency.

Returns:

beam – Healpix maps (of size [self._nside, 2]) of the field pattern in the theta and phi directions.

Return type:

np.ndarray

class drift.telescope.cylinder.UnpolarisedCylinderTelescope(latitude=45, longitude=0, **kwargs)

Bases: CylinderTelescope, SimpleUnpolarisedTelescope

A complete class for an Unpolarised Cylinder telescope.

Initialise a telescope object.

Parameters:
  • latitude (scalar) – Position on the Earths surface of the telescope (in degrees).

  • longitude (scalar) – Position on the Earths surface of the telescope (in degrees).

beam(feed, freq)

Beam for a particular feed.

Parameters:
  • feed (integer) – Index for the feed.

  • freq (integer) – Index for the frequency.

Returns:

beam – A Healpix map (of size self._nside) of the beam. Potentially complex.

Return type:

np.ndarray