wodenpy.array_layout

Ways to create the array layout of the telescope, and methods to precess that array to account for the sky model being in J2000 frame.

create_array_layout

create_array_layout.RTS_PrecessXYZtoJ2000(array_layout: Array_Layout, woden_settings: Woden_Settings_Float | Woden_Settings_Double) Array_Layout[source]

Given the populated array_layout and settings in woden_settings, use RTS functions to precess the array back to J2000, to account for the skymodel being in J2000.

Parameters:
Returns:

The updated array layout with array_layout.ant_X, array_layout.ant_Y, and array_layout.ant_Z precessed back to J2000.

Return type:

Array_Layout

create_array_layout.RTS_precXYZ(rmat: ndarray, x: float, y: float, z: float, lmst: float, lmst2000: float) Tuple[float, float, float][source]

RTS magic for precessing local X,Y,Z from the current time frame back to J2000

Parameters:
  • rmat (np.ndarray) – 2D rotation matrix as output by palpy.prenut

  • x (float) – Local X coord of antenna (tile)

  • y (float) – Local Y coord of antenna (tile)

  • z (float) – Local X coord of antenna (tile)

  • lmst (float) – LST of the array in the current frame

  • lmst2000 (float) – LST of the array in the J2000 frame

Returns:

The precessed X,Y,Z coords

Return type:

Tuple[float, float, float]

create_array_layout.calc_XYZ_diffs(woden_settings: Woden_Settings_Float | Woden_Settings_Double, args: Namespace) Array_Layout[source]

Populates an Array_Layout class with the instrument layout, given the command line arguments. Calculates the differences in X, Y, and Z coordinates between all pairs of antennas in the array.

Parameters:
  • woden_settings (Woden_Settings_Float or Woden_Settings_Double) – An populated Woden_Settings instance

  • args (argparse.Namespace) – The command line arguments checked by wodenpy.wodenpy_setup.check_args

Returns:

  • array_layout

  • - An instance of the Structure class containing the X, Y, and Z differences between all pairs of antennas in the array at each time step.

create_array_layout.enh2xyz(east: float, north: float, height: float, latitude: float) Tuple[float, float, float][source]

Takes local east, north, height coords for a given latitude (radians) and returns local X,Y,Z coords to put in the uvfits antenna table

Parameters:
  • east (float) – Local east coorindate (metres)

  • north (float) – Local north coorindate (metres)

  • height (float) – Local height coorindate (metres)

  • latitude (float) – Latitude of the array - defaults to MWA location (radians)

Returns:

  • X (float) – Local X antenna location

  • Y (float) – Local Y antenna location

  • Z (float) – Local Z antenna location

precession

precession.RTS_Precess_LST_Lat_to_J2000(lst_current: float, latitude_current: float, mjd: float) Tuple[float, float][source]

Convert the current local sidereal time and latitude to the J2000 mean system.

Parameters:
  • lst_current (float) – The current local sidereal time in radians.

  • latitude_current (float) – The current latitude in radians.

  • mjd (float) – The current modified Julian date.

Returns:

lst_J2000, latitude_J2000 – A tuple containing the local sidereal time and latitude in the J2000 mean system, both in radians.

Return type:

Tuple[float, float]