Main Page | Class List | Directories | File List | Class Members | File Members

ObitIonCal.h File Reference

ObitIonCal Ionospheric model calibration class. More...

#include "Obit.h"
#include "ObitErr.h"
#include "ObitImage.h"
#include "ObitImageMosaic.h"

Go to the source code of this file.

Classes

struct  ObitIonCal
 ObitIonCal Class structure. More...
struct  ObitIonCalClassInfo
 ClassInfo Structure. More...

Defines

#define ObitIonCalUnref(in)   ObitUnref (in)
 Macro to unreference (and possibly destroy) an ObitIonCal returns a ObitIonCal*.
#define ObitIonCalRef(in)   ObitRef (in)
 Macro to reference (update reference count) an ObitIonCal.
#define ObitIonCalIsA(in)   ObitIsA (in, ObitIonCalGetClass())
 Macro to determine if an object is the member of this or a derived class.

Typedefs

typedef ObitIonCal *(* ObitIonCalCreateFP )(gchar *name)
 Typedef for definition of class pointer structure.

Functions

void ObitIonCalClassInit (void)
 Public: Class initializer.
ObitIonCalnewObitIonCal (gchar *name)
 Public: Default Constructor.
ObitIonCalObitIonCalCreate (gchar *name)
 Public: Create/initialize ObitIonCal structures.
gconstpointer ObitIonCalGetClass (void)
 Public: ClassInfo pointer.
ObitIonCalObitIonCalCopy (ObitIonCal *in, ObitIonCal *out, ObitErr *err)
 Public: Copy (deep) constructor.
void ObitIonCalClone (ObitIonCal *in, ObitIonCal *out, ObitErr *err)
 Public: Copy structure.
void ObitIonCalSetData (ObitIonCal *in, ObitUV *inUV)
 Public: Attach uv data.
void ObitIonCalFindImage (ObitIonCal *in, ObitImage *image, ObitErr *err)
 Public: Lookup calibrators for image.
void ObitIonCalPosMul (ObitIonCal *in, ObitImage *image, ObitErr *err)
 Public: Fit multiple calibrators in same image.
gfloat ObitIonCalFit1 (ObitIonCal *in, gint epoch, gfloat *coef, ObitErr *err)
 Public: Fit single epoch Zernike model.
void ObitIonCaldoCal (ObitIonCal *in, ObitErr *err)
 Public: Determine Ionospheric calibration for a UV data.
void ObitIonCalPosMosaic (ObitIonCal *in, ObitImageMosaic *mosaic, gint epoch, ObitErr *err)
 Public: Fit position offsets to sources expected at centers of a mosaic.


Detailed Description

ObitIonCal Ionospheric model calibration class.

This class is derived from the Obit class.

Creators and Destructors

An ObitIonCal will usually be created using ObitIonCalCreate which allows specifying a name for the object as well as other information.

A copy of a pointer to an ObitIonCal should always be made using the ObitIonCalRef function which updates the reference count in the object. Then whenever freeing an ObitIonCal or changing a pointer, the function ObitIonCalUnref will decrement the reference count and destroy the object when the reference count hits 0. There is no explicit destructor.


Define Documentation

#define ObitIonCalIsA in   )     ObitIsA (in, ObitIonCalGetClass())
 

Macro to determine if an object is the member of this or a derived class.

Returns TRUE if a member, else FALSE in = object to reference

#define ObitIonCalRef in   )     ObitRef (in)
 

Macro to reference (update reference count) an ObitIonCal.

returns a ObitIonCal*. in = object to reference

#define ObitIonCalUnref in   )     ObitUnref (in)
 

Macro to unreference (and possibly destroy) an ObitIonCal returns a ObitIonCal*.

in = object to unreference


Typedef Documentation

typedef ObitIonCal*(* ObitIonCalCreateFP)(gchar *name)
 

Typedef for definition of class pointer structure.


Function Documentation

ObitIonCal* newObitIonCal gchar *  name  ) 
 

Public: Default Constructor.

Initializes class if needed on first call.

Parameters:
name An optional name for the object.
Returns:
the new object.

void ObitIonCalClassInit void   ) 
 

Public: Class initializer.

void ObitIonCalClone ObitIonCal in,
ObitIonCal out,
ObitErr err
 

Public: Copy structure.

Parameters:
in The object to copy
out An existing object pointer for output, must be defined.
err Obit error stack object.

ObitIonCal* ObitIonCalCopy ObitIonCal in,
ObitIonCal out,
ObitErr err
 

Public: Copy (deep) constructor.

Parameters:
in The object to copy
out An existing object pointer for output or NULL if none exists.
err Obit error stack object.
Returns:
pointer to the new object.

ObitIonCal* ObitIonCalCreate gchar *  name  ) 
 

Public: Create/initialize ObitIonCal structures.

Parameters:
name An optional name for the object.
Returns:
the new object.

void ObitIonCaldoCal ObitIonCal in,
ObitErr err
 

Public: Determine Ionospheric calibration for a UV data.

Loops over time slices, imaging and deconvolving selected fields. Then determines position offsets and fits an ionospheric model. Results are stored in an 'NI' table attached to inUV. Current maximum 1024 epochs. Routine translated from the AIPSish IONCAL.FOR/IONCAL

Parameters:
in IonCal object, must have myData UV data attached. If myData is a multisource file, then selection (1 source) , calibration and editing controls must be set on the info member. Control parameters on the myData info member.
  • Catalog OBIT_char (?,1,1) AIPSVZ format FITS catalog for defining outliers, 'Default' or blank = use default catalog.
  • catDisk OBIT_int (1,1,1) FITS disk for catalog [def 1]
  • OutlierDist OBIT_float (1,1,1) How far from pointing to add calibrators
  • OutlierFlux OBIT_float (1,1,1) Minimum estimated flux density include outlier fields from Catalog. [default 0.1 Jy ]
  • OutlierSI OBIT_float (1,1,1) Spectral index to use to convert catalog flux density to observed frequency. [default = -0.75]
  • Niter OBIT_int (1,1,1) Max. number of components to clean
  • minFlux OBIT_float (1,1,1) Minimum flux density to CLEAN
  • autoWindow OBIT_boolean (1,1,1)True if autoWindow feature wanted.
  • dispURL" OBIT_string (1,1,1) URL of display server
Control parameters on the in->info member.
  • nZern OBIT_int (1,1,1) Zernike polynomial order requested [def 5]
  • MaxQual OBIT_int (1,1,1) Max. cal. quality code [def 1]
  • prtLv OBIT_int (1,1,1) Print level >=2 => give list [def 0]
  • MaxRMS OBIT_float (1,1,1) Maximum allowable RMS in arcsec. [def 20]
  • MinRat OBIT_float (1,1,1) Minimum acceptable ratio to average flux [def 0.1]
  • FitDist OBIT_int (1,1,1) Dist, from expected location to search asec [10 pixels]
  • MinPeak OBIT_float (1,1,1) Min. acceptable image peak (Jy) [1.0] If not given OutlierFlux is used
  • MaxDist OBIT_float (1,1,1) Max. distance (deg/10) to accept calibrator [1.]
  • MaxWt OBIT_float (1,1,1) Max. weight [10.0]
  • doINEdit OBIT_boolean (1,1,1) If true flag solutions for which the seeing residual could not be determined or exceeds MaxRMS [def TRUE]
  • doSN OBIT_boolean (1,1,1) If true, convert IN table to an SN table attached to inUV. [def False]
  • solInt OBIT_float (1,1,1) Solution interval (min). [def 1]
err Error code: 0 => ok, -1 => all data flagged

void ObitIonCalFindImage ObitIonCal in,
ObitImage image,
ObitErr err
 

Public: Lookup calibrators for image.

Previous contents of the CalList are cleared

Parameters:
in IonCal object Control parameters are on the info member.
  • Catalog OBIT_char (?,1,1) AIPSVZ format FITS catalog for defining outliers, 'Default' or blank = use default catalog.
  • catDisk OBIT_int (1,1,1) FITS disk for catalog [def 1]
  • OutlierFlux OBIT_float (1,1,1) Minimum estimated flux density include cal. fields from Catalog. [default 0.1 Jy ]
  • OutlierSI OBIT_float (1,1,1) Spectral index to use to convert catalog flux density to observed frequency. [default = -0.75]
  • MaxQual OBIT_int (1,1,1) Max. cal. quality code [def 1]
  • prtLv OBIT_int (1,1,1) Print level >=2 => give list [def 0]
calList Calibrator list each element of which has:
  • ra position RA (deg) of calibrators
  • dec position Dec (deg) of calibrators
  • shift Offset in field [x,y] on unit Zernike circle of position
  • pixel Expected pixel in reference image
  • flux Estimated catalog flux density
  • offset Measured offset [x,y] from expected position (deg)
  • peak Measured peak flux density (image units)
  • fint Measured integrated flux density (image units)
  • wt Determined weight
  • qual Catalog quality code
image Image object
err Error stack

gfloat ObitIonCalFit1 ObitIonCal in,
gint  epoch,
gfloat *  coef,
ObitErr err
 

Public: Fit single epoch Zernike model.

Iteratively edits most discrepant point if needed to get RMS residual down to MaxRMS.

Parameters:
in IonCal object Control parameters are on the info member.
  • "nZern" OBIT_int (1,1,1) Zernike polynomial order requested [def 5]
  • "MaxRMS" OBIT_float (1,1,1) Target RMS residual (asec), default 10 asec
  • prtLv OBIT_int (1,1,1) Print level >=3 => give fitting diagnostics [def. 0]
epoch 1-rel time index i measurements
coef [out] Fitted coefficients
err Error stack
Returns:
RMS residual in deg, -1 on error

gconstpointer ObitIonCalGetClass void   ) 
 

Public: ClassInfo pointer.

Returns:
pointer to the class structure.

void ObitIonCalPosMosaic ObitIonCal in,
ObitImageMosaic mosaic,
gint  epoch,
ObitErr err
 

Public: Fit position offsets to sources expected at centers of a mosaic.

Asumes given a calList with entries corresponding to entries in an Image mosaic, fit the actual positioins in the mosaic and write new entries in the CalList with offsets for acceptable fits. Resultant positions are all referred to a tangent plane at the pointing center, this is referred to as the Zernike plane as this plane will be used to fit the phase screen. The "Zernike Unit Circle" defines the phase screen. Source position offsets are in the X and Y (RA, Dec) as defined by this plane. Routine adapted from the AIPSish CALPOS.FOR/CALPOS

Parameters:
in IonCal object Control parameters are on the info member.
  • "nZern" OBIT_int (1,1,1) Zernike polynomial order requested [def 5]
  • FitDist OBIT_int (1,1,1) dist, from expected location to search asec [10 pixels]
  • MinPeak OBIT_float (1,1,1) Min. acceptable image peak (Jy) [1.0]
  • MaxDist OBIT_float (1,1,1) Max. distance (deg/10) to accept calibrator [1.]
  • MaxWt OBIT_float (1,1,1) Max. weight [10.0]
  • MaxQual OBIT_int (1,1,1) Max. cal. quality code [def 1]
  • prtLv OBIT_int (1,1,1) Print level >=1 => give fits
mosaic Image mosaic object
calList Calibrator list each element of which has:
  • ra position RA (deg) of calibrators
  • dec position Dec (deg) of calibrators
  • shift Offset in field [x,y] on unit Zernike circle of position
  • pixel Expected pixel in reference image
  • flux Estimated catalog flux density
  • offset Measured offset [x,y] from expected position (deg)
  • peak Measured peak flux density (image units)
  • fint Measured integrated flux density (image units)
  • wt Determined weight
  • qual Catalog quality code
err Error stack
epoch Epoch number

void ObitIonCalPosMul ObitIonCal in,
ObitImage image,
ObitErr err
 

Public: Fit multiple calibrators in same image.

Given an image containing calibrator sources, return fitted fluxes and position offsets. Resultant positions are all referred to a tangent plane at the pointing center, this is referred to as the Zernike plane as this plane will be used to fit the phase screen. The "Zernike Unit Circle" defines the phase screen. Source position offsets are in the X and Y (RA, Dec) as defined by this plane. Routine translated from the AIPSish CALPOS.FOR/CALPOS

Parameters:
in IonCal object Control parameters are on the info member.
  • "FitDist" OBIT_int (1,1,1) dist, from expected location to search asec [10 pixels]
  • "MinPeak" OBIT_float (1,1,1) Min. acceptable image peak (Jy) [1.0]
  • "MaxDist" OBIT_float (1,1,1) Max. distance (deg/10) to accept calibrator [1.]
  • "MaxWt" OBIT_float (1,1,1) Max. weight [10.0]
  • prtLv OBIT_int (1,1,1) Print level >=1 => give fits
image Image object
calList Calibrator list each element of which has:
  • ra position RA (deg) of calibrators
  • dec position Dec (deg) of calibrators
  • shift Offset in field [x,y] on unit Zernike circle of position
  • pixel Expected pixel in reference image
  • flux Estimated catalog flux density
  • offset Measured offset [x,y] from expected position (deg)
  • peak Measured peak flux density (image units)
  • fint Measured integrated flux density (image units)
  • wt Determined weight
  • qual Catalog quality code
err Error stack

void ObitIonCalSetData ObitIonCal in,
ObitUV inUV
 

Public: Attach uv data.

Parameters:
in Object to attach UV data to
inUV UV data to attach


Generated on Fri Aug 31 22:13:06 2007 for Obit by  doxygen 1.3.9.1