casa
5.7.0-16
|
SolveDataBuffer is a container for VisBuffer2 data and related residual and differentiation results related to generic calibration solving. More...
#include <SolveDataBuffer.h>
Public Member Functions | |
SolveDataBuffer () | |
Generic ctor. More... | |
SolveDataBuffer (const vi::VisBuffer2 &vb) | |
Create from a VisBuffer2. More... | |
SolveDataBuffer (const SolveDataBuffer &sdb) | |
Copy construct current iteration (or reattach). More... | |
~SolveDataBuffer () | |
Destructor. More... | |
SolveDataBuffer & | operator= (const SolveDataBuffer &sdb) |
Assignment. More... | |
bool | Ok () |
Does SDB contain finite weight? More... | |
void | enforceAPonData (const casacore::String &apmode) |
Divide corrected by model NB: disable for now, may not be needed... More... | |
void | enforceSolveWeights (const casacore::Bool pHandOnly) |
Zero flagged weights, and optionally the cross-hand weights. More... | |
void | setFocusChan (const casacore::Int focusChan=-1) |
Set the focus channel (forms references to focus-channel flag/data/model) More... | |
void | sizeResiduals (const casacore::Int &nPar, const casacore::Int &nDiff) |
Size/init/finalize the residuals workspaces. More... | |
void | initResidWithModel () |
void | finalizeResiduals () |
void | updateWorkingFlags () |
Manage working weights. More... | |
void | updateWorkingWeights (casacore::Bool, casacore::Float clamp=0.0) |
void | cleanUp () |
Delete the workspaces. More... | |
casacore::String | polBasis () const |
Return pol basis. More... | |
casacore::Int | nRows () const |
VB2-like data access methods (mostly const) More... | |
casacore::Int | nAntennas () const |
const casacore::Vector< int > & | observationId () const |
const casacore::Vector < casacore::Int > & | arrayId () const |
const casacore::Vector < casacore::Int > & | antenna1 () const |
const casacore::Vector < casacore::Int > & | antenna2 () const |
const casacore::Vector < casacore::Int > & | dataDescriptionIds () const |
const casacore::Vector < casacore::Int > & | spectralWindow () const |
const casacore::Vector < casacore::Int > & | scan () const |
const casacore::Vector < casacore::Double > & | time () const |
const casacore::Vector < casacore::Double > & | timeCentroid () const |
const casacore::Vector < casacore::Int > & | fieldId () const |
casacore::Int | nChannels () const |
const casacore::Vector < casacore::Double > & | freqs () const |
casacore::Double | centroidFreq () const |
casacore::Int | nCorrelations () const |
const casacore::Cube < casacore::Complex > & | visCubeModel () const |
const casacore::Cube < casacore::Complex > & | visCubeCorrected () const |
const casacore::Vector < casacore::Float > & | feedPa () const |
The feedPa. More... | |
casacore::Vector < casacore::Bool > & | flagRow () |
These are not const, because we will generally amend them: More... | |
casacore::Cube< casacore::Bool > & | flagCube () |
casacore::Cube< casacore::Float > & | weightSpectrum () |
casacore::Cube< casacore::Bool > & | infocusFlagCube () |
Access functions. More... | |
const casacore::Cube < casacore::Bool > & | infocusFlagCube () const |
casacore::Cube < casacore::Complex > & | infocusVisCube () |
const casacore::Cube < casacore::Complex > & | infocusVisCube () const |
casacore::Cube< casacore::Float > & | infocusWtSpec () |
const casacore::Cube < casacore::Float > & | infocusWtSpec () const |
casacore::Cube < casacore::Complex > & | infocusModelVisCube () |
const casacore::Cube < casacore::Complex > & | infocusModelVisCube () const |
casacore::Cube< casacore::Float > & | workingWtSpec () |
Working weights and flags const versions return infocus versions if working versions are empty! More... | |
const casacore::Cube < casacore::Float > & | const_workingWtSpec () const |
casacore::Cube< casacore::Bool > & | workingFlagCube () |
const casacore::Cube < casacore::Bool > & | const_workingFlagCube () const |
casacore::Cube < casacore::Complex > & | residuals () |
Workspace for the residual visibilities. More... | |
const casacore::Cube < casacore::Complex > & | residuals () const |
casacore::Cube< casacore::Bool > & | residFlagCube () |
Workspace for flags of the residuals. More... | |
const casacore::Cube < casacore::Bool > & | residFlagCube () const |
casacore::Array < casacore::Complex > & | diffResiduals () |
Workspace for the differentiated residuals. More... | |
const casacore::Array < casacore::Complex > & | diffResiduals () const |
void | reportData () |
Print out data, weights, flags for debugging purposes. More... | |
Protected Member Functions | |
void | initFromVB (const vi::VisBuffer2 &vb) |
Handle copy from the input VB2. More... | |
SolveDataBuffer is a container for VisBuffer2 data and related residual and differentiation results related to generic calibration solving.
Public interface
SolveDataBuffer is a Buffer for Solving Data
Definition at line 65 of file SolveDataBuffer.h.
casa::SolveDataBuffer::SolveDataBuffer | ( | ) |
Generic ctor.
casa::SolveDataBuffer::SolveDataBuffer | ( | const vi::VisBuffer2 & | vb | ) |
Create from a VisBuffer2.
casa::SolveDataBuffer::SolveDataBuffer | ( | const SolveDataBuffer & | sdb | ) |
Copy construct current iteration (or reattach).
casa::SolveDataBuffer::~SolveDataBuffer | ( | ) |
Destructor.
|
inline |
Definition at line 121 of file SolveDataBuffer.h.
References vb_.
|
inline |
Definition at line 122 of file SolveDataBuffer.h.
References casa::vi::VisBuffer2::antenna2(), and vb_.
|
inline |
Definition at line 120 of file SolveDataBuffer.h.
References casa::vi::VisBuffer2::arrayId(), and vb_.
|
inline |
Definition at line 131 of file SolveDataBuffer.h.
References centroidFreq_.
void casa::SolveDataBuffer::cleanUp | ( | ) |
Delete the workspaces.
|
inline |
Definition at line 166 of file SolveDataBuffer.h.
References infocusFlagCube(), casacore::ArrayBase::nelements(), residFlagCube(), residFlagCube_p, and workingFlagCube_p.
|
inline |
Definition at line 164 of file SolveDataBuffer.h.
References infocusWtSpec(), casacore::ArrayBase::nelements(), and workingWtSpec_p.
|
inline |
Definition at line 123 of file SolveDataBuffer.h.
References casa::vi::VisBuffer2::dataDescriptionIds(), and vb_.
|
inline |
Workspace for the differentiated residuals.
Definition at line 181 of file SolveDataBuffer.h.
References diffResiduals_p.
|
inline |
Definition at line 182 of file SolveDataBuffer.h.
References diffResiduals_p.
void casa::SolveDataBuffer::enforceAPonData | ( | const casacore::String & | apmode | ) |
Divide corrected by model NB: disable for now, may not be needed...
void divideCorrByModel();
Apply amp-only or phase-only to data
void casa::SolveDataBuffer::enforceSolveWeights | ( | const casacore::Bool | pHandOnly | ) |
Zero flagged weights, and optionally the cross-hand weights.
|
inline |
|
inline |
Definition at line 128 of file SolveDataBuffer.h.
References casa::vi::VisBuffer2::fieldId(), and vb_.
void casa::SolveDataBuffer::finalizeResiduals | ( | ) |
|
inline |
Definition at line 141 of file SolveDataBuffer.h.
References fC_, casa::vi::VisBuffer2::flagCube(), casacore::Cube< T >::reference(), and vb_.
|
inline |
These are not const, because we will generally amend them:
Definition at line 140 of file SolveDataBuffer.h.
References casa::vi::VisBuffer2::flagRow(), fR_, casacore::Vector< T >::reference(), and vb_.
|
inline |
Definition at line 130 of file SolveDataBuffer.h.
References freqs_.
|
inline |
Access functions.
Access to focus-channel slices of the flags, data, and model
Definition at line 149 of file SolveDataBuffer.h.
References infocusFlagCube_p.
Referenced by const_workingFlagCube().
|
inline |
Definition at line 150 of file SolveDataBuffer.h.
References infocusFlagCube_p.
|
inline |
Definition at line 158 of file SolveDataBuffer.h.
References infocusModelVisCube_p.
|
inline |
Definition at line 159 of file SolveDataBuffer.h.
References infocusModelVisCube_p.
|
inline |
Definition at line 152 of file SolveDataBuffer.h.
References infocusVisCube_p.
|
inline |
Definition at line 153 of file SolveDataBuffer.h.
References infocusVisCube_p.
|
inline |
Definition at line 155 of file SolveDataBuffer.h.
References infocusWtSpec_p.
Referenced by const_workingWtSpec().
|
inline |
Definition at line 156 of file SolveDataBuffer.h.
References infocusWtSpec_p.
|
protected |
Handle copy from the input VB2.
void casa::SolveDataBuffer::initResidWithModel | ( | ) |
|
inline |
Definition at line 118 of file SolveDataBuffer.h.
References nAnt_.
|
inline |
Definition at line 129 of file SolveDataBuffer.h.
References casa::vi::VisBuffer2::nChannels(), and vb_.
|
inline |
Definition at line 132 of file SolveDataBuffer.h.
References casa::vi::VisBuffer2::nCorrelations(), and vb_.
|
inline |
VB2-like data access methods (mostly const)
Definition at line 117 of file SolveDataBuffer.h.
References casa::vi::VisBuffer2::nRows(), and vb_.
|
inline |
Definition at line 119 of file SolveDataBuffer.h.
References casa::vi::VisBuffer2::observationId(), and vb_.
bool casa::SolveDataBuffer::Ok | ( | ) |
Does SDB contain finite weight?
SolveDataBuffer& casa::SolveDataBuffer::operator= | ( | const SolveDataBuffer & | sdb | ) |
Assignment.
casacore::String casa::SolveDataBuffer::polBasis | ( | ) | const |
Return pol basis.
void casa::SolveDataBuffer::reportData | ( | ) |
Print out data, weights, flags for debugging purposes.
|
inline |
Workspace for flags of the residuals.
Definition at line 177 of file SolveDataBuffer.h.
References residFlagCube_p.
Referenced by const_workingFlagCube().
|
inline |
Definition at line 178 of file SolveDataBuffer.h.
References residFlagCube_p.
|
inline |
Workspace for the residual visibilities.
Definition at line 173 of file SolveDataBuffer.h.
References residuals_p.
|
inline |
Definition at line 174 of file SolveDataBuffer.h.
References residuals_p.
|
inline |
Definition at line 125 of file SolveDataBuffer.h.
References casa::vi::VisBuffer2::scan(), and vb_.
void casa::SolveDataBuffer::setFocusChan | ( | const casacore::Int | focusChan = -1 | ) |
Set the focus channel (forms references to focus-channel flag/data/model)
void casa::SolveDataBuffer::sizeResiduals | ( | const casacore::Int & | nPar, |
const casacore::Int & | nDiff | ||
) |
Size/init/finalize the residuals workspaces.
|
inline |
Definition at line 124 of file SolveDataBuffer.h.
References casa::vi::VisBuffer2::spectralWindows(), and vb_.
|
inline |
Definition at line 126 of file SolveDataBuffer.h.
References casa::vi::VisBuffer2::time(), and vb_.
|
inline |
Definition at line 127 of file SolveDataBuffer.h.
References casa::vi::VisBuffer2::timeCentroid(), and vb_.
void casa::SolveDataBuffer::updateWorkingFlags | ( | ) |
Manage working weights.
void casa::SolveDataBuffer::updateWorkingWeights | ( | casacore::Bool | , |
casacore::Float | clamp = 0.0 |
||
) |
|
inline |
Definition at line 134 of file SolveDataBuffer.h.
References vb_, and casa::vi::VisBuffer2::visCubeCorrected().
|
inline |
Definition at line 133 of file SolveDataBuffer.h.
References vb_, and casa::vi::VisBuffer2::visCubeModel().
|
inline |
Definition at line 142 of file SolveDataBuffer.h.
References casacore::Cube< T >::reference(), vb_, casa::vi::VisBuffer2::weightSpectrum(), and wS_.
|
inline |
Definition at line 165 of file SolveDataBuffer.h.
References workingFlagCube_p.
|
inline |
Working weights and flags const versions return infocus versions if working versions are empty!
Definition at line 163 of file SolveDataBuffer.h.
References workingWtSpec_p.
|
private |
Definition at line 206 of file SolveDataBuffer.h.
Referenced by centroidFreq().
|
private |
The correlation types Currently, assumed uniform over rows (private; used only by polBasis, currently)
Definition at line 211 of file SolveDataBuffer.h.
|
private |
Definition at line 237 of file SolveDataBuffer.h.
Referenced by diffResiduals().
|
private |
Definition at line 219 of file SolveDataBuffer.h.
Referenced by flagCube().
|
private |
The feedPa Currently, assumed uniform (per antenna) over rows.
Definition at line 215 of file SolveDataBuffer.h.
Referenced by feedPa().
|
private |
The current in-focus channel.
Definition at line 224 of file SolveDataBuffer.h.
|
private |
Array reference objects for things in the vb we need to mess with.
Definition at line 218 of file SolveDataBuffer.h.
Referenced by flagRow().
|
private |
The frequencies Currently, assumed uniform over rows.
Definition at line 205 of file SolveDataBuffer.h.
Referenced by freqs().
|
private |
actual storage for the data
Definition at line 227 of file SolveDataBuffer.h.
Referenced by infocusFlagCube().
|
private |
Definition at line 230 of file SolveDataBuffer.h.
Referenced by infocusModelVisCube().
|
private |
Definition at line 229 of file SolveDataBuffer.h.
Referenced by infocusVisCube().
|
private |
Definition at line 228 of file SolveDataBuffer.h.
Referenced by infocusWtSpec().
|
private |
The number of antennas.
Definition at line 201 of file SolveDataBuffer.h.
Referenced by nAntennas().
|
private |
Definition at line 236 of file SolveDataBuffer.h.
Referenced by const_workingFlagCube(), and residFlagCube().
|
private |
Definition at line 235 of file SolveDataBuffer.h.
Referenced by residuals().
|
private |
The underlying VisBuffer2.
Definition at line 198 of file SolveDataBuffer.h.
Referenced by antenna1(), antenna2(), arrayId(), dataDescriptionIds(), fieldId(), flagCube(), flagRow(), nChannels(), nCorrelations(), nRows(), observationId(), scan(), spectralWindow(), time(), timeCentroid(), visCubeCorrected(), visCubeModel(), and weightSpectrum().
|
private |
Definition at line 232 of file SolveDataBuffer.h.
Referenced by const_workingFlagCube(), and workingFlagCube().
|
private |
Definition at line 233 of file SolveDataBuffer.h.
Referenced by const_workingWtSpec(), and workingWtSpec().
|
private |
Definition at line 220 of file SolveDataBuffer.h.
Referenced by weightSpectrum().