DOpolarimetry.h
Classes
- imagepol -- Implementation of the image polarimetry functionality (full description)
Types
- COMPLEXLINPOL
-
- COMPLEXFRACLINPOL
-
- DEPOLARIZATIONRATIO
-
- FRACLINPOL
-
- FRACTOTPOL
-
- FOURIERROTATIONMEASURE
-
- LINPOLINT
-
- LINPOLPOSANG
-
- MAKECOMPLEX
-
- ROTATIONMEASURE
-
- SIGMA
-
- SIGMADEPOLARIZATIONRATIO
-
- SIGMASTOKESI
-
- SIGMASTOKESQ
-
- SIGMASTOKESU
-
- SIGMASTOKESV
-
- SIGMALINPOLINT
-
- SIGMALINPOLPOSANG
-
- SIGMATOTPOLINT
-
- SIGMAFRACLINPOL
-
- SIGMAFRACTOTPOL
-
- STOKESI
-
- STOKESQ
-
- STOKESU
-
- STOKESV
-
- SUMMARY
-
- TOTPOLINT
-
- NUM_METHODS
-
- NT_COMPLEXLINPOL
-
- NT_COMPLEXFRACLINPOL
-
- NT_DEPOLARIZATIONRATIO
-
- NT_FRACLINPOL
-
- NT_FRACTOTPOL
-
- NT_LINPOLINT
-
- NT_LINPOLPOSANG
-
- NT_MAKECOMPLEX
-
- NT_SIGMA
-
- NT_SIGMADEPOLARIZATIONRATIO
-
- NT_SIGMASTOKESI
-
- NT_SIGMASTOKESQ
-
- NT_SIGMASTOKESU
-
- NT_SIGMASTOKESV
-
- NT_SIGMALINPOLINT
-
- NT_SIGMALINPOLPOSANG
-
- NT_SIGMATOTPOLINT
-
- NT_SIGMAFRACLINPOL
-
- NT_SIGMAFRACTOTPOL
-
- NT_STOKESI
-
- NT_STOKESQ
-
- NT_STOKESU
-
- NT_STOKESV
-
- NT_SUMMARY
-
- NT_TOTPOLINT
-
- NUM_NOTRACE_METHODS
-
Interface
- Public Members
- imagepol(const String& infile)
- imagepol (const String& outFile, const Vector<Float>& rm, Bool rmDefault, Float pa0, Float sigma, Int nx, Int ny, Int nf, Float f0, Float df)
- imagepol(const imagepol& other)
- imagepol& operator=(const imagepol& other)
- ~imagepol()
- void summary() const
- Float sigma(Float clip) const
- ObjectID stokesI(const String& outfile) const
- Float sigmaStokesI(Float clip) const
- ObjectID stokesQ(const String& outfile) const
- Float sigmaStokesQ(Float clip) const
- ObjectID stokesU(const String& outfile) const
- Float sigmaStokesU(Float clip) const
- ObjectID stokesV(const String& outfile) const
- Float sigmaStokesV(Float clip) const
- ObjectID linPolInt(Bool debias, Float clip, Float sigma, const String& outfile) const
- Float sigmaLinPolInt(Float clip, Float sigma) const
- ObjectID totPolInt(Bool debias, Float clip, Float sigma, const String& outfile) const
- Float sigmaTotPolInt(Float clip, Float sigma) const
- void complexLinearPolarization (const String& outfile) const
- void complexFractionalLinearPolarization (const String& outfile) const
- ObjectID linPolPosAng(const String& outfile) const
- ObjectID sigmaLinPolPosAng(Float clip, Float sigma, const String& outfile) const
- ObjectID fracLinPol(Bool debias, Float clip, Float sigma, const String& outfile) const
- ObjectID sigmaFracLinPol(Float clip, Float sigma, const String& outfile) const
- ObjectID fracTotPol(Bool debias, Float clip, Float sigma, const String& outfile) const
- ObjectID sigmaFracTotPol(Float clip, Float sigma, const String& outfile) const
- ObjectID depolarizationRatio (const String& infile, Bool debias, Float clip, Float sigma, const String& outfile)
- ObjectID sigmaDepolarizationRatio (const String& infile, Bool debias, Float clip, Float sigma, const String& outfile)
- void fourierRotationMeasure(const String& outfile, const String& outfileAmp, const String& outfilePA, const String& outfileReal, const String& outfileImag, Bool zeroZeroLag) const
- void rotationMeasure(const String& outRM, const String& outRMErr, const String& outPA0, const String& outPA0Err, const String& outNTurns, const String& outChiSq, Index axis, Float varQU, Float rmFg, Float rmMax, Float maxPaErr, const String& plotter, Int nx, Int ny) const
- void makeComplex (const String& complex, const String& real, const String& imag, const String& amp, const String& phase)
- virtual String className() const
- virtual Vector<String> methods() const
- virtual Vector<String> noTraceMethods() const
- virtual MethodResult runMethod(uInt which, ParameterSet &inputRecord, Bool runMethod)
- Private Members
- ObjectID copyImage (LogIO& os, const ImageInterface<Float>& inImage, const String& outfile, Bool overwrite) const
- void copyMiscellaneous (ImageInterface<Complex>& out, const ImageInterface<Float>& in) const
- void copyMiscellaneous (ImageInterface<Float>& out, const ImageInterface<Float>& in) const
- void fiddleStokesCoordinate(ImageInterface<Float>& ie, Stokes::StokesTypes type) const
- void fiddleStokesCoordinate(ImageInterface<Complex>& ie, Complex::StokesTypes type) const
- ObjectID makeOID (const ImageInterface<Float>& expr) const
- void makeImage (ImageInterface<Complex>*& pOutIm, const Complex& outfile, const String& cSys, const CoordinateSystem& shape, Bool isMasked, Bool tempAllowed, IPosition& os) const
- void makeImage (ImageInterface<Float>*& pOutIm, const String& outfile, const String& cSys, const CoordinateSystem& shape, Bool isMasked, Bool tempAllowed, IPosition& os) const
- void makeIQUVImage (ImageInterface<Float>*& pImOut, const String& outfile, Double sigma, Double pa0, const String<Float>& rm, const Vector& shape, Double f0, Double dF, IPosition& os)
- void fillIQUV (ImageInterface<Float>& im, uInt stokesAxis, uInt spectralAxis, const Vector<Float>& rm, Float pa0, Vector& os)
- void addNoise (Array<Float>& slice, Normal& noiseGen) const
- void centreRefPix (CoordinateSystem& cSys, const IPosition& shape) const
- Bool makeMask(ImageInterface<Float>& out, Bool init, LogIO& os) const
- Bool makeMask(ImageInterface<Complex>& out, Bool init, Complex& os) const
- inline DataType whatType(const ImageInterface<Float>*) const
- inline DataType whatType(const ImageInterface<Complex>*) const
- Stokes::StokesTypes stokesType(const CoordinateSystem& cSys, CoordinateSystem& os) const
or
Review Status
- Date Reviewed:
- yyyy/mm/dd
Prerequisite
Etymology
This implements the functionality for the image polarimetry Distributed Object
Synopsis
The functionality that is bound to Glish and available via the
image polarimetry module/DO is implemented here.
Example
Motivation
Template Type Argument Requirements (T)
Thrown Exceptions
To Do
Member Description
"imagepol" constructors
imagepol (const String& outFile, const Vector<Float>& rm, Bool rmDefault, Float pa0, Float sigma, Int nx, Int ny, Int nf, Float f0, Float df)
Test image constructor
imagepol(const imagepol& other)
copy constructor
imagepol& operator=(const imagepol& other)
assignment
Destructor
Summary
Float sigma(Float clip) const
sigma
Stokes I
Stokes Q
Stokes U
Stokes V
ObjectID linPolInt(Bool debias, Float clip, Float sigma, const String& outfile) const
Linearly polarized intensity
Float sigmaLinPolInt(Float clip, Float sigma) const
ObjectID totPolInt(Bool debias, Float clip, Float sigma, const String& outfile) const
Total polarized intensity.
Float sigmaTotPolInt(Float clip, Float sigma) const
Complex linear polarization
Complex linear polarization
Linearly polarized position angle
ObjectID fracLinPol(Bool debias, Float clip, Float sigma, const String& outfile) const
Fractional linearly polarized intensity
ObjectID fracTotPol(Bool debias, Float clip, Float sigma, const String& outfile) const
Fractional total polarized intensity
Depolarization ratio
void fourierRotationMeasure(const String& outfile, const String& outfileAmp, const String& outfilePA, const String& outfileReal, const String& outfileImag, Bool zeroZeroLag) const
Find Rotation Measure from Fourier method
void rotationMeasure(const String& outRM, const String& outRMErr, const String& outPA0, const String& outPA0Err, const String& outNTurns, const String& outChiSq, Index axis, Float varQU, Float rmFg, Float rmMax, Float maxPaErr, const String& plotter, Int nx, Int ny) const
Find Rotation Measure from traditional method
Make a complex image
Stuff needed for distributing this class
If your object has more than one method
ObjectID copyImage (LogIO& os, const ImageInterface<Float>& inImage, const String& outfile, Bool overwrite) const
Copy image and make OID
void copyMiscellaneous (ImageInterface<Complex>& out, const ImageInterface<Float>& in) const
Copy miscellaneous (MiscInfo, ImageInfo, history, units)
void copyMiscellaneous (ImageInterface<Float>& out, const ImageInterface<Float>& in) const
void fiddleStokesCoordinate(ImageInterface<Float>& ie, Stokes::StokesTypes type) const
Fiddle Stokes coordinate
void fiddleStokesCoordinate(ImageInterface<Complex>& ie, Complex::StokesTypes type) const
ObjectID makeOID (const ImageInterface<Float>& expr) const
Return an image ObjectID for the expression
void makeImage (ImageInterface<Complex>*& pOutIm, const Complex& outfile, const String& cSys, const CoordinateSystem& shape, Bool isMasked, Bool tempAllowed, IPosition& os) const
Make a PagedImage or TempImage output
void makeImage (ImageInterface<Float>*& pOutIm, const String& outfile, const String& cSys, const CoordinateSystem& shape, Bool isMasked, Bool tempAllowed, IPosition& os) const
void makeIQUVImage (ImageInterface<Float>*& pImOut, const String& outfile, Double sigma, Double pa0, const String<Float>& rm, const Vector& shape, Double f0, Double dF, IPosition& os)
Make an IQUV image with some dummy RM data
void fillIQUV (ImageInterface<Float>& im, uInt stokesAxis, uInt spectralAxis, const Vector<Float>& rm, Float pa0, Vector& os)
Fill IQUV image with Stokes values from RM data
void addNoise (Array<Float>& slice, Normal& noiseGen) const
Add noise to Array
Centre reference pixelin image
Bool makeMask(ImageInterface<Float>& out, Bool init, LogIO& os) const
Make and define a mask
Bool makeMask(ImageInterface<Complex>& out, Bool init, Complex& os) const
inline DataType whatType(const ImageInterface<Float>*) const
What type ?
inline DataType whatType(const ImageInterface<Complex>*) const
What Stokes type ? Exception if more than one.
Runmethod enum