casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Classes | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
casa::RFASpectralRej Class Reference

RFASpectralRej: Spectral rejection agent. More...

#include <RFASpectralRej.h>

Inheritance diagram for casa::RFASpectralRej:
casa::RFAFlagCubeBase casa::RFDataMapper casa::RFABase casa::FlaggerEnums

List of all members.

Classes

struct  Segment
 spectral region specifications More...

Public Member Functions

 RFASpectralRej (RFChunkStats &ch, const RecordInterface &parm)
virtual ~RFASpectralRej ()
virtual uInt estimateMemoryUse ()
 This method is called before iterating over a chunk, to inquire the expected memory use.
virtual Bool newChunk (Int &maxmem)
 Called before iterating over a chunk.
virtual void endChunk ()
 Called once finished with a chunk.
virtual void startData (bool verbose)
 Called before starting a data pass on a chunk.
virtual IterMode iterTime (uInt it)
 Iteration methods for a data pass.
virtual IterMode iterRow (uInt ir)
 iterRow() is called once per each row in the VisBuffer.
virtual IterMode endData ()
 Called after a pass is completed successfully (i.e., not stopped by start or iter methods).
virtual String getDesc ()
 called to obtain a short description of this RFA

Static Public Member Functions

static const RecordInterfacegetDefaults ()

Protected Types

typedef struct
casa::RFASpectralRej::Segment 
Segment
 spectral region specifications

Protected Member Functions

void addSegment (Int spwid, Double fq0, Double fq1, Int ch0, Int ch1)
void parseRegion (const RecordInterface &parm)

Protected Attributes

Block< Segmentsegments
LogicalVector fitchan
uInt num_fitchan
uInt ndeg
uInt halfwin
Double threshold
RFRowClipper rowclipper
Polynomial< AutoDiff< Float > > poly
LinearFit< Floatfitter
Double xnorm

Detailed Description

RFASpectralRej: Spectral rejection agent.

Intended use:

Internal

Prerequisite

Synopsis

RFASpectralRej fits a polynomial to a specified segment of the spectrum (presumably, spectral line-free). The fit produces a noise estimate for each row. Rows with excessive noise levels are flagged using RFRowClipper.

To Do

Definition at line 68 of file RFASpectralRej.h.


Member Typedef Documentation

spectral region specifications


Constructor & Destructor Documentation

virtual casa::RFASpectralRej::~RFASpectralRej ( ) [inline, virtual]

Definition at line 72 of file RFASpectralRej.h.


Member Function Documentation

void casa::RFASpectralRej::addSegment ( Int  spwid,
Double  fq0,
Double  fq1,
Int  ch0,
Int  ch1 
) [protected]
virtual void casa::RFASpectralRej::endChunk ( ) [virtual]

Called once finished with a chunk.

Reimplemented from casa::RFAFlagCubeBase.

virtual IterMode casa::RFASpectralRej::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.

virtual uInt casa::RFASpectralRej::estimateMemoryUse ( ) [inline, 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.

Definition at line 74 of file RFASpectralRej.h.

Reimplemented from casa::RFAFlagCubeBase.

virtual String casa::RFASpectralRej::getDesc ( ) [virtual]

called to obtain a short description of this RFA

Reimplemented from casa::RFAFlagCubeBase.

virtual IterMode casa::RFASpectralRej::iterRow ( uInt  ) [virtual]

iterRow() is called once per each row in the VisBuffer.

Iterating over rows is perhaps preferrable in terms of performance, at least for data iterations.

Reimplemented from casa::RFABase.

virtual IterMode casa::RFASpectralRej::iterTime ( 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.

virtual Bool casa::RFASpectralRej::newChunk ( 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 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.

void casa::RFASpectralRej::parseRegion ( const RecordInterface parm) [protected]
virtual void casa::RFASpectralRej::startData ( bool  ) [virtual]

Called before starting a data pass on a chunk.

Reimplemented from casa::RFAFlagCubeBase.


Member Data Documentation

LogicalVector casa::RFASpectralRej::fitchan [protected]

Definition at line 93 of file RFASpectralRej.h.

Definition at line 102 of file RFASpectralRej.h.

Definition at line 96 of file RFASpectralRej.h.

Definition at line 96 of file RFASpectralRej.h.

Definition at line 94 of file RFASpectralRej.h.

Definition at line 101 of file RFASpectralRej.h.

Definition at line 99 of file RFASpectralRej.h.

Definition at line 92 of file RFASpectralRej.h.

Definition at line 97 of file RFASpectralRej.h.

Definition at line 104 of file RFASpectralRej.h.


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