API Reference¶
Here you can find documentation of all the functions grouped by coding language.
python
script documentation also includes a summary of all arguments, which
can be reproduced on the command line using script.py --help
.
Note
All functions that begin with RTS
are either borrowed or adapted
from the RTS (Mitchell et al. 2008) calibration package, with permission
from the original authors. All credit to the original authors. The RTS code
can currently be found at the RTS github.
python
code¶
wodenpy
C
code¶
The precision of most functions is determined at compilation time, via the
following #ifdef
statement found in WODEN/include/woden_precision_defs.h
:
#ifdef DOUBLE_PRECISION
/*! If -DDOUBLE_PRECISION flag is added at compilation,
then user_precision_t is set to double */
typedef double user_precision_t;
/*! If -DDOUBLE_PRECISION flag is added at compilation,
then user_precision_complex_t is set to double _Complex */
typedef double _Complex user_precision_complex_t;
#else
/*! If -DDOUBLE_PRECISION flag is NOT added at compilation,
then user_precision_t defaults to float */
typedef float user_precision_t;
/*! If -DDOUBLE_PRECISION flag is NOT added at compilation,
then user_precision_complex_t defaults to float _Complex */
typedef float _Complex user_precision_complex_t;
#endif
So where you see user_precision_t
in the API, this is either a float
or
double
, and similarly user_precision_complex_t
is either a float _Complex
or double _Complex
.
CUDA
code¶
Similarly to C
code, the precision of most functions is determined at
compilation time, via the following #ifdef
statement found in
WODEN/include/cudacomplex.h
:
#ifdef DOUBLE_PRECISION
/*! If -DDOUBLE_PRECISION flag is added at compilation,
then cuUserComplex is set to cuDoubleComplex */
typedef cuDoubleComplex cuUserComplex;
#else
/*! If -DDOUBLE_PRECISION flag is NOTE added at compilation,
then cuUserComplex is set to cuFloatComplex */
typedef cuFloatComplex cuUserComplex;
#endif
meaning that cuUserComplex
in the API either means cuFloatComplex
or
cuDoubleComplex
depending on compilation flags.