Getting Started Documentation Glish Learn More Programming Contact Us
Version 1.9 Build 1556
News FAQ
Search Home


next up previous contents index
Next: imager.open - Function Up: imager - Tool Previous: imager.mem - Function


imager.nnls - Function



Package synthesis
Module imager
Tool imager


Calculate a deconvolved image using the NNLS algorithm


Synopsis
nnls(model, fixed, complist, niter, tolerance, fluxmask, datamask, image, residual, async)



Description

Solve for the model brightness using the Briggs' Non-Negative Least Squares algorithm. Since NNLS works only on the I image, the I pixels in the current image is set to zero where the fluxmask is > 0.0, then NNLS is used to estimate the I-pixels for that region. The deconvolution is performed on the residual image calculated from the visibility data currently selected. Hence the first step performed in clean is to transform the current model to fill in the MODEL_DATA column, and then inverse transform the residual visibilities to get a residual image. This residual image is then deconvolved using the corresponding point spread function.

Some other points to remember are that rather than explicit boxes, mask images are used to constrain the region that is to be deconvolved. For NNLS, there are two masks, the fluxmask specifying the region within which flux is allowed, and the datamask specifying the region of the dirty image to be used as constraints. Typically the datamask will be somewhat larger than the fluxmask. On a large machine, a practical limit to both will be about 5000-6000 pixels. Hence NNLS is only useful for compact tools. (For more details, see the Briggs thesis). To make mask images, use either boxmask (to define a mask via the corner locations blc and trc) or mask (to define a mask via thresholding an existing image).

On the canonical AIPS++ machine with 64MBytes of physical memory, you should try to keep the product of the pixels in the fluxmask and the datamask below about 5-10 million. Otherwise the solution phase will swap badly.



Arguments

model in Name of image
Allowed: Vector of strings
fixed in Keep model fixed
Allowed: Vector of booleans
Default: F
complist in Name of component list
Allowed: String
niter in Number of Iterations, set to zero for no NNLS
Allowed: Int
Default: 0
tolerance in Tolerance for solution
Allowed: Double
Default: 1e-06
fluxmask in Name of mask for allowed flux
Allowed: Vector of strings
datamask in Name of mask for constraint pixels in dirty image
Allowed: Vector of strings
image in Names of restored images
Allowed: Vector of strings
residual in Names of restored images
Allowed: Vector of strings
async in Run asynchronously in the background
Allowed: Bool
Default: !dowait



Returns
Bool


Example
imgr.nnls(image='3C273XC1.nnls.image', model='3C273XC1.nnls.model',
fluxmask='3C283XC1.fluxmask', datamask='3C273XC1.datamask', niter=1000,
tolerance=0.00001)





next up previous contents index
Next: imager.open - Function Up: imager - Tool Previous: imager.mem - Function   Contents   Index
Please send questions or comments about AIPS++ to aips2-request@nrao.edu.
Copyright © 1995-2000 Associated Universities Inc., Washington, D.C.

Return to AIPS++ Home Page
2006-10-15