casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
casa::RFADiffBase Class Referenceabstract

RFADiffBase: abstract class for deviation-based flagging. More...

#include <RFADiffBase.h>

Inheritance diagram for casa::RFADiffBase:
casa::RFAFlagCubeBase casa::RFABase casa::FlaggerEnums casa::RFADiffMapBase casa::RFAFreqMedian casa::RFATimeMedian

Public Member Functions

 RFADiffBase (RFChunkStats &ch, const casacore::RecordInterface &parm)
 
virtual ~RFADiffBase ()
 
virtual casacore::uInt estimateMemoryUse ()
 This method is called before iterating over a chunk, to inquire the expected memory use. More...
 
virtual casacore::Bool newChunk (casacore::Int &maxmem)
 Called before iterating over a chunk. More...
 
virtual void endChunk ()
 Called once finished with a chunk. More...
 
virtual void startData (bool verbose)
 Called before starting a data pass on a chunk. More...
 
virtual void startDry (bool verbose)
 Called before starting a dry pass on a chunk. More...
 
virtual IterMode iterTime (casacore::uInt it)
 Iteration methods for a data pass. More...
 
virtual IterMode iterDry (casacore::uInt it)
 Iteration method for a dry pass. More...
 
virtual IterMode endData ()
 Called after a pass is completed successfully (i.e., not stopped by start or iter methods). More...
 
virtual IterMode endDry ()
 Called after a dry pass is complete. More...
 
virtual casacore::String getDesc ()
 called to obtain a short description of this RFA More...
 
- Public Member Functions inherited from casa::RFAFlagCubeBase
 RFAFlagCubeBase (RFChunkStats &ch, const casacore::RecordInterface &parm)
 
virtual ~RFAFlagCubeBase ()
 
virtual void startFlag (bool verbose)
 Called before starting the fetch-flags pass. More...
 
virtual void iterFlag (casacore::uInt it)
 Iteration method for a flag pass. More...
 
virtual casacore::String getStats ()
 called (before endChunk()) to obtain a statistics report More...
 
virtual casacore::String getID ()
 
- Public Member Functions inherited from casa::RFABase
 RFABase (RFChunkStats &ch, const casacore::RecordInterface &parm)
 An agent is always constructed from a chunk stats accessor, and a record of parameters. More...
 
virtual ~RFABase ()
 Destructor. More...
 
virtual void init ()
 This method is called after constructing the agent. More...
 
virtual void endFlag ()
 Called after a flag pass is complete. More...
 
virtual void endRows (casacore::uInt)
 Called at end of time chunk. More...
 
virtual IterMode iterRow (casacore::uInt)
 iterRow() is called once per each row in the VisBuffer. More...
 
virtual void printFlaggingReport ()
 
const casacore::Stringname ()
 returns the name of this RFA (set in myname) More...
 
casacore::Bool isActive ()
 returns the active status More...
 
casacore::LogIOlogSink ()
 accessor to a casacore::LogIO for this agent More...
 
virtual casacore::Record getResult ()
 
virtual void finalize ()
 
virtual void initialize ()
 Initialize chunk. More...
 
virtual void initializeIter (casacore::uInt)
 
virtual void finalizeIter (casacore::uInt)
 
virtual void setNAgent (casacore::uInt n)
 
virtual void setOnlySelector (bool only_sel)
 

Static Public Member Functions

static const
casacore::RecordInterface
getDefaults ()
 
- Static Public Member Functions inherited from casa::RFAFlagCubeBase
static const
casacore::RecordInterface
getDefaults ()
 
- Static Public Member Functions inherited from casa::RFABase
static void setIndexingBase (casacore::uInt base)
 static method for setting the indexing base for agent arguments More...
 

Protected Member Functions

void startDataRow (casacore::uInt ifr)
 prepares for a pass over one data row More...
 
casacore::Float setDiff (casacore::uInt ich, casacore::uInt ifr, casacore::Float d, casacore::Bool &flagged=dummy_Bool)
 updates the diff lattice with a value, and performs clipping More...
 
void endDataRow (casacore::uInt ifr)
 ends pass over single data row More...
 
casacore::Float updateSigma ()
 updates noise estimates (sih0), returns the max change More...
 
virtual RFlagWord newCorrMask ()=0
 computes a correlations mask. More...
 
- Protected Member Functions inherited from casa::RFABase
casacore::uInt num (StatEnums which)
 
RFlagWord corrMask ()
 

Protected Attributes

casacore::Double clip_level
 
casacore::Double row_clip_level
 
casacore::Bool disable_row_clip
 
casacore::Bool clipping_rows
 
RFFloatLattice diff
 
FlagCubeIteratorpflagiter
 
RFRowClipper rowclipper
 
casacore::Vector< casacore::Floatdiffrow
 
int idiffrow
 
casacore::Matrix< casacore::Floatsig
 
casacore::Matrix< casacore::Floatsig0
 
casacore::LogicalVector sigupdated
 
- Protected Attributes inherited from casa::RFAFlagCubeBase
RFlagWord corrmask
 mask of active correlations. More...
 
RFFlagCube flag
 flag cube lattice More...
 
- Protected Attributes inherited from casa::RFABase
casacore::uInt nAgent
 
RFChunkStatschunk
 
casacore::Record params
 
casacore::String myname
 
bool only_selector
 
RFlagWord corrmask
 Bit mask of correlations which are used & flagged by this RFA. More...
 
casacore::Bool active
 flag: agent is active for this chunk (set in newChunk) More...
 
casacore::LogIO os
 

Static Protected Attributes

static casacore::Bool dummy_Bool
 

Additional Inherited Members

- Public Types inherited from casa::RFABase
enum  IterMode {
  STOP,
  DRY,
  DATA,
  CONT
}
 iteration modes More...
 
- Public Types inherited from casa::FlaggerEnums
enum  StatEnums {
  POLZN,
  POL,
  CORR,
  CHAN,
  IFR,
  TIME,
  ROW,
  ANT,
  FEED,
  FEEDCORR,
  NONE,
  Num_StatEnums
}
 
enum  PreFlagPolicy {
  FL_HONOR,
  FL_IGNORE,
  FL_RESET
}
 
- Static Protected Member Functions inherited from casa::RFABase
static casacore::uInt indexingBase ()
 global flag indicates that Glish (1-based) indexing is in use for agent arguments More...
 

Detailed Description

RFADiffBase: abstract class for deviation-based flagging.

Intended use:

Internal

Prerequisite

Etymology

Diff = Deviation. Well, almost...

Synopsis

Several flagging algorithms flag by analyzing the deviation w/respect to something at each point. RFADiffBase provides common functions for these classes. It will maintain a lattice of deviations, compute the noise level estimates, and flag points. It will also flag rows with excessive noise level (using RFRowClipper). Derived classes are responsible for computing the deviation.

To Do

Definition at line 79 of file RFADiffBase.h.

Constructor & Destructor Documentation

casa::RFADiffBase::RFADiffBase ( RFChunkStats ch,
const casacore::RecordInterface parm 
)
virtual casa::RFADiffBase::~RFADiffBase ( )
virtual

Member Function Documentation

virtual void casa::RFADiffBase::endChunk ( )
virtual

Called once finished with a chunk.

Reimplemented from casa::RFAFlagCubeBase.

Reimplemented in casa::RFATimeMedian.

virtual IterMode casa::RFADiffBase::endData ( )
virtual

Called after a pass is completed successfully (i.e., not stopped by start or iter methods).

Return value: STOP to stop, DATA for another data pass, DRY for another dry pass.

Reimplemented from casa::RFAFlagCubeBase.

Reimplemented in casa::RFATimeMedian.

void casa::RFADiffBase::endDataRow ( casacore::uInt  ifr)
protected

ends pass over single data row

virtual IterMode casa::RFADiffBase::endDry ( )
virtual

Called after a dry pass is complete.

Reimplemented from casa::RFAFlagCubeBase.

virtual casacore::uInt casa::RFADiffBase::estimateMemoryUse ( )
virtual

This method is called before iterating over a chunk, to inquire the expected memory use.

Should return the max desired memory footprint, in MB. Available physical memory is divided between agents in proportion to their requests.

Reimplemented from casa::RFAFlagCubeBase.

static const casacore::RecordInterface& casa::RFADiffBase::getDefaults ( )
static
virtual casacore::String casa::RFADiffBase::getDesc ( )
virtual

called to obtain a short description of this RFA

Reimplemented from casa::RFAFlagCubeBase.

Reimplemented in casa::RFADiffMapBase, casa::RFAFreqMedian, and casa::RFATimeMedian.

virtual IterMode casa::RFADiffBase::iterDry ( casacore::uInt  )
virtual

Iteration method for a dry pass.

Called once per each time slot. Return value: STOP to finish iterating, CONT/DRY to continue, or DATA to cancel the dry pass and request another data pass.

Reimplemented from casa::RFAFlagCubeBase.

virtual IterMode casa::RFADiffBase::iterTime ( casacore::uInt  )
virtual

Iteration methods for a data pass.

Either or both may be implemented. iterTime() is called once for each new VisBuffer (= new time slot) Return value: STOP to finish iterating, CONT/DATA to continue, or DRY to cancel the data pass and request a dry pass.

Reimplemented from casa::RFAFlagCubeBase.

Reimplemented in casa::RFADiffMapBase, and casa::RFATimeMedian.

virtual casacore::Bool casa::RFADiffBase::newChunk ( casacore::Int )
virtual

Called before iterating over a chunk.

Returns true if agent will process this chunk, or false if this the agent is unable to process it. (this can happen if, e.g., the requisite correlations are not present). The casacore::Int & maxmem argument is the number of MB memory which is still available in the memory pool. The agent class should plan its memory use accordingly, and subtract its expected memory use from maxmem. In effect, the agent "reserves" some amount of memory. This is used by RedFlagger to contain the total memory footprint. Note that only a rough reckoning is sufficient, so only bother estimating the biggest data structures. See implementations in RFADiffBase and RFATimeMedian for good examples. nAgent is the total number of agents.

Reimplemented from casa::RFAFlagCubeBase.

Reimplemented in casa::RFAFreqMedian, and casa::RFATimeMedian.

virtual RFlagWord casa::RFADiffBase::newCorrMask ( )
protectedpure virtual

computes a correlations mask.

Called once for each chunk (since correlations can change from chunk to chunk)

Implemented in casa::RFADiffMapBase.

casacore::Float casa::RFADiffBase::setDiff ( casacore::uInt  ich,
casacore::uInt  ifr,
casacore::Float  d,
casacore::Bool flagged = dummy_Bool 
)
protected

updates the diff lattice with a value, and performs clipping

virtual void casa::RFADiffBase::startData ( bool  )
virtual

Called before starting a data pass on a chunk.

Reimplemented from casa::RFAFlagCubeBase.

Reimplemented in casa::RFATimeMedian.

void casa::RFADiffBase::startDataRow ( casacore::uInt  ifr)
protected

prepares for a pass over one data row

virtual void casa::RFADiffBase::startDry ( bool  )
virtual

Called before starting a dry pass on a chunk.

Reimplemented from casa::RFAFlagCubeBase.

casacore::Float casa::RFADiffBase::updateSigma ( )
protected

updates noise estimates (sih0), returns the max change

Member Data Documentation

casacore::Double casa::RFADiffBase::clip_level
protected

Definition at line 115 of file RFADiffBase.h.

casacore::Bool casa::RFADiffBase::clipping_rows
protected

Definition at line 118 of file RFADiffBase.h.

RFFloatLattice casa::RFADiffBase::diff
protected

Definition at line 120 of file RFADiffBase.h.

casacore::Vector<casacore::Float> casa::RFADiffBase::diffrow
protected

Definition at line 124 of file RFADiffBase.h.

casacore::Bool casa::RFADiffBase::disable_row_clip
protected

Definition at line 117 of file RFADiffBase.h.

casacore::Bool casa::RFADiffBase::dummy_Bool
staticprotected

Definition at line 99 of file RFADiffBase.h.

int casa::RFADiffBase::idiffrow
protected

Definition at line 125 of file RFADiffBase.h.

FlagCubeIterator* casa::RFADiffBase::pflagiter
protected

Definition at line 121 of file RFADiffBase.h.

casacore::Double casa::RFADiffBase::row_clip_level
protected

Definition at line 116 of file RFADiffBase.h.

RFRowClipper casa::RFADiffBase::rowclipper
protected

Definition at line 122 of file RFADiffBase.h.

casacore::Matrix<casacore::Float> casa::RFADiffBase::sig
protected

Definition at line 127 of file RFADiffBase.h.

casacore::Matrix<casacore::Float> casa::RFADiffBase::sig0
protected

Definition at line 128 of file RFADiffBase.h.

casacore::LogicalVector casa::RFADiffBase::sigupdated
protected

Definition at line 129 of file RFADiffBase.h.


The documentation for this class was generated from the following file: