WFCleanImageSkyModel.h

Classes

WFCleanImageSkyModel -- WF Image Sky Model: Image Sky Model implementing the WF Clean algorithm (full description)

class WFCleanImageSkyModel : public MFCleanImageSkyModel

Interface

Public Members
WFCleanImageSkyModel()
virtual ~WFCleanImageSkyModel()
WFCleanImageSkyModel(const Int nfacets, Bool largeMemory=False)
virtual Int add(ImageInterface<Float>& image, const Int maxNumXfr=100)
virtual Bool addResidual(Int image, ImageInterface<Float>& residual)
virtual Bool addMask(Int image, ImageInterface<Float>& mask)
virtual Bool solve (SkyEquation& me)
void makeApproxPSFs(SkyEquation& se)
PtrBlock<TempImage<Complex> *>& cimageBlkPtr()
PtrBlock<Matrix<Float> * >& weightBlkPtr()
Protected Members
SubImage<Float>* makeFacet(Int facet, ImageInterface<Float>& image)
Bool makeSlicers(const Int facet, const IPosition& imageShape, IPosition& facetShape, Slicer& imageSlicer)

Description

Prerequisite

Etymology

WFCleanImageSkyModel implements the WF Clean algorithm. It is derived from MFCleanImageSkyModel.

Synopsis

The WF Clean is an FFT-based clean algorithm. Cleaning is split into major and minor cycles. In a minor cycle, the brightest pixels are cleaned using only the strongest sidelobes (and main lobe) of the PSF. In the major cycle, a fully correct subtraction of the PSF is done for all points accumulated in the minor cycle using an FFT-based convolution for speed.

The WF Clean is implemented using the MFCleanImageSkyModel class.

Masking is optionally performed using a mask image: only points where the mask is non-zero are cleaned. If no mask is specified all points in the inner quarter of the image are cleaned.

Example

See the example for SkyModel.

Motivation

To Do