complex(3) Library Functions Manual complex(3)
NAME
csin, ccos, cdiv, cexp, clog, cmul, cpow, csqrt - Complex functions
LIBRARY
Math Library (libm.a)
SYNOPSIS
#include <math.h>
double_complex csin (double x, double y); float_complex csinf (float x, float y); double_complex ccos (double x, double y);
float_complex ccosf (float x, float y); double_complex cdiv (double a, double b, double c, double d); float_complex cdivf (float
a, float b, float c, float d); double_complex cexp (double x, double y); float_complex cexpf (float x, float y); double_complex
clog (double x, double y); float_complex clogf (float x, float y); double_complex cmul (double a, double b, double c, double d);
float_complex cmulf (float a, float b, float c, float d); double_complex cpow (double a, double b, double c, double d); float_complex
cpowf (float a, float b, float c, float d); double_complex csqrt (double x, double y); float_complex csqrtf (float x,
float y);
DESCRIPTION
These functions can only be called from languages that support the double_complex and float_complex data types.
csin() and csinf() compute the sine of a complex number.
ccos() and ccosf() return the cosine of a complex number.
cdiv() and cdivf() return the quotient of two complex numbers: (a+ib)/(c+id).
cexp() and cexpf() return the exponential of a complex number.
clog() and clogf() return the natural logarithm of a complex number.
cmul() and cmulf() return the product of two complex numbers. cmul(a,b,c,d) is equivalent to (a + ib) * (c + id).
cpow() and cpowf() raise a complex base (a + ib) to a complex exponent (c + id). cpow(a,b,c,d) is equivalent to e**((c + id) ln(a + ib)).
csqrt() and csqrtf() compute the square root of a complex number, x + iy. The real part of csqrt is greater than or equal to zero.
---------------------------------------------------------------------------
Function Exceptional Argument Routine Behavior
---------------------------------------------------------------------------
csin(), csinf() |y| = infinity invalid argument
csin(), csinf() (sinh x sin y) > max_float overflow
csin(), csinf() (cosh x cos y) > max_float overflow
ccos(), ccosf() |y| = infinity invalid argument
ccos(), ccosf() (sin x sinh y) > max_float overflow
ccos(), ccosf() (cos x cosh y) > max_float overflow
cdiv(), cdivf() c=0 and d=0 divide by zero
cdiv(), cdivf() a=b=c=d=0 invalid argument
cexp(), cexpf() |y| = infinity invalid argument
cexp(), cexpf() |e**x cos y| > max_float overflow
cexp(), cexpf() |e**x sin y| > max_float overflow
cexp(), cexpf() |e**x cos y| < min_float underflow
cexp(), cexpf() |e**x sin y| < min_float underflow
clog(), clogf() y=0 and x=0 invalid argument
clog(), clogf() |x| = |y| = infinity invalid argument
cpow(), cpowf() sqrt(a**2 + b**2) > max_float overflow
cpow(), cpowf() c/2 * ln(a**2 + b**2) > max_float overflow
cpow(), cpowf() c/2 * ln(a**2 + b**2) overflow
- (d * atan2(b,c)) > max_float
---------------------------------------------------------------------------
-----------------------------------------------------------------------------
Value Data Hexadecimal Value Decimal Value
Name Type
-----------------------------------------------------------------------------
max_float F_FLOAT FFFF7FFF 1.701411e38
G_FLOAT FFFFFFFFFFFF7FFF 8.988465674311579e307
S_FLOAT 7F7FFFFF 3.402823e38
T_FLOAT 7FEFFFFFFFFFFFFF 1.797693134862316e308
min_float F_FLOAT 00000080 2.9387359e-39
G_FLOAT 0000000000000010 5.562684646268003e-309
S_FLOAT 00000001 1.4012985e-45
T_FLOAT 0000000000000001 4.940656458412465e-324
-----------------------------------------------------------------------------
RELATED INFORMATION
cabs(3) delim off
complex(3)