NAME
cplxexp, exp, log, log10, pow, sqrt - functions in the C++
complex number math library
SYNOPSIS
#include <complex.h>
class complex {
public:
friend complex exp(const complex);
friend complex log(const complex);
friend complex log10(const complex);
friend complex pow(double base, const complex exp);
friend complex pow(const complex base, int exp);
friend complex pow(const complex base, double exp);
friend complex pow(const complex base, const complex exp);
friend complex sqrt(const complex);
... // remainder not shown here
};
DESCRIPTION
These functions are versions of the corresponding floating-
point math library functions, overloaded for use with com-
plex numbers.
complex z = exp(x)
Returns e raised to the x power, where x is a complex
number, and e is the base of the natural logarithms.
complex z = log(x)
Returns the natural logarithm (base e) of x, where x is
a complex number.
complex z = log10(x)
Returns the common logarithm (base 10) of x, where x is
a complex number.
complex z = pow(x, y)
Returns x raised to the y power, where x or y (or both)
are complex numbers. The library provides versions of
this function optimized for various combinations of
integer, floating-point, and complex arguments.
complex z = sqrt(x)
Returns the square root of x, where x is a complex
number. The real part of the result will be non-
negative.
SEE ALSO
cplx.intro(3CC4), cartpol(3CC4), cplxerr(3CC4),
cplxops(3CC4), cplxtrig(3CC4), intro(2), C++ Library Refer-
ence Manual, Chapter 2, "The Complex Arithmetic Library."
DIAGNOSTICS
exp(x)
If the real part of x is small enough or the imaginary
part is large enough to cause overflow, exp() returns
(0,0). If the real part is large enough to cause over-
flow, returns a value depending on the sine and cosine
of the imaginary part of x:
x.imag() x.imag() returned value
sin>=0 cos>=0 (HUGE_VAL, HUGE_VAL)
sin< 0 cos>=0 (HUGE_VAL, -HUGE_VAL)
sin>=0 cos< 0 (-HUGE_VAL, HUGE_VAL)
sin< 0 cos< 0 (-HUGE_VAL, -HUGE_VAL)
In all cases, errno is set to ERANGE (see intro(2)).
log(x), log10(x)
If x is (0,0), returns (-HUGE_VAL, 0), sets errno to
EDOM (see intro(2)), and generates a SING error (see
cplxerr(3CC4)).