carg(3) — Linux manual page


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

NAME         top

       carg, cargf, cargl - calculate the complex argument

SYNOPSIS         top

       #include <complex.h>

       double carg(double complex z);
       float cargf(float complex z);
       long double cargl(long double complex z);

       Link with -lm.

DESCRIPTION         top

       These functions calculate the complex argument (also called phase
       angle) of z, with a branch cut along the negative real axis.

       A complex number can be described by two real coordinates.  One
       may use rectangular coordinates and gets

           z = x + I * y

       where x = creal(z) and y = cimag(z).

       Or one may use polar coordinates and gets

           z = r * cexp(I * a)

       where r = cabs(z) is the "radius", the "modulus", the absolute
       value of z, and a = carg(z) is the "phase angle", the argument of

       One has:

           tan(carg(z)) = cimag(z) / creal(z)

RETURN VALUE         top

       The return value is in the range of [-pi,pi].

VERSIONS         top

       These functions first appeared in glibc in version 2.1.

ATTRIBUTES         top

       For an explanation of the terms used in this section, see

       │Interface                             Attribute     Value   │
       │carg(), cargf(), cargl()              │ Thread safety │ MT-Safe │

CONFORMING TO         top

       C99, POSIX.1-2001, POSIX.1-2008.

SEE ALSO         top

       cabs(3), complex(7)

COLOPHON         top

       This page is part of release 5.13 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

                               2021-03-22                        CARG(3)

Pages that refer to this page: atan2(3)atan(3)complex(7)