Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

complex(7) [linux man page]

COMPLEX(7)						     Linux Programmer's Manual							COMPLEX(7)

NAME
complex - basics of complex mathematics SYNOPSIS
#include <complex.h> DESCRIPTION
Complex numbers are numbers of the form z = a+b*i, where a and b are real numbers and i = sqrt(-1), so that i*i = -1. There are other ways to represent that number. The pair (a,b) of real numbers may be viewed as a point in the plane, given by X- and Y- coordinates. This same point may also be described by giving the pair of real numbers (r,phi), where r is the distance to the origin O, and phi the angle between the X-axis and the line Oz. Now z = r*exp(i*phi) = r*(cos(phi)+i*sin(phi)). The basic operations are defined on z = a+b*i and w = c+d*i as: addition: z+w = (a+c) + (b+d)*i multiplication: z*w = (a*c - b*d) + (a*d + b*c)*i division: z/w = ((a*c + b*d)/(c*c + d*d)) + ((b*c - a*d)/(c*c + d*d))*i Nearly all math function have a complex counterpart but there are some complex-only functions. EXAMPLE
Your C-compiler can work with complex numbers if it supports the C99 standard. Link with -lm. The imaginary unit is represented by I. /* check that exp(i * pi) == -1 */ #include <math.h> /* for atan */ #include <stdio.h> #include <complex.h> int main(void) { double pi = 4 * atan(1.0); double complex z = cexp(I * pi); printf("%f + %f * i ", creal(z), cimag(z)); } SEE ALSO
cabs(3), cacos(3), cacosh(3), carg(3), casin(3), casinh(3), catan(3), catanh(3), ccos(3), ccosh(3), cerf(3), cexp(3), cexp2(3), cimag(3), clog(3), clog10(3), clog2(3), conj(3), cpow(3), cproj(3), creal(3), csin(3), csinh(3), csqrt(3), ctan(3), ctanh(3) COLOPHON
This page is part of release 3.55 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/. 2011-09-16 COMPLEX(7)

Check Out this Related Man Page

CACOSH(3)						     Linux Programmer's Manual							 CACOSH(3)

NAME
cacosh, cacoshf, cacoshl - complex arc hyperbolic cosine SYNOPSIS
#include <complex.h> double complex cacosh(double complex z); float complex cacoshf(float complex z); long double complex cacoshl(long double complex z); Link with -lm. DESCRIPTION
These functions calculate the complex arc hyperbolic cosine of z. If y = cacosh(z), then z = ccosh(y). The imaginary part of y is chosen in the interval [-pi,pi]. The real part of y is chosen nonnegative. One has: cacosh(z) = 2 * clog(csqrt((z + 1) / 2) + csqrt((z - 1) / 2)) VERSIONS
These functions first appeared in glibc in version 2.1. ATTRIBUTES
For an explanation of the terms used in this section, see attributes(7). +-------------------------------+---------------+---------+ |Interface | Attribute | Value | +-------------------------------+---------------+---------+ |cacosh(), cacoshf(), cacoshl() | Thread safety | MT-Safe | +-------------------------------+---------------+---------+ CONFORMING TO
C99, POSIX.1-2001, POSIX.1-2008. EXAMPLE
/* Link with "-lm" */ #include <complex.h> #include <stdlib.h> #include <unistd.h> #include <stdio.h> int main(int argc, char *argv[]) { double complex z, c, f; if (argc != 3) { fprintf(stderr, "Usage: %s <real> <imag> ", argv[0]); exit(EXIT_FAILURE); } z = atof(argv[1]) + atof(argv[2]) * I; c = cacosh(z); printf("cacosh() = %6.3f %6.3f*i ", creal(c), cimag(c)); f = 2 * clog(csqrt((z + 1)/2) + csqrt((z - 1)/2)); printf("formula = %6.3f %6.3f*i ", creal(f2), cimag(f2)); exit(EXIT_SUCCESS); } SEE ALSO
acosh(3), cabs(3), ccosh(3), cimag(3), complex(7) COLOPHON
This page is part of release 4.15 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/. 2015-04-19 CACOSH(3)
Man Page