astrohack.antenna.telescope

Module Contents

Classes

Telescope

Base telescope class containing IO methods and attributes that are common to all telescopes.

RingedCassegrain

Derived class containing description and methods pertaining to telescope whose panels are distributed in concentric

NgvlaPrototype

Derived class to contain ngVLA prototype specific methods and attributes.

Functions

get_proper_telescope(name: str, antenna_name: str = None)

Retrieve the proper telescope object based on the name

class Telescope[source]

Base telescope class containing IO methods and attributes that are common to all telescopes.

read(self, filename)[source]

Read the telescope object from an X array .zarr telescope configuration file :param filename: name of the input file

read_from_distro(self, name)[source]

Read telescope info from files distributed with astrohack. :param name: Name of the telescope to be read.

Returns

None

write(self, filename)[source]

Write the telescope object to an X array .zarr telescope configuration file :param filename: Name of the output file

class RingedCassegrain[source]

Derived class containing description and methods pertaining to telescope whose panels are distributed in concentric rings from the dish center.

classmethod from_name(cls, name)[source]

Initialize and read from the distro a telescope object. :param name: Name of the telescope to be read.

Returns

RingedCassegrain object

consistency_check(self)[source]

Make a simple check to test that some of its attributes are :returns: None

build_panel_list(self, panel_model, panel_margins)[source]

Construct a list of panel objects according to the telescope description :param panel_model: Type of panel model to be fitted. :param panel_margins: how much of the panel

Returns

List containing RingPanel objects

attribute_pixels_to_panels(self, panel_list, u_axis, v_axis, radius, phi, deviation, mask)[source]

Attribute pixels in deviation image to the panels in the panel_list :param panel_list: The panel list must have been created by build_panel_list for the same instrument :param u_axis: Aperture U axis :param v_axis: Aperture V axis :param radius: Aperture radius map :param phi: Aperture phi angle map :param deviation: Aperture deviation :param mask: Aperture mask

Returns

map of panel attributions

phase_to_deviation(self, u_axis, v_axis, _, phase, wavelength)[source]

Transform phase image to physical deviation image based on wavelength. :param u_axis: Aperture U axis :param v_axis: Aperture V axis :param _: dummy argument for interface compatibility :param phase: Phase image in Radians :param wavelength: Observation wavelength in meters

Returns

Deviation image.

deviation_to_phase(self, u_axis, v_axis, _, deviation, wavelength)[source]

” Transform deviation image to physical phase image based on wavelength. :param u_axis: Aperture U axis :param v_axis: Aperture V axis :param _: dummy argument for interface compatibility :param deviation: Deviation image in meters :param wavelength: Observation wavelength in meters

Returns

Phase image.

class NgvlaPrototype[source]

Derived class to contain ngVLA prototype specific methods and attributes.

get_proper_telescope(name: str, antenna_name: str = None)[source]

Retrieve the proper telescope object based on the name :param name: Name of the telescope :param antenna_name: Name of the antenna, significant for heterogenius arrays.

Returns

A telescope object of one of the proper subclasses