Source
countsBaseline_p.reference (Vector<Int> (nBaselines, 0)); // number of items summed together for each baseline.
using std::set;
using namespace casacore;
namespace casa {
namespace vi {
namespace avg {
using casa::ms::MsRow;
///////////////////////////////////////////////////////////
//
// VbAvg: Averaging VisBuffer
//
/*
Definition: A baseline sample (baseline for short) is a table row
with a particular (antenna1, antenna2) pair at a particular time.
Averaging does not cross chunk boundaries of the input VI so the
input VI determines what values are averaged together. For example,
if the input VI is allows data from multiple scans into the same chunk
then some averaging across scans can occur; in this case the scan number
of the result will be the scan number of the first baseline instance
seen.
Row-level value treatment
=========================
The average is approximately computed on a per baseline basis:
averaged_baseline (antenna1, antenna2) =
sumOverAveragingInterval (baseline (antenna1, antenna2)) /
nBaselinesFoundInInterval
How row-level values are computed
---------------------------------
Time - Set to time of first baseline making up the average plus
half of the averaging interval.
Antenna1 - Copied from instance of baseline
Antenna2 - Copied from instance of baseline
Feed1 - Copied from instance of baseline
Feed2 - Copied from instance of baseline