frexpd2

NAME

frexpd2 - return fractions and exponents of double elements

SYNOPSIS

Procedure call syntax:

#include <simdmath.h>
vector double frexpd2(vector double x, vector signed long long *pexp);
Link with -lsimdmath

Inline call syntax:

#include <simdmath.h>
#include <frexpd2.h>
vector double _frexpd2(vector double x, vector signed long long *pexp);
Parameters  
x input vector
*pexp pointer to output vector

DESCRIPTION

The frexpd2 function is used to split the values of the elements in x into a normalized fraction and an exponent. frexpd2 returns a vector of fractions and a vector of exponent integers in *pexp.

Each fraction element frac, and each exponent integer element exp, represent the value of the corresponding element x, such that:
  • Every element of |frac| is in the interval [1/2,1) or is 0.
  • x=frac*2^exp
  • If an element of x is 0 the corresponding element of *pexp is also 0.

RETURN VALUE

The function frexpd2 returns:
  • a double vector in which each element is defined as the normalized fraction of the corresponding element of x, and
  • a signed long long* vector in which each element is defined as the exponent such that 2 raised to this value and multiplied by the normalized fraction is equal to x.

ENVIRONMENT

SPU only

CONFORMING TO

SIMD Math library specification for the Cell Broadband Engineā„¢ Architecture.

NOTES

Basis

ISO9899 (C99) frexp functions.

SEE ALSO

frexp(3), frexpf4(3), exp(3), expf4(3), expd2(3), exp2(3), exp2f4(3), exp2d2(3), expm1(3), expm1f4(3), expm1d2(3), ldexp(3), ldexpf4(3), ldexpd2(3), pow(3), powf4(3), powd2(3), hypot(3), hypotd2(3), hypotf4(3), sqrt(3), sqrtf4(3), sqrtd2(3), cbrt(3), cbrtf4(3), cbrtd2(3), log(3), logf4(3), logd2(3), log10(3), log2f4(3), log2d2(3), log1p(3), log10f4(3), log10d2(3), logb(3), log1pf4(3), log1pd2(3), ilogb(3), logbf4(3), scalbn(3), ilogbf4(3), ilogbd2(3)