everybeam::facade

namespace facade

The everybeam facade namespace contains the public facing classes, functions and struct in order to interact with the everybeam library.

Enums

enum class ResponseStrategy

Values:

enumerator kDish
enumerator KPhasedArray
enumerator kUnknown

Functions

std::unique_ptr<Telescope> Load(const casacore::MeasurementSet &ms)

Returns a Telescope struct given a measurement set. Telescope is determined from MeasurementSet meta-data.

xt::xtensor<aocommon::MC2x2, 3> Response(Telescope &telescope, std::span<const int> station_indexes, std::span<const double> frequencies, std::span<const std::pair<double, double>> directions, std::span<const double> time)

Returns an xtensor of jones matrices that contain the telescope responses according to a cartesian product of the input parameters.

Parameters:
  • telescope – a telescope object returned by the load function.

  • station_indexes – the stations for which you want to calculate the responses.

  • frequencies – the frequencies for which you want to calculate the responses.

  • directions – the directions for which you want to calculate the responses in J2000 (rad).

  • time – Time, modified Julian date, UTC, in seconds (MJD(UTC), s). Either one time coupled per direction, or one time to be used for every direction. Can be left empty if the direction type does not require it.

Returns:

A 3D tensor of size [stations][frequencies][directions], holding the calculated Jones matrices.

xt::xtensor<aocommon::MC2x2, 3> Response(Telescope &telescope, std::span<const int> station_indexes, std::span<const double> frequencies, std::span<const vector3r_t> directions, std::span<const double> time)

Returns an xtensor of jones matrices that contain the telescope responses according to a cartesian product of the input parameters.

Parameters:
  • telescope – a telescope object returned by the load function.

  • station_indexes – the stations for which you want to calculate the responses.

  • frequencies – the frequencies for which you want to calculate the responses.

  • directions – the directions for which you want to calculate the responses in ITRF.

  • time – Time, modified Julian date, UTC, in seconds (MJD(UTC), s). Either one time coupled per direction, or one time to be used for every direction. Can be left empty if the direction type does not require it.

Returns:

A 3D tensor of size [stations][frequencies][directions], holding the calculated Jones matrices.

xt::xtensor<aocommon::MC2x2Diag, 3> ArrayFactor(Telescope &telescope, std::span<const int> station_indexes, std::span<const double> frequencies, std::span<const vector3r_t> directions, std::span<const double> time)

Returns an xtensor of jones matrices that contain the telescope array factors according to a cartesian product of the input parameters.

Parameters:
  • telescope – a telescope object returned by the load function.

  • station_indexes – the stations for which you want to calculate the array factors.

  • frequencies – the frequencies for which you want to calculate the array factors.

  • directions – the directions for which you want to calculate the array factors in ITRF.

  • time – Time, modified Julian date, UTC, in seconds (MJD(UTC), s). Either one time coupled per direction, or one time to be used for every direction. Can be left empty if the direction type does not require it.

Returns:

A 3D tensor of size [stations][frequencies][directions], holding the calculated Jones matrices.

xt::xtensor<aocommon::MC2x2Diag, 3> ArrayFactor(Telescope &telescope, std::span<const int> station_indexes, std::span<const double> frequencies, std::span<const std::pair<double, double>> directions, std::span<const double> time)

Returns an xtensor of jones matrices that contain the telescope array factors according to a cartesian product of the input parameters.

Parameters:
  • telescope – a telescope object returned by the load function.

  • station_indexes – the stations for which you want to calculate the array factors.

  • frequencies – the frequencies for which you want to calculate the array factors.

  • directions – the directions for which you want to calculate the array factors in J2000 (rad).

  • time – Time, modified Julian date, UTC, in seconds (MJD(UTC), s). Either one time coupled per direction, or one time to be used for every direction. Can be left empty if the direction type does not require it.

Returns:

A 3D tensor of size [stations][frequencies][directions], holding the calculated Jones matrices.

struct Antenna
#include <antenna.h>
struct Telescope
#include <telescope.h>

Telescope struct, a public facing struct that holds all the required information in order to calculate the beam response for supported telescopes.