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

#include <FlagAgentClipping.h>

Inheritance diagram for casa::FlagAgentClipping:
casa::FlagAgentBase casa::async::Thread

Public Member Functions

 FlagAgentClipping (FlagDataHandler *dh, casacore::Record config, casacore::Bool writePrivateFlagCube=false, casacore::Bool flag=true)
 
 ~FlagAgentClipping ()
 
- Public Member Functions inherited from casa::FlagAgentBase
 FlagAgentBase (FlagDataHandler *dh, casacore::Record config, casacore::uShort iterationApproach, casacore::Bool writePrivateFlagCube=false, casacore::Bool flag=true)
 
virtual ~FlagAgentBase ()
 
void start ()
 
void terminate ()
 
void queueProcess ()
 
void chunkSummary ()
 
void tableSummary ()
 
void completeProcess ()
 
void * run ()
 
void setProfiling (bool enable)
 Set function to activate profiling. More...
 
void setCheckMode (bool enable)
 Set function to activate check mode. More...
 
virtual FlagReport getReport ()
 Get a report casacore::Record from the agent, at the end of the run The report returned by getReport() can be of multiple types – a single report of type "none" : FlagReport("none",agentName_p) – a single report of type "plot" : FlagReport("plot",agentName_p) – a list of reports : FlagReport repList("list"); repList.addReport(FlagReport("plot",agentName_p)); repList.addReport(FlagReport("plot",agentName_p));. More...
 
- Public Member Functions inherited from casa::async::Thread
 Thread ()
 
virtual ~Thread ()
 
pthread_t getId () const
 
pid_t gettid () const
 
bool isTerminationRequested () const
 
void * join ()
 
void startThread ()
 

Protected Member Functions

bool computeInRowFlags (const vi::VisBuffer2 &visBuffer, VisMapper &visibilities, FlagMapper &flags, casacore::uInt row)
 Common functionality for each visBuffer (don't repeat at the row level) jagonzal: With the new WEIGHT/SIGMA convention it is not longer necessary divide the clipping range between the number of channels void preProcessBuffer(const vi::VisBuffer2 &visBuffer);. More...
 
bool checkVisForClipOutside (casacore::Float visExpression)
 Specialization of the different clipping cases. More...
 
bool checkVisForClipInside (casacore::Float visExpression)
 
bool checkVisForClipOutsideAndZeros (casacore::Float visExpression)
 
bool checkVisForClipInsideAndZeros (casacore::Float visExpression)
 
bool checkVisForNaNs (casacore::Float visExpression)
 
bool checkVisForNaNsAndZeros (casacore::Float visExpression)
 
void setAgentParameters (casacore::Record config)
 Parse configuration parameters. More...
 
- Protected Member Functions inherited from casa::FlagAgentBase
void initialize ()
 
void runCore ()
 Convenience function to be shared by parallel/non-parallel mode. More...
 
void setDataSelection (casacore::Record config)
 
casacore::String sanitizeCorrExpression (casacore::String corrExpression, std::vector< casacore::String > *corrProducts)
 Method to sanitize correlation expression and keep going. More...
 
void generateAllIndex ()
 
void generateRowsIndex (casacore::uInt nRows)
 
void generateChannelIndex (casacore::uInt nChannels)
 
void generatePolarizationIndex (casacore::uInt nPolarizations)
 
std::vector< casacore::uInt > * generateAntennaPairRowsIndex (casacore::Int antenna1, casacore::Int antenna2)
 
void indigen (std::vector< casacore::uInt > &index, casacore::uInt size)
 Generate index for all rows. More...
 
bool find (const casacore::Vector< casacore::Int > &validRange, casacore::Int element)
 For checking ids. More...
 
bool find (const casacore::Matrix< casacore::Double > &validRange, casacore::Double element)
 For checking ranges. More...
 
bool find (const casacore::Matrix< casacore::Int > &validPairs, casacore::Int element1, casacore::Int element2)
 For checking pairs. More...
 
bool find (const casacore::Block< int > &columns, int col)
 For checking columns. More...
 
bool isNaN (casacore::Double number)
 Check if a given number is nan (for visibilities,gains and Tsys primarily) More...
 
bool isNaN (casacore::Float number)
 
bool isZero (casacore::Double number)
 
bool isZero (casacore::Float number)
 
bool isNaNOrZero (casacore::Float number)
 
bool isNaNOrZero (casacore::Double number)
 
bool checkIfProcessBuffer ()
 Check if buffer has to be processed. More...
 
virtual void preProcessBuffer (const vi::VisBuffer2 &visBuffer)
 Common functionality for each visBuffer (don't repeat at the row level) More...
 
void iterateRows ()
 Iterate trough list of rows. More...
 
void iterateInRows ()
 Iterate trough visibilities mapper. More...
 
void iterateAntennaPairs ()
 Iterate trough list of antenna pairs. More...
 
void iterateAntennaPairsFlags ()
 Iterate trough list of antenna pairs w/o loading visibilities. More...
 
void processAntennaPair (casacore::Int antenna1, casacore::Int antenna2)
 Methods to interactively iterate trough list of antenna pairs. More...
 
virtual void iterateAntennaPairsInteractive (antennaPairMap *antennaPairMap_ptr)
 
virtual void passIntermediate (const vi::VisBuffer2 &visBuffer)
 Iter-passes method. More...
 
virtual void passFinal (const vi::VisBuffer2 &visBuffer)
 
void setVisibilitiesMap (std::vector< casacore::uInt > *rows, VisMapper *visMap)
 Mapping functions (abs, real, imag, etc.) as requested by Urvashi. More...
 
void setFlagsMap (std::vector< casacore::uInt > *rows, FlagMapper *flagMap)
 
casacore::Bool checkVisExpression (polarizationMap *polMap)
 
virtual bool computeRowFlags (const vi::VisBuffer2 &visBuffer, FlagMapper &flags, casacore::uInt row)
 Compute flags for a given visibilities point. More...
 
virtual bool computeAntennaPairFlags (const vi::VisBuffer2 &visBuffer, VisMapper &visibilities, FlagMapper &flags, casacore::Int antenna1, casacore::Int antenna2, std::vector< casacore::uInt > &rows)
 Compute flags for a given (time,freq) antenna pair map. More...
 
virtual bool computeAntennaPairFlags (const vi::VisBuffer2 &visBuffer, FlagMapper &flags, casacore::Int antenna1, casacore::Int antenna2, std::vector< casacore::uInt > &rows)
 Compute flags for a given (time,freq) antenna pair map w/o using visibilities. More...
 
- Protected Member Functions inherited from casa::async::Thread
bool isStarted () const
 

Private Attributes

casacore::Bool clipminmax_p
 casacore::Input parameters /// More...
 
casacore::Bool clipoutside_p
 
casacore::Bool clipzeros_p
 
casacore::Bool weightcol_p
 
casacore::Float clipmin_p
 
casacore::Float clipmax_p
 
casacore::Float original_clipmin_p
 
casacore::Float original_clipmax_p
 
bool(casa::FlagAgentClipping::* checkVis_p )(casacore::Float)
 Specialization for the clipping case. More...
 

Additional Inherited Members

- Public Types inherited from casa::FlagAgentBase
enum  datacolumn {
  DATA,
  CORRECTED,
  MODEL,
  RESIDUAL,
  RESIDUAL_DATA,
  FPARAM,
  CPARAM,
  PARAMERR,
  SNR,
  WEIGHT_SPECTRUM,
  FLOAT_DATA
}
 
enum  iteration {
  ROWS,
  ROWS_PREPROCESS_BUFFER,
  IN_ROWS,
  IN_ROWS_PREPROCESS_BUFFER,
  ANTENNA_PAIRS,
  ANTENNA_PAIRS_FLAGS,
  ANTENNA_PAIRS_INTERACTIVE,
  ANTENNA_PAIRS_PREPROCESS_BUFFER
}
 
- Public Types inherited from casa::async::Thread
typedef void *(* ThreadFunction )(void *)
 
- Static Public Member Functions inherited from casa::FlagAgentBase
static FlagAgentBasecreate (FlagDataHandler *dh, casacore::Record config)
 
- Public Attributes inherited from casa::FlagAgentBase
casacore::Bool backgroundMode_p
 Externally visible configuration. More...
 
casacore::LogIO::Command logLevel_p
 
casacore::Bool apply_p
 
casacore::Bool flag_p
 
- Static Protected Member Functions inherited from casa::async::Thread
static void * threadFunction (void *)
 
- Protected Attributes inherited from casa::FlagAgentBase
FlagDataHandlerflagDataHandler_p
 Common used members that must be accessible to derived classes. More...
 
std::unique_ptr< casacore::LogIOlogger_p
 
casacore::String agentName_p
 
casacore::String summaryName_p
 
casacore::String mode_p
 
casacore::uInt64 chunkFlags_p
 Flag counters. More...
 
casacore::uInt64 chunkNaNs_p
 
casacore::uInt64 tableFlags_p
 
casacore::uInt64 tableNaNs_p
 
casacore::uInt64 visBufferFlags_p
 
bool flagRow_p
 
casacore::Bool multiThreading_p
 Multithreading configuration and agent id. More...
 
casacore::Int nThreads_p
 
casacore::Int threadId_p
 
casacore::Bool prepass_p
 Running configuration. More...
 
std::vector< casacore::uIntrowsIndex_p
 Lists of elements to process jagonzal (CAS-4312): We need channelIndex_p available for the Rflag agent, in order to take into account channel selection for the frequency mapping. More...
 
std::vector< casacore::uIntchannelIndex_p
 
std::vector< casacore::uIntpolarizationIndex_p
 
casacore::String dataColumn_p
 Needed to be protected for timeavg in clip. More...
 
casacore::Bool timeavg_p
 Pre-averaging parameters. More...
 
casacore::Double timebin_p
 
casacore::Bool channelavg_p
 
casacore::Vector< casacore::Intchanbin_p
 

Detailed Description

Definition at line 30 of file FlagAgentClipping.h.

Constructor & Destructor Documentation

casa::FlagAgentClipping::FlagAgentClipping ( FlagDataHandler dh,
casacore::Record  config,
casacore::Bool  writePrivateFlagCube = false,
casacore::Bool  flag = true 
)
casa::FlagAgentClipping::~FlagAgentClipping ( )

Member Function Documentation

bool casa::FlagAgentClipping::checkVisForClipInside ( casacore::Float  visExpression)
protected
bool casa::FlagAgentClipping::checkVisForClipInsideAndZeros ( casacore::Float  visExpression)
protected
bool casa::FlagAgentClipping::checkVisForClipOutside ( casacore::Float  visExpression)
protected

Specialization of the different clipping cases.

bool casa::FlagAgentClipping::checkVisForClipOutsideAndZeros ( casacore::Float  visExpression)
protected
bool casa::FlagAgentClipping::checkVisForNaNs ( casacore::Float  visExpression)
protected
bool casa::FlagAgentClipping::checkVisForNaNsAndZeros ( casacore::Float  visExpression)
protected
bool casa::FlagAgentClipping::computeInRowFlags ( const vi::VisBuffer2 visBuffer,
VisMapper visibilities,
FlagMapper flags,
casacore::uInt  row 
)
protectedvirtual

Common functionality for each visBuffer (don't repeat at the row level) jagonzal: With the new WEIGHT/SIGMA convention it is not longer necessary divide the clipping range between the number of channels void preProcessBuffer(const vi::VisBuffer2 &visBuffer);.

Compute flags afor a given mapped visibility point

Reimplemented from casa::FlagAgentBase.

void casa::FlagAgentClipping::setAgentParameters ( casacore::Record  config)
protectedvirtual

Parse configuration parameters.

Reimplemented from casa::FlagAgentBase.

Member Data Documentation

bool(casa::FlagAgentClipping::* casa::FlagAgentClipping::checkVis_p)(casacore::Float)
private

Specialization for the clipping case.

Definition at line 71 of file FlagAgentClipping.h.

casacore::Float casa::FlagAgentClipping::clipmax_p
private

Definition at line 66 of file FlagAgentClipping.h.

casacore::Float casa::FlagAgentClipping::clipmin_p
private

Definition at line 65 of file FlagAgentClipping.h.

casacore::Bool casa::FlagAgentClipping::clipminmax_p
private

casacore::Input parameters ///

Definition at line 61 of file FlagAgentClipping.h.

casacore::Bool casa::FlagAgentClipping::clipoutside_p
private

Definition at line 62 of file FlagAgentClipping.h.

casacore::Bool casa::FlagAgentClipping::clipzeros_p
private

Definition at line 63 of file FlagAgentClipping.h.

casacore::Float casa::FlagAgentClipping::original_clipmax_p
private

Definition at line 68 of file FlagAgentClipping.h.

casacore::Float casa::FlagAgentClipping::original_clipmin_p
private

Definition at line 67 of file FlagAgentClipping.h.

casacore::Bool casa::FlagAgentClipping::weightcol_p
private

Definition at line 64 of file FlagAgentClipping.h.


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