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

#include <SDAlgorithmBase.h>

Inheritance diagram for casa::SDAlgorithmBase:
casa::SDAlgorithmAAspClean casa::SDAlgorithmClarkClean casa::SDAlgorithmClarkClean2 casa::SDAlgorithmHogbomClean casa::SDAlgorithmMEM casa::SDAlgorithmMSClean casa::SDAlgorithmMSMFS casa::SDAlgorithmTest

Public Member Functions

 SDAlgorithmBase ()
 Empty constructor. More...
 
virtual ~SDAlgorithmBase ()
 
void deconvolve (SIMinorCycleController &loopController, std::shared_ptr< SIImageStore > &imagestore, casacore::Int deconvolverid, casacore::Bool isautomasking=false, casacore::Bool fastnoise=true, casacore::Record robuststats=casacore::Record())
 Non virtual. More...
 
void setRestoringBeam (casacore::GaussianBeam restbeam, casacore::String usebeam)
 
virtual void restore (std::shared_ptr< SIImageStore > imagestore)
 void setMaskOptions(casacore::String maskstring); More...
 
virtual void pbcor (std::shared_ptr< SIImageStore > imagestore)
 
virtual casacore::String getAlgorithmName ()
 
virtual casacore::uInt getNTaylorTerms ()
 
virtual casacore::Long estimateRAM (const std::vector< int > &imsize)
 returns the estimate of memory used in kilobytes (kB); More...
 

Protected Member Functions

virtual void takeOneStep (casacore::Float loopgain, casacore::Int cycleNiter, casacore::Float cycleThreshold, casacore::Float &peakresidual, casacore::Float &modelflux, casacore::Int &iterdone)=0
 Pure virtual functions to be implemented by various algorithm deconvolvers. More...
 
virtual void initializeDeconvolver ()=0
 virtual void initializeDeconvolver(casacore::Float &peakresidual, casacore::Float &modelflux)=0; More...
 
virtual void finalizeDeconvolver ()=0
 
virtual void queryDesiredShape (casacore::Int &nchanchunks, casacore::Int &npolchunks, casacore::IPosition imshape)
 Base Class implements the option of single-plane images for the minor cycle. More...
 
casacore::Int checkStop (SIMinorCycleController &loopcontrols, casacore::Float currentresidual)
 Non virtual. More...
 
casacore::Bool findMaxAbs (const casacore::Array< casacore::Float > &lattice, casacore::Float &maxAbs, casacore::IPosition &posMaxAbs)
 
casacore::Bool findMaxAbsMask (const casacore::Array< casacore::Float > &lattice, const casacore::Array< casacore::Float > &mask, casacore::Float &maxAbs, casacore::IPosition &posMaxAbs)
 

Protected Attributes

casacore::String itsAlgorithmName
 Algorithm name. More...
 
std::shared_ptr< SIImageStoreitsImages
 
casacore::IPosition itsMaxPos
 casacore::Vector<casacore::Slicer> itsDecSlices; casacore::SubImage<casacore::Float> itsResidual, itsPsf, itsModel, itsImage; More...
 
casacore::Float itsPeakResidual
 
casacore::Float itsModelFlux
 
SDMaskHandler itsMaskHandler
 
casacore::GaussianBeam itsRestoringBeam
 casacore::Array<casacore::Float> itsMatMask; More...
 
casacore::String itsUseBeam
 

Detailed Description

Definition at line 58 of file SDAlgorithmBase.h.

Constructor & Destructor Documentation

casa::SDAlgorithmBase::SDAlgorithmBase ( )

Empty constructor.

virtual casa::SDAlgorithmBase::~SDAlgorithmBase ( )
virtual

Member Function Documentation

casacore::Int casa::SDAlgorithmBase::checkStop ( SIMinorCycleController loopcontrols,
casacore::Float  currentresidual 
)
protected

Non virtual.

Implemented only in the base class.

void casa::SDAlgorithmBase::deconvolve ( SIMinorCycleController loopController,
std::shared_ptr< SIImageStore > &  imagestore,
casacore::Int  deconvolverid,
casacore::Bool  isautomasking = false,
casacore::Bool  fastnoise = true,
casacore::Record  robuststats = casacore::Record() 
)

Non virtual.

Wrapper function implemented only in the base class.

Parameters
fastnoisecasacore::Bool fastnoise=true);
virtual casacore::Long casa::SDAlgorithmBase::estimateRAM ( const std::vector< int > &  imsize)
virtual

returns the estimate of memory used in kilobytes (kB);

Reimplemented in casa::SDAlgorithmMSClean, casa::SDAlgorithmMSMFS, casa::SDAlgorithmClarkClean, and casa::SDAlgorithmClarkClean2.

virtual void casa::SDAlgorithmBase::finalizeDeconvolver ( )
protectedpure virtual
casacore::Bool casa::SDAlgorithmBase::findMaxAbs ( const casacore::Array< casacore::Float > &  lattice,
casacore::Float maxAbs,
casacore::IPosition posMaxAbs 
)
protected
casacore::Bool casa::SDAlgorithmBase::findMaxAbsMask ( const casacore::Array< casacore::Float > &  lattice,
const casacore::Array< casacore::Float > &  mask,
casacore::Float maxAbs,
casacore::IPosition posMaxAbs 
)
protected
virtual casacore::String casa::SDAlgorithmBase::getAlgorithmName ( )
inlinevirtual

Definition at line 81 of file SDAlgorithmBase.h.

References itsAlgorithmName.

virtual casacore::uInt casa::SDAlgorithmBase::getNTaylorTerms ( )
inlinevirtual

Reimplemented in casa::SDAlgorithmMSMFS.

Definition at line 83 of file SDAlgorithmBase.h.

virtual void casa::SDAlgorithmBase::initializeDeconvolver ( )
protectedpure virtual

virtual void initializeDeconvolver(casacore::Float &peakresidual, casacore::Float &modelflux)=0;

Implemented in casa::SDAlgorithmMSClean, casa::SDAlgorithmMSMFS, casa::SDAlgorithmClarkClean2, casa::SDAlgorithmClarkClean, casa::SDAlgorithmAAspClean, casa::SDAlgorithmMEM, and casa::SDAlgorithmHogbomClean.

virtual void casa::SDAlgorithmBase::pbcor ( std::shared_ptr< SIImageStore imagestore)
virtual
virtual void casa::SDAlgorithmBase::queryDesiredShape ( casacore::Int nchanchunks,
casacore::Int npolchunks,
casacore::IPosition  imshape 
)
protectedvirtual

Base Class implements the option of single-plane images for the minor cycle.

Reimplemented in casa::SDAlgorithmClarkClean2, and casa::SDAlgorithmClarkClean.

virtual void casa::SDAlgorithmBase::restore ( std::shared_ptr< SIImageStore imagestore)
virtual

void setMaskOptions(casacore::String maskstring);

Base Class contains standard restoration. Overload for more complex behaviour.

Reimplemented in casa::SDAlgorithmMSMFS.

void casa::SDAlgorithmBase::setRestoringBeam ( casacore::GaussianBeam  restbeam,
casacore::String  usebeam 
)
virtual void casa::SDAlgorithmBase::takeOneStep ( casacore::Float  loopgain,
casacore::Int  cycleNiter,
casacore::Float  cycleThreshold,
casacore::Float peakresidual,
casacore::Float modelflux,
casacore::Int iterdone 
)
protectedpure virtual

Member Data Documentation

casacore::String casa::SDAlgorithmBase::itsAlgorithmName
protected

Algorithm name.

Definition at line 106 of file SDAlgorithmBase.h.

Referenced by getAlgorithmName().

std::shared_ptr<SIImageStore> casa::SDAlgorithmBase::itsImages
protected

Definition at line 108 of file SDAlgorithmBase.h.

SDMaskHandler casa::SDAlgorithmBase::itsMaskHandler
protected

Definition at line 117 of file SDAlgorithmBase.h.

casacore::IPosition casa::SDAlgorithmBase::itsMaxPos
protected

casacore::Vector<casacore::Slicer> itsDecSlices; casacore::SubImage<casacore::Float> itsResidual, itsPsf, itsModel, itsImage;

Definition at line 113 of file SDAlgorithmBase.h.

casacore::Float casa::SDAlgorithmBase::itsModelFlux
protected

Definition at line 115 of file SDAlgorithmBase.h.

casacore::Float casa::SDAlgorithmBase::itsPeakResidual
protected

Definition at line 114 of file SDAlgorithmBase.h.

casacore::GaussianBeam casa::SDAlgorithmBase::itsRestoringBeam
protected

casacore::Array<casacore::Float> itsMatMask;

Definition at line 120 of file SDAlgorithmBase.h.

casacore::String casa::SDAlgorithmBase::itsUseBeam
protected

Definition at line 121 of file SDAlgorithmBase.h.


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