Class MeasurementSet
Defined in File MeasurementSet.h
Class Documentation
-
class MeasurementSet
Provides an abstraction layer around a casacore MeasurementSet that provides all data required for leap calibration. This class additionally stores runtime user specificed variables and cached variabled calculated from the underlying measurement set.
Public Functions
-
MeasurementSet(const std::string &filepath)
-
inline boost::optional<std::string> GetFilepath() const
-
inline bool IsAutoCorrelationsEnabled() const
-
inline const casacore::MeasurementSet *GetMS() const
Gets a non-null pointer to a casacore::MeasurementSet.
- Returns:
const casacore::MeasurementSet*
-
inline const casacore::MSMainColumns *GetMSMainColumns() const
Gets a non-null pointer to a casacore::MSMainColumns.
- Returns:
const casacore::MSMainColumns*
-
inline const casacore::MSColumns *GetMSColumns() const
Gets a non-null pointer to a casacore::MSColumns.
- Returns:
const casacore::MSColumns*
-
uint32_t GetTotalAntennas() const
Gets the total number of antennas including flagged antennas.
-
uint32_t GetNumStations() const
Gets the number of stations excluding flagged stations.
- Returns:
uint32_t
-
uint32_t GetNumBaselines() const
Get the number of baselines in the measurement set using the current autocorrelations setting and including stations not recording rows.
Note
TODO: baselines should always be n*(n-1) / 2 and without autocorrelations
- Returns:
uint32_t
-
uint32_t GetNumPols() const
Get the number of polarizations in the measurement set.
- Returns:
uint32_t
-
uint32_t GetNumChannels() const
Gets the number of channels in the measurement set.
- Returns:
uint32_t
-
uint32_t GetNumRows() const
Gets the number of rows in the measurement set (non-flagged baselines * timesteps).
- Returns:
uint32_t
-
Eigen::VectorXi GetAntenna1() const
Gets the indexes of the first antenna in baselines.
- Returns:
Eigen::VectorXi
-
Eigen::VectorXi GetAntenna2() const
Gets the indexes of the second antenna in baselines.
- Returns:
Eigen::VectorXi
-
uint32_t GetNumTimesteps() const
Gets the total number of timesteps in the measurement set.
- Returns:
uint32_t
-
double GetTimeInterval() const
Gets the time interval of visibilities (assuming the same for all rows)
-
std::vector<double> GetEpochs() const
Get the Epochs object.
- Returns:
std::vector<double>
-
Eigen::VectorXb GetFlaggedBaselines() const
Gets a vector of size nBaselines with a true value at the index of unflagged baselines. Flag is is logical and of channels and polarizations.
- Returns:
Eigen::VectorXb
-
uint32_t GetNumFlaggedBaselines() const
Get the number of baselines that are flagged by the measurement set.
- Returns:
uint32_t
-
Eigen::VectorXb GetShortBaselines(double minimumBaselineThreshold = 0.0) const
Gets a flag vector of short baselines.
- Parameters:
minimumBaselineThreshold – baseline threshold
- Returns:
Eigen::VectorXb
-
uint32_t GetNumShortBaselines(double minimumBaselineThreshold = 0.0) const
Get the number of baselines that below the
minimumBaselineThreshold
.- Parameters:
minimumBaselineThreshold – baseline threshold
- Returns:
uint32_t
-
Eigen::VectorXb GetFilteredBaselines(double minimumBaselineThreshold = 0.0) const
Gets flag vector of filtered baselines that are either flagged or short.
- Parameters:
minimumBaselineThreshold – baseline threshold
- Returns:
Eigen::VectorXb
-
uint32_t GetNumFilteredBaselines(double minimumBaselineThreshold = 0.0) const
Gets the number of baselines that are flagged baselines or short baselines.
- Parameters:
minimumBaselineThreshold – baseline threshold
- Returns:
uint32_t
-
Eigen::Tensor<double, 3> ReadCoords() const
Reads UVW coordinates from the measurement set.
- Returns:
Eigen::Tensor<double, 3>
-
Eigen::Tensor<double, 3> ReadCoords(const Slice ×tepSlice) const
Gets the Coords/UVWs of a specified time interval.
- Parameters:
startTimestep –
intervalTimesteps –
- Returns:
Eigen::Tensor<double, 3> of dimensions (3, baselines, timesteps)
-
Eigen::Tensor<double, 3> ReadCoords(uint32_t startTimestep, uint32_t intervalTimesteps) const
Gets the Coords/UVWs of a specified time interval.
- Parameters:
startTimestep –
intervalTimesteps –
- Returns:
Eigen::Tensor<double, 3> of dimensions (3, baselines, timesteps)
-
Eigen::Tensor<std::complex<double>, 4> ReadVis() const
Gets the visibilities from all baselines, channels and polarizations for the first timestep.
- Returns:
Eigen::Tensor<std::complex<double>, 4> of dimensions (polarizations, channels, baselines, timesteps)
-
Eigen::Tensor<std::complex<double>, 4> ReadVis(const Slice ×tepSlice, const Slice &polarizationSlice = Slice(0, boost::none, 1)) const
Gets visibilities from the specificed dimension slices of a specified timestep slice.
- Parameters:
startTimestep – start timestep index
intervalTimesteps – number of timesteps
- Returns:
Eigen::Tensor<std::complex<double>, 4> of dimensions (polarizations, channels, baselines, timesteps)
-
Eigen::Tensor<std::complex<double>, 4> ReadVis(std::uint32_t startTimestep, std::uint32_t intervalTimesteps, const Slice &polarizationSlice = Slice(0, boost::none, 1)) const
Gets visibilities from the specificed dimension slices of a specified timestep slice.
- Parameters:
startTimestep – start timestep index
intervalTimesteps – number of timesteps
- Returns:
Eigen::Tensor<std::complex<double>, 4> of dimensions (polarizations, channels, baselines, timesteps)
-
Eigen::Tensor<std::complex<double>, 4> ReadVis(uint32_t startTimestep, uint32_t intervalTimesteps, Range<int32_t> polarizationRange, const char *column) const
Reads from file visibilities using specified dimension slices.
- Parameters:
startTimestep –
intervalTimesteps –
polarizationRange –
column –
- Returns:
Eigen::Tensor<std::complex<double>, 4> of dimensions (polarizations, channels, baselines, timesteps)
-
std::set<int32_t> GetMissingAntennas() const
Gets the antennas that are not present in any baselines.
- Returns:
std::set<int32_t>
-
std::set<int32_t> GetFlaggedAntennas() const
Gets the antenna indexes that are either not present in any baselines or are flagged in all of it’s baselines.
Indexes are out of the total antennas
- Returns:
std::set<int32_t>
-
MeasurementSet(const std::string &filepath)