VIMOS DRS Reference Manual 2.9.3
Functions
Astrometry Utilities

Functions

VimosBool VmAstroComputeCD (VimosTableArray *calTables, const VimosImage *refImage)
 Fit a CD matrix (pointing and rotation)
VimosBool VmAstroComputeCO (VimosImage *calImage, float tolrad, float sigClip, VimosTable *stmcTable, unsigned int tflag, double tdevmax)
 Fit a CO matrix (scale and distortions)
VimosTable * resetAstroTable (int count, char *filterName)
 Build Astrometric Table.
VimosTable * resetStarMatchTable (int count, int naxis1, int naxis2)
 Build StarMatchTable Table.
VimosTable * shiftStarMatch (VimosTable **starMatchTable)
 Build StarMatchTable Table.
int calcres (VimosTable *o_star, VimosTable *a_star, int imatch[], int nmatch, double *rms)
 Compute the RMS error of the CCD <-> Sky transformation.

Detailed Description

The module provides the utility functions to determine the correct astrometry (CD and CO matrices) for a VIMOS image.


Function Documentation

int calcres ( VimosTable *  o_star,
VimosTable *  a_star,
int  imatch[],
int  nmatch,
double *  rms 
)

Compute the RMS error of the CCD <-> Sky transformation.

Returns:
VM_TRUE/VM_FALSE
Parameters:
wcswcs structure
o_starstar table
a_starastrometric table
imatchtable of matching indexes
nmatchnumber of matches
rmspointer to the returned array

Compute the RMS error of the CCD <-> Sky transformation.

Author:
P. Montegriffo (i/o modified by P.Sartoretti)
VimosTable* resetAstroTable ( int  count,
char *  filterName 
)

Build Astrometric Table.

Returns:
VimosTable
Parameters:
countN. of entries
filterNameImage filter

Build up an astrometric Table (empty) of count*count rows for filter FilterName (used by VmImComputeCO)

Author:
B.Garilli
VimosTable* resetStarMatchTable ( int  count,
int  naxis1,
int  naxis2 
)

Build StarMatchTable Table.

Returns:
VimosTable
Parameters:
countN. of entries

Build up an StarTable Table of count*count rows Fill it up with an equally spaced grid of count*count points (used by VmImComputeCO)

Author:
B.Garilli
VimosTable* shiftStarMatch ( VimosTable **  starMatchTable)

Build StarMatchTable Table.

Returns:
VimosTable
Parameters:
**starMatchTableArray of 4 StarMatchTables (1 per quadrant)

put together the 4 tables, different for each quadrant we must change the image coordinates, and then change the CRPIX1 and 2 values to 0,0

for positive X quads (quad 1 and 4) it is: new X = oldX-crpix1-0.5 for neg. X quads (2 and 3) new X = -crpix1+oldX+0.5 for pos. Y quads (1 and 2) new Y = oldY-crpix2-0.5 for neg. Y quads (3 and 4) new Y = -crpix2+oldY+0.5

Author:
B.Garilli
VimosBool VmAstroComputeCD ( VimosTableArray *  calTables,
const VimosImage *  refImage 
)

Fit a CD matrix (pointing and rotation)

Returns:
VM_TRUE or VM_FALSE
Parameters:
calTablesSet of star match tables from different quadrants.
refImageReference image.

The function merges the star match tables from the input set set into a single star match table having the origin of the coordinate system a pixel (0, 0) (given by the CRPIXi keywords). The new CD matrix is computed fitting pixels versus right ascension and declination.

The reference image refImage is used to obtain the image size in pixels of the images from which the input star match tables were created. It is assumed that all images have the same size.

The headers of each star match table in the input set is updated with the computed CD matrix.

Note:
To work properly the pixel coordinates of the input star match tables must be corrected for temperature effects.
VimosBool VmAstroComputeCO ( VimosImage *  calImage,
float  tolrad,
float  sigClip,
VimosTable *  stmcTable,
unsigned int  tflag,
double  tdevmax 
)

Fit a CO matrix (scale and distortions)

Parameters:
calImageThe image for which CO has to be computed
tolradSearch radius.
sigClipThreshold for sigma clipping (?)
stmcTableStar match table.
tflagFlag to enable/disable temperature checks
tdevmaxTolerance in C for beam temperature
Returns:
VM_TRUE or VM_FALSE

The function reads the CD matrix from the image calImage, or, if the a star match table was given, i.e. stmcTable is different from NULL, it is taken from stmcTable.

An artificial star table with a grid of 10 times 10 points is created and the CCD to sky coordinate transformation is applied to them, computing right ascension and declination. The right ascension and declination are used to build an astrometric table, and from both tables, star table and astrometric table, a star match table is created and the CO matrix is fitted. The result is an image calImage having a CO matrix which comprises wcs and CcdToSky.

For details on the temperature check see the documentation for computeVirtualPixels

See also:
computeVirtualPixels