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

ObitCInterpolate.c File Reference

ObitCInterpolate class function definitions. More...

#include "ObitCInterpolate.h"
#include "ObitPosition.h"

Functions

void ObitCInterpolateInit (gpointer in)
 Private: Initialize newly instantiated object.
void ObitCInterpolateClear (gpointer in)
 Private: Deallocate members.
ObitCInterpolatenewObitCInterpolate (gchar *name)
 Public: Constructor.
ObitCInterpolatenewObitCInterpolateCreate (gchar *name, ObitCArray *array, ObitImageDesc *desc, gfloat OSX, gfloat OSY, glong numConjCol, glong hwidth, ObitErr *err)
 Public: Constructor from value.
gconstpointer ObitCInterpolateGetClass (void)
 Public: ClassInfo pointer.
ObitCInterpolateObitCInterpolateCopy (ObitCInterpolate *in, ObitCInterpolate *out, ObitErr *err)
 Public: Copy (deep) constructor.
ObitCInterpolateObitCInterpolateClone (ObitCInterpolate *in, ObitCInterpolate *out)
 Public: Copy (shallow) constructor.
void ObitCInterpolateReplace (ObitCInterpolate *in, ObitCArray *newArray)
 Public: Replace member ObitCArray.
void ObitCInterpolatePixel (ObitCInterpolate *in, gfloat *pixel, gfloat out[2], ObitErr *err)
 Public: Interpolate Pixel in 2D array.
void ObitCInterpolate1D (ObitCInterpolate *in, gfloat pixel, gfloat out[2])
 Public: Interpolate value in 1- array.
void ObitCInterpolatePosition (ObitCInterpolate *in, gdouble *coord, gfloat out[2], ObitErr *err)
 Public: Interpolate Position in 2D array.
void ObitCInterpolateOffset (ObitCInterpolate *in, gfloat *off, gfloat out[2], ObitErr *err)
 Public: Interpolate Offset in 2D array.
void ObitCInterpolateClassInit (void)
 Public: Class initializer.


Detailed Description

ObitCInterpolate class function definitions.

This class is derived from the Obit base class. This class supports 1 and 2-D interpolation in ObitCArrays using Lagrange interpolation.


Function Documentation

ObitCInterpolate* newObitCInterpolate gchar *  name  ) 
 

Public: Constructor.

Initializes class if needed on first call.

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

ObitCInterpolate* newObitCInterpolateCreate gchar *  name,
ObitCArray array,
ObitImageDesc desc,
gfloat  OSX,
gfloat  OSY,
glong  numConjCol,
glong  hwidth,
ObitErr err
 

Public: Constructor from value.

Initializes class if needed on first call. This class is intended for use interpolating complex values in a UV grid which is the Fourier transform of an image. This is potentially modified by OSX, OSY and herm. Only 1 and 2D arrays are handled. Note: The FFTW convention for halfplane complex images is different from AIPS, the "short" = n/2+1 axis is the first one rather than the second.

Parameters:
name An optional name for the object.
array The ObitCArray to be interpolated.
desc if nonNULL, an image descriptor describing the image whose Fourier transform is to be interpolated.
OSX Oversampling factor in X/U, use 1.0 for unpadded image
OSY Oversampling factor in Y/V
numConjCol Number of conjugate (neg V) columns in array, should be at least hwidth
hwidth Half width of interpolation kernal (range [1,8] allowed).
Returns:
the new object.

void ObitCInterpolate1D ObitCInterpolate in,
gfloat  pixel,
gfloat  out[2]
 

Public: Interpolate value in 1- array.

Parameters:
in The object to interpolate
pixel Pixel location (1-rel) in array
out Complex interpolated value as (real,Imag), magic value blanked

void ObitCInterpolateClassInit void   ) 
 

Public: Class initializer.

void ObitCInterpolateClear gpointer  inn  ) 
 

Private: Deallocate members.

Does (recursive) deallocation of parent class members.

Parameters:
in Pointer to the object to deallocate. Actually it should be an ObitCInterpolate* cast to an Obit*.

ObitCInterpolate* ObitCInterpolateClone ObitCInterpolate in,
ObitCInterpolate out
 

Public: Copy (shallow) constructor.

The result will have pointers to the more complex members. Parent class members are included but any derived class info is ignored.

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

ObitCInterpolate* ObitCInterpolateCopy ObitCInterpolate in,
ObitCInterpolate out,
ObitErr err
 

Public: Copy (deep) constructor.

Copies are made of complex members including disk files; these will be copied applying whatever selection is associated with the input. Parent class members are included but any derived class info is ignored.

Parameters:
in The object to copy
out An existing object pointer for output or NULL if none exists.
err Error stack, returns if not empty.
Returns:
pointer to the new object.

gconstpointer ObitCInterpolateGetClass void   ) 
 

Public: ClassInfo pointer.

Returns:
pointer to the class structure.

void ObitCInterpolateInit gpointer  inn  ) 
 

Private: Initialize newly instantiated object.

Parent classes portions are (recursively) initialized first

Parameters:
in Pointer to the object to initialize.

void ObitCInterpolateOffset ObitCInterpolate in,
gfloat *  off,
gfloat  out[2],
ObitErr err
 

Public: Interpolate Offset in 2D array.

The object must have an image descriptor to allow determing pixel coordinates. Interpolation between planes is not supported.

Parameters:
in The object to interpolate
off Coordinate offset in plane
out Complex interpolated value as (real,Imag), magic value blanked
err Error stack is pixel not inside image.

void ObitCInterpolatePixel ObitCInterpolate in,
gfloat *  pixel,
gfloat  out[2],
ObitErr err
 

Public: Interpolate Pixel in 2D array.

Interpolation between planes is not supported.

Parameters:
in The object to interpolate
pixel Pixel location (1-rel) in planes and which plane. Should have number of dimensions equal to in.
out Complex interpolated value as (real,Imag), magic value blanked
err Error stack if pixel not inside image.

void ObitCInterpolatePosition ObitCInterpolate in,
gdouble *  coord,
gfloat  out[2],
ObitErr err
 

Public: Interpolate Position in 2D array.

The object must have an image descriptor to allow determing pixel coordinates and the coordinates are assumed linear. Interpolation between planes is not supported.

Parameters:
in The object to interpolate
coord Coordinate value in plane and which plane. Should have number of dimensions equal to in.
out Complex interpolated value as (real,Imag), magic value blanked
err Error stack is pixel not inside image.

void ObitCInterpolateReplace ObitCInterpolate in,
ObitCArray newArray
 

Public: Replace member ObitCArray.

Parameters:
in The object to update
newArray The new CArray for in


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