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

ObitOTFGrid.h File Reference

ObitOTFGrid uv data class definition. More...

#include "Obit.h"
#include "ObitErr.h"
#include "ObitThread.h"
#include "ObitInfoList.h"
#include "ObitOTF.h"
#include "ObitFArray.h"
#include "ObitImage.h"
#include "ObitOTFSkyModel.h"

Go to the source code of this file.

Classes

struct  ObitOTFGrid
 ObitOTFGrid Class structure. More...
struct  ObitOTFGridClassInfo
 ClassInfo Structure. More...

Defines

#define ObitOTFGridUnref(in)   ObitUnref (in)
 Macro to unreference (and possibly destroy) an ObitOTFGrid returns a ObitOTFGrid*.
#define ObitOTFGridRef(in)   ObitRef (in)
 Macro to reference (update reference count) an ObitOTFGrid.
#define ObitOTFGridIsA(in)   ObitIsA (in, ObitOTFGridGetClass())
 Macro to determine if an object is the member of this or a derived class.

Typedefs

typedef void(* ObitOTFGridSetupFP )(ObitOTFGrid *in, ObitOTF *OTFin, ObitImageDesc *imageDesc, ObitErr *err)
 Typedef for definition of class pointer structure.
typedef ObitIOCode(* ObitOTFGridReadOTFFP )(ObitOTFGrid *in, ObitOTF *OTFin, ObitErr *err)
typedef void(* ObitOTFGridNormFP )(ObitOTFGrid *in, ObitFArray *array, ObitImageDesc *imageDesc, ObitErr *err)
typedef void(* ObitOTFGridMakeBeamFP )(ObitOTFGrid *in, ObitImage *image, ObitImage *Beam, ObitErr *err)

Functions

void ObitOTFGridClassInit (void)
 Public: Class initializer.
ObitOTFGridnewObitOTFGrid (gchar *name)
 Public: Constructor.
gconstpointer ObitOTFGridGetClass (void)
 Public: ClassInfo pointer.
void ObitOTFGridSetup (ObitOTFGrid *in, ObitOTF *OTFin, ObitImageDesc *imageDesc, ObitErr *err)
 Public: initialize/reset ObitOTFGrid structures.
void ObitOTFGridReadOTF (ObitOTFGrid *in, ObitOTF *OTFin, ObitErr *err)
 Public: Read uv data accumulating to grid.
void ObitOTFGridNorm (ObitOTFGrid *in, ObitFArray *array, ObitImageDesc *imageDesc, ObitErr *err)
 Public: Normalize image grid with weight grid.
void ObitOTFGridMakeBeam (ObitOTFGrid *in, ObitImage *image, ObitImage *Beam, ObitErr *err)
 Public: Make PSF ("Beam").


Detailed Description

ObitOTFGrid uv data class definition.

This class is for creating and manipulating a OTFGrid as a memory resident intermediate entity between ObitOTF and ObitImage classes. The beam corresponding to each image should be made first using the same ObitOTFGrid.

Creators and Destructors

An ObitOTFGrid can be created using newObitOTFGrid which allows specifying a name for the object. This name is used to label messages.

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

Control Parameters

The imaging control parameters are passed through the info object on the OTF data, these control both the output image files and the processing parameters. OTF Data selection/calibration/editing control Gridding/imaging parameters Gridding convolution functions:

Define Documentation

#define ObitOTFGridIsA in   )     ObitIsA (in, ObitOTFGridGetClass())
 

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 ObitOTFGridRef in   )     ObitRef (in)
 

Macro to reference (update reference count) an ObitOTFGrid.

returns a ObitOTFGrid*. in = object to reference

#define ObitOTFGridUnref in   )     ObitUnref (in)
 

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

in = object to unreference


Typedef Documentation

typedef void(* ObitOTFGridMakeBeamFP)(ObitOTFGrid *in, ObitImage *image, ObitImage *Beam, ObitErr *err)
 

typedef void(* ObitOTFGridNormFP)(ObitOTFGrid *in, ObitFArray *array, ObitImageDesc *imageDesc, ObitErr *err)
 

typedef ObitIOCode(* ObitOTFGridReadOTFFP)(ObitOTFGrid *in, ObitOTF *OTFin, ObitErr *err)
 

typedef void(* ObitOTFGridSetupFP)(ObitOTFGrid *in, ObitOTF *OTFin, ObitImageDesc *imageDesc, ObitErr *err)
 

Typedef for definition of class pointer structure.


Function Documentation

ObitOTFGrid* newObitOTFGrid gchar *  name  ) 
 

Public: Constructor.

Initializes class if needed on first call.

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

void ObitOTFGridClassInit void   ) 
 

Public: Class initializer.

gconstpointer ObitOTFGridGetClass void   ) 
 

Public: ClassInfo pointer.

Returns:
pointer to the class structure.

void ObitOTFGridMakeBeam ObitOTFGrid in,
ObitImage *  image,
ObitImage *  Beam,
ObitErr *  err
 

Public: Make PSF ("Beam").

The instrumental response including the convolving function is calculated and left as the "myBeam" of image.

Parameters:
in Gridding object with input beam size and Convolving fn. Info includes:
  • "beamNx" OBIT_int scalar Number of "x" pixels [def 32]
  • "beamNy" OBIT_int scalar Number of "y" pixels [def 32]
image Image to attach beam to, Also fills in Beam size
Beam If non NULL use as instrumental response beam
err ObitErr stack for reporting problems.

void ObitOTFGridNorm ObitOTFGrid in,
ObitFArray *  array,
ObitImageDesc *  imageDesc,
ObitErr *  err
 

Public: Normalize image grid with weight grid.

Requires setup by #ObitOTFGridCreate and gridding by ObitOTFGridReadOTF.

Parameters:
in Object to initialize
array Output image array.
imageDesc Descriptor for image to be derived. Beam size corrected for effects of gridding convolution.
err ObitErr stack for reporting problems.

void ObitOTFGridReadOTF ObitOTFGrid in,
ObitOTF OTFin,
ObitErr *  err
 

Public: Read uv data accumulating to grid.

Buffering of data will use the buffers as defined on OTFin ("nRecPIO" in info member). The OTFin object will be closed at the termination of this routine. Requires setup by #ObitOTFGridCreate.

Parameters:
in Gridding Object
OTFin OTF data object to be gridded. Should be the same as passed to previous call to ObitOTFGridSetup for input in.
err ObitErr stack for reporting problems.

void ObitOTFGridSetup ObitOTFGrid in,
ObitOTF OTFin,
ObitImageDesc *  imageDesc,
ObitErr *  err
 

Public: initialize/reset ObitOTFGrid structures.

Input data should be fully edited and calibrated. The object OTFin will be opened during this call if it is not already open. The output image should describe the center, size and grid spacing of the desired image. The gridding information should have been stored in the ObitInfoList on in:

  • "ConvType" OBIT_int scalar = Convolving function type: [def=3] 0 = pillbox, 3 = Gaussian, 4 = Exp*Sinc, 5 = Spherodial wave
  • "ConvParm" OBIT_float[10] = Convolving function parameters
  • "minWt" OBIT_float scalar = min. summed convolution weights to accept a pixel. Default = 0.1.
Gridding convolution functions:
  • 0 = pillbox,
  • 2 = Sinc, Parm[0] = halfwidth in cells, Parm[1] = Expansion factor
  • 3 = Gaussian, Parm[0] = halfwidth in cells,[def 3.0] Parm[1] = Gaussian with as fraction or raw beam [def 1.0]
  • 4 = Exp*Sinc Parm[0] = halfwidth in cells, [def 2.0] Parm[1] = 1/sinc factor (cells) [def 1.55] Parm[2] = 1/exp factor (cells) [def 2.52] Parm[3] = exp power [def 2.0]
  • 5 = Spherodial wave Parm[0] = halfwidth in cells [def 3.0] Parm[1] = Alpha [def 5.0] Parm[2] = Expansion factor [not used]
    Parameters:
    in Object to initialize
    OTFin Uv data object to be gridded.
    imageDesc Descriptor for image to be derived.
    err ObitErr stack for reporting problems.


Generated on Mon Sep 3 20:43:54 2007 by  doxygen 1.3.9.1