28 #ifndef SYNTHESIS_FEATHER_H
29 #define SYNTHESIS_FEATHER_H
39 template<
class T>
class ImageInterface;
40 template<
class T>
class Vector;
casacore::GaussianBeam hBeam_p
A Vector of integers, for indexing into Array<T> objects.
void setSDImage(const casacore::ImageInterface< casacore::Float > &SDImage)
std::vector< double > Vector
casacore::Bool cweightCalced_p
casacore::CountedPtr< casacore::ImageInterface< casacore::Float > > lowIm_p
casacore::Bool cweightApplied_p
static void getRadialUVval(const casacore::Int npix, const casacore::IPosition &imshape, const casacore::CoordinateSystem &csys, casacore::Vector< casacore::Float > &radius)
static void getRadialCut(casacore::Vector< casacore::Float > &radius, casacore::Vector< casacore::Float > &radialAmp, const casacore::ImageInterface< casacore::Float > &image)
casacore::CountedPtr< casacore::ImageInterface< casacore::Complex > > cwHighIm_p
void getEffectiveDishDiam(casacore::Float &xdiam, casacore::Float &ydiam)
casacore::Float dishDiam_p
void fillXVectors(casacore::Vector< casacore::Float > &ux, casacore::Vector< casacore::Float > &uy) const
casacore::Bool saveFeatheredImage(const casacore::String &imagename)
write the feathered image to disk
void getFeatheredCutINT(casacore::Vector< casacore::Float > &ux, casacore::Vector< casacore::Float > &xamp, casacore::Vector< casacore::Float > &uy, casacore::Vector< casacore::Float > &yamp, casacore::Bool radial=false)
casacore::GaussianBeam lBeamOrig_p
Represents a Gaussian restoring beam associated with an image.
void getFeatherSD(casacore::Vector< casacore::Float > &ux, casacore::Vector< casacore::Float > &xamp, casacore::Vector< casacore::Float > &uy, casacore::Vector< casacore::Float > &yamp, casacore::Bool radial=false, casacore::Bool normalize=true)
Get the 1-D slices of the feathering function that will be applied on SD and INTerf data If normalize...
void setINTImage(const casacore::ImageInterface< casacore::Float > &IntImage)
casacore::GaussianBeam lBeam_p
Referenced counted pointer for constant data.
casacore::Float sdScale_p
Feather()
default constructor
static void applyDishDiam(casacore::ImageInterface< casacore::Complex > &image, casacore::GaussianBeam &beam, casacore::Float effDiam, casacore::ImageInterface< casacore::Float > &newbeam, casacore::Vector< casacore::Quantity > &extraconv)
casacore::CoordinateSystem csysHigh_p
virtual ~Feather()
Destructor.
bool Bool
Define the standard types used by Casacore.
casacore::CountedPtr< casacore::ImageInterface< casacore::Float > > lowImOrig_p
static casacore::Double worldFreq(const casacore::CoordinateSystem &cs, casacore::Int spectralpix=0)
void clearWeightFlags()
Clear the weight flags.
static void getLowBeam(const casacore::ImageInterface< casacore::Float > &low0, const casacore::String &lowPSF, const casacore::Bool useDefaultPB, const casacore::String &vpTableStr, casacore::GaussianBeam &lBeam)
calculate the complex weight image to apply on the interf image
static void getCutXY(casacore::Vector< casacore::Float > &ux, casacore::Vector< casacore::Float > &xamp, casacore::Vector< casacore::Float > &uy, casacore::Vector< casacore::Float > &yamp, const casacore::ImageInterface< casacore::Float > &image)
casacore::CountedPtr< casacore::ImageInterface< casacore::Float > > highIm_p
void getFeatherINT(casacore::Vector< casacore::Float > &ux, casacore::Vector< casacore::Float > &xamp, casacore::Vector< casacore::Float > &uy, casacore::Vector< casacore::Float > &yamp, casacore::Bool radial=false)
void getFTCutSDImage(casacore::Vector< casacore::Float > &ux, casacore::Vector< casacore::Float > &xamp, casacore::Vector< casacore::Float > &uy, casacore::Vector< casacore::Float > &yamp, const casacore::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 ...
static void feather(const casacore::String &image, const casacore::ImageInterface< casacore::Float > &high, const casacore::ImageInterface< casacore::Float > &low, const casacore::Float &sdScale=1.0, const casacore::String &lowPSF="", const casacore::Bool useDefault=true, const casacore::String &vpTable="", casacore::Float effSDDiam=-1.0, const casacore::Bool lowpassfiltersd=false)
void getFTCutIntImage(casacore::Vector< casacore::Float > &ux, casacore::Vector< casacore::Float > &xamp, casacore::Vector< casacore::Float > &uy, casacore::Vector< casacore::Float > &yamp, casacore::Bool radial=false)
casacore::Bool setEffectiveDishDiam(const casacore::Float xdiam, const casacore::Float ydiam=-1.0)
set and get effective dish diameter to be used in feathering function setEffectiveDishDiam will retur...
void setSDScale(casacore::Float sdscale=1.0)
set the SDimage and casacore::Int images
String: the storage and methods of handling collections of characters.
void convolveINT(const casacore::GaussianBeam &newHighBeam)
This function convolves the INT image to the new GaussianBeam So the INT image stored in this object ...
void getFeatheredCutSD(casacore::Vector< casacore::Float > &ux, casacore::Vector< casacore::Float > &xamp, casacore::Vector< casacore::Float > &uy, casacore::Vector< casacore::Float > &yamp, casacore::Bool radial=false)
Get 1-D slices of the feathered data...
casacore::CountedPtr< casacore::ImageInterface< casacore::Complex > > cwImage_p
Interconvert pixel and world coordinates.
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.