WFCleanImageSkyModel.h
Classes
- WFCleanImageSkyModel -- WF Image Sky Model: Image Sky Model implementing the WF Clean algorithm (full description)
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)
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
Allow specification of more control parameters
Member Description
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)
Solve for this SkyModel
SubImage<Float>* makeFacet(Int facet, ImageInterface<Float>& image)
Make a facet
Make the slicers