casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RFANewMedianClip.h
Go to the documentation of this file.
1 //# RFANewMedianClip.h: this defines RFANewMedianClip
2 //# Copyright (C) 2000,2001
3 //# Associated Universities, Inc. Washington DC, USA.
4 //#
5 //# This library is free software; you can redistribute it and/or modify it
6 //# under the terms of the GNU Library General Public License as published by
7 //# the Free Software Foundation; either version 2 of the License, or (at your
8 //# option) any later version.
9 //#
10 //# This library is distributed in the hope that it will be useful, but WITHOUT
11 //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 //# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
13 //# License for more details.
14 //#
15 //# You should have received a copy of the GNU Library General Public License
16 //# along with this library; if not, write to the Free Software Foundation,
17 //# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
18 //#
19 //# Correspondence concerning AIPS++ should be addressed as follows:
20 //# Internet email: aips2-request@nrao.edu.
21 //# Postal address: AIPS++ Project Office
22 //# National Radio Astronomy Observatory
23 //# 520 Edgemont Road
24 //# Charlottesville, VA 22903-2475 USA
25 //#
26 //# $Id$
27 #ifndef FLAGGING_RFANEWMEDIANCLIP_H
28 #define FLAGGING_RFANEWMEDIANCLIP_H
29 
36 
37 namespace casa { //# NAMESPACE CASA - BEGIN
38 
39 // <summary>
40 // RFANewMedianClip:RedFlagger Agent;clips relative to median over time slots
41 // </summary>
42 
43 // <use visibility=local>
44 
45 // <reviewed reviewer="" date="" tests="" demos="">
46 // </reviewed>
47 
48 // <prerequisite>
49 // <li> MedianSlider
50 // <li> RFAFlagCubeBase
51 // </prerequisite>
52 //
53 // <synopsis>
54 // RFANewMedianClip computes a median of some quantity over time slots,
55 // per each channel. Deviation w/respect to the median is computed for
56 // the actual flagging.
57 // </synopsis>
58 //
59 // <todo asof="2004/04/21">
60 // <li> add this feature
61 // <li> fix this bug
62 // <li> start discussion of this possible extension
63 // </todo>
64 
66 {
67 public:
69  virtual ~RFANewMedianClip ();
70 
72  virtual casacore::Bool newChunk (casacore::Int &maxmem);
73  virtual void endChunk ();
74  virtual void startData (bool verbose);
75  virtual void startDry (bool verbose); // add
76  virtual IterMode iterTime (casacore::uInt itime);
77  virtual IterMode iterRow (casacore::uInt irow);
78  virtual IterMode iterDry (casacore::uInt it);
79  virtual IterMode endData ();
80  virtual IterMode endDry ();
81 
82  virtual casacore::String getDesc ();
83  static const casacore::RecordInterface & getDefaults ();
84 
85 protected:
88 
92 
94 
95  // lattice of evaluated values [NCH,NIFR,NTIME]
97  // matrix of standard deviation [NCH,NIFR]
101 };
102 
103 
105 {
106  return msl[ ifr*num(CHAN) + ich ];
107 }
108 
109 
110 } //# NAMESPACE CASA - END
111 
112 #endif
casacore::Matrix< casacore::Float > stdev
matrix of standard deviation [NCH,NIFR]
virtual casacore::Bool newChunk(casacore::Int &maxmem)
Called before iterating over a chunk.
Abstract RedFlagger Agent class with a flag cube.
int Int
Definition: aipstype.h:50
RFANewMedianClip(RFChunkStats &ch, const casacore::RecordInterface &parm)
FlagCubeIterator flag_iter
RFFloatLattice evalue
lattice of evaluated values [NCH,NIFR,NTIME]
casacore::MedianSlider globalmed
virtual IterMode endData()
Called after a pass is completed successfully (i.e., not stopped by start or iter methods)...
virtual IterMode iterTime(casacore::uInt itime)
Iteration methods for a data pass.
virtual void startDry(bool verbose)
Called before starting a dry pass on a chunk.
casacore::Double globalsigma
RFFloatLatice: a cubic lattice.
casacore::Double threshold
IterMode
iteration modes
Definition: RFABase.h:63
casacore::MedianSlider * msl
double Double
Definition: aipstype.h:55
Class to compute sliding median.
Definition: MedianSlider.h:64
bool Bool
Define the standard types used by Casacore.
Definition: aipstype.h:42
RFANewMedianClip:RedFlagger Agent;clips relative to median over time slots.
virtual casacore::uInt estimateMemoryUse()
This method is called before iterating over a chunk, to inquire the expected memory use...
casacore::MedianSlider & slider(casacore::uInt ich, casacore::uInt ifr)
virtual IterMode iterDry(casacore::uInt it)
Iteration method for a dry pass.
virtual void startData(bool verbose)
Called before starting a data pass on a chunk.
FlagCubeIterator * pflagiter
String: the storage and methods of handling collections of characters.
Definition: String.h:223
RFChunkStats: vital information and flagging stats for a visibility chunk.
Definition: RFChunkStats.h:89
Abstract base class for Record classes.
casacore::uInt num(StatEnums which)
Definition: RFABase.h:182
static const casacore::RecordInterface & getDefaults()
virtual void endChunk()
Called once finished with a chunk.
virtual IterMode endDry()
Called after a dry pass is complete.
unsigned int uInt
Definition: aipstype.h:51
virtual IterMode iterRow(casacore::uInt irow)
iterRow() is called once per each row in the VisBuffer.
virtual casacore::String getDesc()
called to obtain a short description of this RFA
RFDataMapper: maps complex visibilities to a single real value.
Definition: RFDataMapper.h:73