Class that contains functions needed for feathering. More...
#include <Feather.h>
Public Member Functions | |
| Feather () | |
| default constructor | |
| Feather (const ImageInterface< Float > &SDImage, const ImageInterface< Float > &INTImage, Float sdScale=1.0) | |
| Constructor. | |
| virtual | ~Feather () |
| Destructor. | |
| void | clearWeightFlags () |
| Clear the weight flags. | |
| void | setSDScale (Float sdscale=1.0) |
| set the SDimage and Int images | |
| void | setSDImage (const ImageInterface< Float > &SDImage) |
| void | setINTImage (const ImageInterface< Float > &IntImage) |
| Bool | setEffectiveDishDiam (const Float xdiam, const Float ydiam=-1.0) |
| set and get effective dish diameter to be used in feathering function setEffectiveDishDiam will return False if you are trying to assign a finer resolution than what the original data came with | |
| void | getEffectiveDishDiam (Float &xdiam, Float &ydiam) |
| void | getFTCutSDImage (Vector< Float > &ux, Vector< Float > &xamp, Vector< Float > &uy, Vector< Float > &yamp, const Bool radial=False) |
| Get the 1-D slices of amplitude along the x and y axis of the FFT of images if radial is set to True then the 1D slice is the the circular average rather that X and Y cuts...only the x-values are valid then Note the SD image is already feathered by its beam..you cannot get unfeathered SD data as it implies deconvolution. | |
| void | getFTCutIntImage (Vector< Float > &ux, Vector< Float > &xamp, Vector< Float > &uy, Vector< Float > &yamp, Bool radial=False) |
| void | getFeatherSD (Vector< Float > &ux, Vector< Float > &xamp, Vector< Float > &uy, Vector< Float > &yamp, Bool radial=False, Bool normalize=True) |
| Get the 1-D slices of the feathering function that will be applied on SD and INTerf data If normalize=False for the SD then the value for Jy/beam correction to final beam size is multiplied to the function. | |
| void | getFeatherINT (Vector< Float > &ux, Vector< Float > &xamp, Vector< Float > &uy, Vector< Float > &yamp, Bool radial=False) |
| void | getFeatheredCutSD (Vector< Float > &ux, Vector< Float > &xamp, Vector< Float > &uy, Vector< Float > &yamp, Bool radial=False) |
| Get 1-D slices of the feathered data . | |
| void | getFeatheredCutINT (Vector< Float > &ux, Vector< Float > &xamp, Vector< Float > &uy, Vector< Float > &yamp, Bool radial=False) |
| void | convolveINT (const GaussianBeam &newHighBeam) |
| This function convolves the INT image to the new GaussianBeam So the INT image stored in this object is going to be replaced by the new convolved image. | |
| Bool | saveFeatheredImage (const String &imagename) |
| write the feathered image to disk | |
Static Public Member Functions | |
| static void | getCutXY (Vector< Float > &ux, Vector< Float > &xamp, Vector< Float > &uy, Vector< Float > &yamp, const ImageInterface< Float > &image) |
| static void | getRadialCut (Vector< Float > &radius, Vector< Float > &radialAmp, const ImageInterface< Float > &image) |
| static void | feather (const String &image, const ImageInterface< Float > &high, const ImageInterface< Float > &low, const Float &sdScale=1.0, const String &lowPSF="", const Bool useDefault=True, const String &vpTable="", Float effSDDiam=-1.0, const Bool lowpassfiltersd=False) |
| static Double | worldFreq (const CoordinateSystem &cs, Int spectralpix=0) |
Private Member Functions | |
| void | fillXVectors (Vector< Float > &ux, Vector< Float > &uy) const |
| void | calcCWeightImage () |
| void | applyFeather () |
Static Private Member Functions | |
| static void | applyDishDiam (ImageInterface< Complex > &image, GaussianBeam &beam, Float effDiam, ImageInterface< Float > &newbeam, Vector< Quantity > &extraconv) |
| static void | getCutXY (Vector< Float > &ux, Vector< Float > &xamp, Vector< Float > &uy, Vector< Float > &yamp, ImageInterface< Complex > &ftimage) |
| static void | getRadialCut (Vector< Float > &radialAmp, ImageInterface< Complex > &ftimage) |
| static void | getLowBeam (const ImageInterface< Float > &low0, const String &lowPSF, const Bool useDefaultPB, const String &vpTableStr, GaussianBeam &lBeam) |
| calculate the complex weight image to apply on the interf image | |
| static void | getRadialUVval (const Int npix, const IPosition &imshape, const CoordinateSystem &csys, Vector< Float > &radius) |
Private Attributes | |
| CountedPtr< ImageInterface < Float > > | lowIm_p |
| CountedPtr< ImageInterface < Float > > | lowImOrig_p |
| CountedPtr< ImageInterface < Float > > | highIm_p |
| CountedPtr< ImageInterface < Complex > > | cwImage_p |
| CountedPtr< ImageInterface < Complex > > | cwHighIm_p |
| GaussianBeam | hBeam_p |
| GaussianBeam | lBeam_p |
| GaussianBeam | lBeamOrig_p |
| Float | dishDiam_p |
| Bool | cweightCalced_p |
| Bool | cweightApplied_p |
| Float | sdScale_p |
| CoordinateSystem | csysHigh_p |
Class that contains functions needed for feathering.
Definition at line 43 of file Feather.h.
| casa::Feather::Feather | ( | ) |
default constructor
| casa::Feather::Feather | ( | const ImageInterface< Float > & | SDImage, | |
| const ImageInterface< Float > & | INTImage, | |||
| Float | sdScale = 1.0 | |||
| ) |
Constructor.
| virtual casa::Feather::~Feather | ( | ) | [virtual] |
Destructor.
| static void casa::Feather::applyDishDiam | ( | ImageInterface< Complex > & | image, | |
| GaussianBeam & | beam, | |||
| Float | effDiam, | |||
| ImageInterface< Float > & | newbeam, | |||
| Vector< Quantity > & | extraconv | |||
| ) | [static, private] |
| void casa::Feather::applyFeather | ( | ) | [private] |
| void casa::Feather::calcCWeightImage | ( | ) | [private] |
| void casa::Feather::clearWeightFlags | ( | ) |
Clear the weight flags.
Used when changing between the SDimage and the dirty image.
| void casa::Feather::convolveINT | ( | const GaussianBeam & | newHighBeam | ) |
This function convolves the INT image to the new GaussianBeam So the INT image stored in this object is going to be replaced by the new convolved image.
| static void casa::Feather::feather | ( | const String & | image, | |
| const ImageInterface< Float > & | high, | |||
| const ImageInterface< Float > & | low, | |||
| const Float & | sdScale = 1.0, |
|||
| const String & | lowPSF = "", |
|||
| const Bool | useDefault = True, |
|||
| const String & | vpTable = "", |
|||
| Float | effSDDiam = -1.0, |
|||
| const Bool | lowpassfiltersd = False | |||
| ) | [static] |
| void casa::Feather::fillXVectors | ( | Vector< Float > & | ux, | |
| Vector< Float > & | uy | |||
| ) | const [private] |
| static void casa::Feather::getCutXY | ( | Vector< Float > & | ux, | |
| Vector< Float > & | xamp, | |||
| Vector< Float > & | uy, | |||
| Vector< Float > & | yamp, | |||
| ImageInterface< Complex > & | ftimage | |||
| ) | [static, private] |
| static void casa::Feather::getCutXY | ( | Vector< Float > & | ux, | |
| Vector< Float > & | xamp, | |||
| Vector< Float > & | uy, | |||
| Vector< Float > & | yamp, | |||
| const ImageInterface< Float > & | image | |||
| ) | [static] |
| void casa::Feather::getEffectiveDishDiam | ( | Float & | xdiam, | |
| Float & | ydiam | |||
| ) |
| void casa::Feather::getFeatheredCutINT | ( | Vector< Float > & | ux, | |
| Vector< Float > & | xamp, | |||
| Vector< Float > & | uy, | |||
| Vector< Float > & | yamp, | |||
| Bool | radial = False | |||
| ) |
| void casa::Feather::getFeatheredCutSD | ( | Vector< Float > & | ux, | |
| Vector< Float > & | xamp, | |||
| Vector< Float > & | uy, | |||
| Vector< Float > & | yamp, | |||
| Bool | radial = False | |||
| ) |
Get 1-D slices of the feathered data .
.\. note for SD this should return the same values as getFTCutSDImage
| void casa::Feather::getFeatherINT | ( | Vector< Float > & | ux, | |
| Vector< Float > & | xamp, | |||
| Vector< Float > & | uy, | |||
| Vector< Float > & | yamp, | |||
| Bool | radial = False | |||
| ) |
| void casa::Feather::getFeatherSD | ( | Vector< Float > & | ux, | |
| Vector< Float > & | xamp, | |||
| Vector< Float > & | uy, | |||
| Vector< Float > & | yamp, | |||
| Bool | radial = False, |
|||
| Bool | normalize = True | |||
| ) |
Get the 1-D slices of the feathering function that will be applied on SD and INTerf data If normalize=False for the SD then the value for Jy/beam correction to final beam size is multiplied to the function.
| void casa::Feather::getFTCutIntImage | ( | Vector< Float > & | ux, | |
| Vector< Float > & | xamp, | |||
| Vector< Float > & | uy, | |||
| Vector< Float > & | yamp, | |||
| Bool | radial = False | |||
| ) |
| void casa::Feather::getFTCutSDImage | ( | Vector< Float > & | ux, | |
| Vector< Float > & | xamp, | |||
| Vector< Float > & | uy, | |||
| Vector< Float > & | yamp, | |||
| const Bool | radial = False | |||
| ) |
Get the 1-D slices of amplitude along the x and y axis of the FFT of images if radial is set to True then the 1D slice is the the circular average rather that X and Y cuts...only the x-values are valid then Note the SD image is already feathered by its beam..you cannot get unfeathered SD data as it implies deconvolution.
| static void casa::Feather::getLowBeam | ( | const ImageInterface< Float > & | low0, | |
| const String & | lowPSF, | |||
| const Bool | useDefaultPB, | |||
| const String & | vpTableStr, | |||
| GaussianBeam & | lBeam | |||
| ) | [static, private] |
calculate the complex weight image to apply on the interf image
| static void casa::Feather::getRadialCut | ( | Vector< Float > & | radialAmp, | |
| ImageInterface< Complex > & | ftimage | |||
| ) | [static, private] |
| static void casa::Feather::getRadialCut | ( | Vector< Float > & | radius, | |
| Vector< Float > & | radialAmp, | |||
| const ImageInterface< Float > & | image | |||
| ) | [static] |
| static void casa::Feather::getRadialUVval | ( | const Int | npix, | |
| const IPosition & | imshape, | |||
| const CoordinateSystem & | csys, | |||
| Vector< Float > & | radius | |||
| ) | [static, private] |
| Bool casa::Feather::saveFeatheredImage | ( | const String & | imagename | ) |
write the feathered image to disk
| Bool casa::Feather::setEffectiveDishDiam | ( | const Float | xdiam, | |
| const Float | ydiam = -1.0 | |||
| ) |
set and get effective dish diameter to be used in feathering function setEffectiveDishDiam will return False if you are trying to assign a finer resolution than what the original data came with
| void casa::Feather::setINTImage | ( | const ImageInterface< Float > & | IntImage | ) |
| void casa::Feather::setSDImage | ( | const ImageInterface< Float > & | SDImage | ) |
| void casa::Feather::setSDScale | ( | Float | sdscale = 1.0 |
) |
set the SDimage and Int images
| static Double casa::Feather::worldFreq | ( | const CoordinateSystem & | cs, | |
| Int | spectralpix = 0 | |||
| ) | [static] |
CoordinateSystem casa::Feather::csysHigh_p [private] |
Bool casa::Feather::cweightApplied_p [private] |
Bool casa::Feather::cweightCalced_p [private] |
CountedPtr<ImageInterface<Complex> > casa::Feather::cwHighIm_p [private] |
CountedPtr<ImageInterface<Complex> > casa::Feather::cwImage_p [private] |
Float casa::Feather::dishDiam_p [private] |
GaussianBeam casa::Feather::hBeam_p [private] |
CountedPtr<ImageInterface<Float> > casa::Feather::highIm_p [private] |
GaussianBeam casa::Feather::lBeam_p [private] |
GaussianBeam casa::Feather::lBeamOrig_p [private] |
CountedPtr<ImageInterface<Float> > casa::Feather::lowIm_p [private] |
CountedPtr<ImageInterface<Float> > casa::Feather::lowImOrig_p [private] |
Float casa::Feather::sdScale_p [private] |
1.6.1