WCSLIB 8.2.2
Loading...
Searching...
No Matches
Enumerations | Functions | Variables
log.h File Reference

Go to the source code of this file.

Enumerations

enum  log_errmsg_enum {
  LOGERR_SUCCESS = 0 , LOGERR_NULL_POINTER = 1 , LOGERR_BAD_LOG_REF_VAL = 2 , LOGERR_BAD_X = 3 ,
  LOGERR_BAD_WORLD = 4
}
 

Functions

int logx2s (double crval, int nx, int sx, int slogc, const double x[], double logc[], int stat[])
 Transform to logarithmic coordinates.
 
int logs2x (double crval, int nlogc, int slogc, int sx, const double logc[], double x[], int stat[])
 Transform logarithmic coordinates.
 

Variables

const char * log_errmsg []
 Status return messages.
 

Detailed Description

Routines in this suite implement the part of the FITS World Coordinate System (WCS) standard that deals with logarithmic coordinates, as described in

"Representations of world coordinates in FITS", Greisen, E.W., & Calabretta, M.R. 2002, A&A, 395, 1061 (WCS Paper I)

"Representations of spectral coordinates in FITS", Greisen, E.W., Calabretta, M.R., Valdes, F.G., & Allen, S.L. 2006, A&A, 446, 747 (WCS Paper III)

These routines define methods to be used for computing logarithmic world coordinates from intermediate world coordinates (a linear transformation of image pixel coordinates), and vice versa.

logx2s() and logs2x() implement the WCS logarithmic coordinate transformations.

Argument checking:
The input log-coordinate values are only checked for values that would result in floating point exceptions and the same is true for the log-coordinate reference value.

Accuracy:
No warranty is given for the accuracy of these routines (refer to the copyright notice); intending users must satisfy for themselves their adequacy for the intended purpose. However, closure effectively to within double precision rounding error was demonstrated by test routine tlog.c which accompanies this software.

Enumeration Type Documentation

◆ log_errmsg_enum

Enumerator
LOGERR_SUCCESS 
LOGERR_NULL_POINTER 
LOGERR_BAD_LOG_REF_VAL 
LOGERR_BAD_X 
LOGERR_BAD_WORLD 

Function Documentation

◆ logx2s()

int logx2s ( double  crval,
int  nx,
int  sx,
int  slogc,
const double  x[],
double  logc[],
int  stat[] 
)

Transform to logarithmic coordinates.

logx2s() transforms intermediate world coordinates to logarithmic coordinates.

Parameters
[in,out]crvalLog-coordinate reference value (CRVALia).
[in]nxVector length.
[in]sxVector stride.
[in]slogcVector stride.
[in]xIntermediate world coordinates, in SI units.
[out]logcLogarithmic coordinates, in SI units.
[out]statStatus return value status for each vector element:
  • 0: Success.
Returns
Status return value:
  • 0: Success.
  • 2: Invalid log-coordinate reference value.

◆ logs2x()

int logs2x ( double  crval,
int  nlogc,
int  slogc,
int  sx,
const double  logc[],
double  x[],
int  stat[] 
)

Transform logarithmic coordinates.

logs2x() transforms logarithmic world coordinates to intermediate world coordinates.

Parameters
[in,out]crvalLog-coordinate reference value (CRVALia).
[in]nlogcVector length.
[in]slogcVector stride.
[in]sxVector stride.
[in]logcLogarithmic coordinates, in SI units.
[out]xIntermediate world coordinates, in SI units.
[out]statStatus return value status for each vector element:
  • 0: Success.
  • 1: Invalid value of logc.
Returns
Status return value:
  • 0: Success.
  • 2: Invalid log-coordinate reference value.
  • 4: One or more of the world-coordinate values are incorrect, as indicated by the stat vector.

Variable Documentation

◆ log_errmsg

const char * log_errmsg[]
extern

Status return messages.

Error messages to match the status value returned from each function.