casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RFAUVBinner.h
Go to the documentation of this file.
1 //# RFAUVBinner.h: this defines RFAUVBinner
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_RFAUVBINNER_H
28 #define FLAGGING_RFAUVBINNER_H
29 
36 
37 namespace casa { //# NAMESPACE CASA - BEGIN
38 
39 // <summary>
40 // RFAUVBinner: flagging via UV binning
41 // </summary>
42 
43 // <use visibility=local>
44 
45 // <reviewed reviewer="" date="" tests="" demos="">
46 // </reviewed>
47 
48 // <prerequisite>
49 // <li> RFDataMapper
50 // <li> RFFlagCubeBase
51 // <li> RFCubeLattice
52 // </prerequisite>
53 //
54 // <synopsis>
55 // </synopsis>
56 //
57 // <todo asof="2001/04/16">
58 // <li> make UV-distance matrix static, to share between multiple instances
59 // <li> collect population statistics across all channels
60 // <li> 3D bins (ampl-UVdist-channel)?
61 // <li> think how to solve "encroaching" problem to achieve a better
62 // probability distribution. Perhaps two sets of staggered bins,
63 // and for each point use the count of the bigger bin?
64 // </todo>
65 
67 {
68 public:
70  virtual ~RFAUVBinner () {};
71 
73  virtual casacore::Bool newChunk (casacore::Int &maxmem);
74  virtual void endChunk ();
75  virtual void startData (bool verbose);
76  virtual void startDry (bool verbose);
77  virtual IterMode iterTime (casacore::uInt it);
78  virtual IterMode iterRow (casacore::uInt ir);
79  virtual IterMode iterDry (casacore::uInt it);
80  virtual IterMode endData ();
81  virtual IterMode endDry ();
82 
83  virtual casacore::String getDesc ();
84  static const casacore::RecordInterface & getDefaults ();
85 
86 protected:
88 
93 
94 // current UVW column
96 
97 // lattice of yvalues [NCH,NIFR,NTIME]
99 // matrix of UV distances [NIFR,NTIME]
101 
102 // ranges and bin sizes
104 // for UV, we have individual ranges/bins per each channel
106 // bin counts
109 };
110 
111 
112 } //# NAMESPACE CASA - END
113 
114 #endif
A Vector of integers, for indexing into Array&lt;T&gt; objects.
Definition: IPosition.h:119
casacore::Cube< casacore::Int > bincounts
bin counts
Definition: RFAUVBinner.h:107
virtual casacore::String getDesc()
called to obtain a short description of this RFA
Abstract RedFlagger Agent class with a flag cube.
A 1-D Specialization of the Array class.
int Int
Definition: aipstype.h:50
virtual void endChunk()
Called once finished with a chunk.
virtual casacore::Bool newChunk(casacore::Int &maxmem)
Called before iterating over a chunk.
casacore::Vector< casacore::Float > ymax
Definition: RFAUVBinner.h:103
casacore::uInt nbin_uv
Definition: RFAUVBinner.h:91
casacore::Vector< casacore::Float > uvmax
Definition: RFAUVBinner.h:103
RFAUVBinner: flagging via UV binning.
Definition: RFAUVBinner.h:66
casacore::Vector< casacore::Float > uvbinsize
Definition: RFAUVBinner.h:103
virtual IterMode iterTime(casacore::uInt it)
Iteration methods for a data pass.
RFFloatLatice: a cubic lattice.
virtual void startDry(bool verbose)
Called before starting a dry pass on a chunk.
IterMode
iteration modes
Definition: RFABase.h:63
RFAUVBinner(RFChunkStats &ch, const casacore::RecordInterface &parm)
virtual void startData(bool verbose)
Called before starting a data pass on a chunk.
casacore::uInt min_population
Definition: RFAUVBinner.h:90
virtual IterMode endData()
Called after a pass is completed successfully (i.e., not stopped by start or iter methods)...
static const casacore::RecordInterface & getDefaults()
double Double
Definition: aipstype.h:55
virtual ~RFAUVBinner()
Definition: RFAUVBinner.h:70
casacore::Vector< casacore::RigidVector< casacore::Double, 3 > > * puvw
current UVW column
Definition: RFAUVBinner.h:95
bool Bool
Define the standard types used by Casacore.
Definition: aipstype.h:42
float Float
Definition: aipstype.h:54
casacore::Vector< casacore::Float > uvmin
for UV, we have individual ranges/bins per each channel
Definition: RFAUVBinner.h:103
virtual IterMode iterRow(casacore::uInt ir)
iterRow() is called once per each row in the VisBuffer.
casacore::Vector< casacore::Int > totcounts
Definition: RFAUVBinner.h:108
virtual IterMode endDry()
Called after a dry pass is complete.
RFFloatLattice yvalue
lattice of yvalues [NCH,NIFR,NTIME]
Definition: RFAUVBinner.h:98
casacore::Vector< casacore::Float > ybinsize
Definition: RFAUVBinner.h:103
virtual casacore::uInt estimateMemoryUse()
This method is called before iterating over a chunk, to inquire the expected memory use...
casacore::Bool binned
Definition: RFAUVBinner.h:92
String: the storage and methods of handling collections of characters.
Definition: String.h:223
virtual IterMode iterDry(casacore::uInt it)
Iteration method for a dry pass.
RFChunkStats: vital information and flagging stats for a visibility chunk.
Definition: RFChunkStats.h:89
casacore::Vector< casacore::Float > ymin
ranges and bin sizes
Definition: RFAUVBinner.h:103
Abstract base class for Record classes.
casacore::Matrix< casacore::Float > uvdist
matrix of UV distances [NIFR,NTIME]
Definition: RFAUVBinner.h:100
casacore::uInt nbin_y
Definition: RFAUVBinner.h:91
casacore::IPosition computeBin(casacore::Float uv, casacore::Float y, casacore::uInt ich)
casacore::Double threshold
Definition: RFAUVBinner.h:89
unsigned int uInt
Definition: aipstype.h:51
RFDataMapper: maps complex visibilities to a single real value.
Definition: RFDataMapper.h:73