DATAMANIP (kdatamanip) functions
LIBRARY ROUTINE
lklogexp - perform log or antilog function on data object
LIBRARY CALL
int lklogexp (
kobject i,
double base,
int offset,
int inv,
kobject o)
INPUT
- i - the input object
- base - the log/anti-log base
- offset - whether to subtract 1 after taking anti-log and add 1 before taking the log (1) or take the direct anti-log and log (0)
- inv - compute log (0) or anti-log (1)
OUTPUT
RETURN VALUE
TRUE (1) on success, FALSE (0) on failure
DESCRIPTION
lklogexp performs
an log/antilog function on a data object. The routine
takes an input data object, user specified base,
offset flag, and an output data object
in which to store the result of the operation.
Therefore if lklogexp() were called with:
lklogexp(i, 2.0, TRUE, FALSE, o);
then
o = log2(i).
If lklogexp() were called with:
lklogexp(i, KE, FALSE, TRUE, o);
then
o = e**(i)-1.
If the input object has a map segment, then the values
in the map segment are modified directly according to the
requested operation.
If there is no map segment, then the value data is modified
directly according to the requested operation. If a mask
segment is also present, then only those value points with
a non-zero mask are modified.
ADDITIONAL INFORMATION
none
EXAMPLES
none
SIDE EFFECTS
none
RESTRICTIONS
If the argument of the logarithm evaluates to less than or
equal to zero, a large negative number (-KMAXFLOAT)
is returned.
A complex base is not currently supported.
MODIFICATION
none
FILES
$DATAMANIP/objects/library/kdatamanip/src/lklogexp.c
SEE ALSO
kdatamanip(3)
COPYRIGHT
Copyright (C) 1993 - 1997, Khoral Research, Inc. ("KRI") All rights reserved.