Class Integration

Inheritance Relationships

Derived Type

Class Documentation

class Integration

A container for storing a visibilities tensor for accumulation during phase rotating.

Subclassed by icrar::cuda::HostIntegration

Public Functions

Integration(int integrationNumber, Eigen::Tensor<double, 3> &&uvws, Eigen::Tensor<std::complex<double>, 4> &&visibilities)
bool operator==(const Integration &rhs) const
inline int GetIntegrationNumber() const
inline size_t GetNumPolarizations() const
inline size_t GetNumChannels() const
inline size_t GetNumBaselines() const
inline size_t GetNumTimesteps() const
inline const Eigen::Tensor<double, 3> &GetUVW() const

Gets the UVW object of shape (3, baselines, timesteps)

Returns:

const std::vector<icrar::MVuvw>& uvws

inline const Eigen::Tensor<std::complex<double>, 4> &GetVis() const

Get the Visibilities object of shape (polarizations, channels, baselines, timesteps)

Returns:

Eigen::Tensor<std::complex<double>, 4>& visibilities

inline Eigen::Tensor<std::complex<double>, 4> &GetVis()

Get the Visibilities object of shape (polarizations, channels, baselines, timesteps)

Returns:

Eigen::Tensor<std::complex<double>, 4>& visibilities

Public Static Functions

static Integration CreateFromMS(const icrar::MeasurementSet &ms, int integrationNumber, const Slice &timestepSlice, const Slice &polarizationSlice = Slice(0, boost::none, 1))

Protected Attributes

int m_integrationNumber
Eigen::Tensor<double, 3> m_UVW
Eigen::Tensor<std::complex<double>, 4> m_visibilities

Friends

friend class icrar::cuda::DeviceIntegration