everybeam::telescope

namespace telescope
class Alma : public Telescope
#include <alma.h>

Provides the ALMA beam pattern, which is implemented as an Airy disk.

Public Functions

Alma(const casacore::MeasurementSet &ms, const Options &options)
virtual std::unique_ptr<griddedresponse::GriddedResponse> GetGriddedResponse(const aocommon::CoordinateSystem &coordinate_system) const override

Return the gridded response object.

Parameters:

coordinate_system – Coordinate system struct

Returns:

GriddedResponse::Ptr

virtual std::unique_ptr<pointresponse::PointResponse> GetPointResponse(double time) const override

Get the Point Response object.

Parameters:

time – Time, modified Julian date, UTC, in seconds (MJD(UTC), s).

Returns:

std::unique_ptr<pointresponse::PointResponse>

class Dish : public Telescope
#include <dish.h>

This class calculates the a-terms for dishes with a circularly symmetric response.

Public Functions

Dish(const casacore::MeasurementSet &ms, std::unique_ptr<circularsymmetric::Coefficients> coefficients, const Options &options)
virtual std::unique_ptr<griddedresponse::GriddedResponse> GetGriddedResponse(const aocommon::CoordinateSystem &coordinate_system) const override

Return the gridded response object.

Parameters:

coordinate_system – Coordinate system struct

Returns:

GriddedResponse::Ptr

virtual std::unique_ptr<pointresponse::PointResponse> GetPointResponse(double time) const override

Get the Point Response object.

Parameters:

time – Time, modified Julian date, UTC, in seconds (MJD(UTC), s).

Returns:

std::unique_ptr<pointresponse::PointResponse>

inline virtual bool IsHomogeneous() const override
Returns:

Whether the telescope is homogeneous (all stations identical).

inline const std::vector<std::pair<double, double>> &GetFieldPointing() const

Get (ra, dec) pointings of fields.

Returns:

std::vector<std::pair<double, double>> Vector of size number of fields, and (ra, dec) pointings as entries.

inline const std::vector<casacore::MDirection> &GetFieldPointingMDirection() const
inline const circularsymmetric::Coefficients *GetDishCoefficients() const
class Dsa110 : public Telescope
#include <dsa110.h>

Provides the Dsa110 beam pattern, which is implemented as an Airy disk.

Public Functions

Dsa110(const casacore::MeasurementSet &ms, const Options &options)
virtual std::unique_ptr<griddedresponse::GriddedResponse> GetGriddedResponse(const aocommon::CoordinateSystem &coordinate_system) const override

Return the gridded response object.

Parameters:

coordinate_system – Coordinate system struct

Returns:

GriddedResponse::Ptr

virtual std::unique_ptr<pointresponse::PointResponse> GetPointResponse(double time) const override

Get the Point Response object.

Parameters:

time – Time, modified Julian date, UTC, in seconds (MJD(UTC), s).

Returns:

std::unique_ptr<pointresponse::PointResponse>

class LOFAR : public PhasedArray
#include <lofar.h>

LOFAR telescope class.

Public Functions

LOFAR(const casacore::MeasurementSet &ms, const Options &options)

Construct a new LOFAR object.

Parameters:
  • ms – MeasurementSet

  • model – Element Response model

  • options – telescope options

LOFAR(const TelescopeType telescope_type, const StationNode &station_tree, const casacore::MDirection &delay_direction, const casacore::MDirection &tile_beam_direction, const Options &options)
virtual std::unique_ptr<griddedresponse::GriddedResponse> GetGriddedResponse(const aocommon::CoordinateSystem &coordinate_system) const override

Return the gridded response object.

Parameters:

coordinate_system – Coordinate system struct

Returns:

GriddedResponse::Ptr

virtual std::unique_ptr<pointresponse::PointResponse> GetPointResponse(double time) const override

Get the Point Response object.

Parameters:

time – Time, modified Julian date, UTC, in seconds (MJD(UTC), s).

Returns:

std::unique_ptr<pointresponse::PointResponse>

class Lwa : public PhasedArray
#include <lwa.h>

Public Functions

Lwa(const casacore::MeasurementSet &ms, const Options &options)

Construct a new Lwa object.

Parameters:
  • ms – MeasurementSet

  • options – telescope options

class MWA : public Telescope
#include <mwa.h>

Public Functions

MWA(const casacore::MeasurementSet &ms, const Options &options)

Construct a new MWA object.

Parameters:
  • ms – MeasurementSet

  • model – Element Response model

  • options – telescope options

virtual std::unique_ptr<griddedresponse::GriddedResponse> GetGriddedResponse(const aocommon::CoordinateSystem &coordinate_system) const override

Return the gridded response object.

Parameters:

coordinate_system – Coordinate system struct

Returns:

GriddedResponse::Ptr

virtual std::unique_ptr<pointresponse::PointResponse> GetPointResponse(double time) const override

Get the Point Response object.

Parameters:

time – Time, modified Julian date, UTC, in seconds (MJD(UTC), s).

Returns:

std::unique_ptr<pointresponse::PointResponse>

inline virtual bool IsHomogeneous() const override
Returns:

Whether the telescope is homogeneous (all stations identical).

inline casacore::MPosition GetArrayPosition() const
inline const std::array<double, 16> &GetDelays() const
class OSKAR : public PhasedArray
#include <oskar.h>

OSKAR telescope class.

Public Functions

OSKAR(const casacore::MeasurementSet &ms, const Options &options)

Construct an OSKAR object from a Measurement Set.

Parameters:
  • ms – MeasurementSet, containing frequency data, delay direction and pre-applied beam options.

  • optionsTelescope options.

OSKAR(const StationNode &station_tree, casacore::MDirection delay_direction, const Options &options)

Constructs an OSKAR object with the specified meta-data.

Parameters:
  • station_tree – Station tree with positions. See StationNode class.

  • delay_direction – Direction used for delay calculations.

  • optionsTelescope configuration options. See Options struct.

class PhasedArray : public Telescope
#include <phasedarray.h>

PhasedArray telescope class, is parent to OSKAR and LOFAR.

Subclassed by LOFAR, Lwa, OSKAR

Public Functions

inline PhasedArray(const casacore::MeasurementSet &ms, const Options &options)

Constructs a PhasedArray object.

Parameters:
  • ms – MeasurementSet, containing station names and positions.

  • optionsTelescope configuration options.

inline PhasedArray(std::vector<std::unique_ptr<Station>> stations, const Options &options)

Constructs a PhasedArray object with specified station positions.

Parameters:
  • stations – Station list.

  • optionsTelescope configuration options.

virtual std::unique_ptr<griddedresponse::GriddedResponse> GetGriddedResponse(const aocommon::CoordinateSystem &coordinate_system) const override

Return the gridded response object.

Parameters:

coordinate_system – Coordinate system struct

Returns:

GriddedResponse::Ptr

virtual std::unique_ptr<pointresponse::PointResponse> GetPointResponse(double time) const override

Get the Point Response object.

Parameters:

time – Time, modified Julian date, UTC, in seconds (MJD(UTC), s).

Returns:

std::unique_ptr<pointresponse::PointResponse>

inline const Station &GetStation(std::size_t station_idx) const

Get station by index.

Parameters:

station_id – Station index to retrieve.

Returns:

The station with the given index.

inline casacore::MDirection GetDelayDirection() const
inline casacore::MDirection GetTileBeamDirection() const
inline BeamMode GetPreappliedBeamMode() const
inline casacore::MDirection GetPreappliedBeamDirection() const
inline double GetSubbandFrequency() const
inline size_t GetNrChannels() const
inline double GetChannelFrequency(size_t idx) const
class SkaMid : public Telescope
#include <skamid.h>

SKA-MID telescope class.

Public Functions

SkaMid(const casacore::MeasurementSet &ms, const Options &options)
virtual std::unique_ptr<griddedresponse::GriddedResponse> GetGriddedResponse(const aocommon::CoordinateSystem &coordinate_system) const override

Return the gridded response object.

Parameters:

coordinate_system – Coordinate system struct

Returns:

GriddedResponse::Ptr

virtual std::unique_ptr<pointresponse::PointResponse> GetPointResponse(double time) const override

Get the Point Response object.

Parameters:

time – Time, modified Julian date, UTC, in seconds (MJD(UTC), s).

Returns:

std::unique_ptr<pointresponse::PointResponse>

inline const std::vector<std::pair<double, double>> &GetFieldPointing() const

Get (ra, dec) pointings of fields.

Returns:

std::vector<std::pair<double, double>> Vector of size number of fields, and (ra, dec) pointings as entries.

double GetDiameter() const

Diameter of SKA-MID dish (m)

double GetBlockage() const

Blockage of SKA-MID due to receiver (m)

class Telescope
#include <telescope.h>

Telescope class, forming the base class for specific telescopes.

Subclassed by Alma, Dish, Dsa110, MWA, PhasedArray, SkaMid

Public Functions

inline virtual ~Telescope()
virtual std::unique_ptr<griddedresponse::GriddedResponse> GetGriddedResponse(const aocommon::CoordinateSystem &coordinate_system) const = 0

Return the gridded response object.

Parameters:

coordinate_system – Coordinate system struct

Returns:

GriddedResponse::Ptr

virtual std::unique_ptr<pointresponse::PointResponse> GetPointResponse(double time) const = 0

Get the Point Response object.

Parameters:

time – Time, modified Julian date, UTC, in seconds (MJD(UTC), s).

Returns:

std::unique_ptr<pointresponse::PointResponse>

inline virtual bool IsHomogeneous() const
Returns:

Whether the telescope is homogeneous (all stations identical).

inline bool GetIsTimeRelevant() const
inline std::size_t GetNrStations() const
inline Options GetOptions() const
inline void SetTime(double time)
inline double GetTime(double time)