.\" Copyright 2002 Walter Harms (walter.harms@informatik.uni-oldenburg.de) .\" Distributed under GPL .\" .TH CARG 3 2008-08-11 "" "Linux Programmer's Manual" .SH NAME carg, cargf, cargl \- calculate the complex argument .SH SYNOPSIS .B #include .sp .BI "double carg(double complex " z ");" .br .BI "float cargf(float complex " z ");" .br .BI "long double cargl(long double complex " z ");" .sp Link with \fI\-lm\fP. .SH DESCRIPTION A complex number can be described by two real coordinates. One may use rectangular coordinates and gets .nf z = x + I * y .fi where \fIx\ =\ creal(z)\fP and \fIy\ =\ cimag(z)\fP. .LP Or one may use polar coordinates and gets .nf z = r * cexp(I * a) .fi where \fIr\ =\ cabs(z)\fP is the "radius", the "modulus", the absolute value of \fIz\fP, and \fIa\ =\ carg(z)\fP is the "phase angle", the argument of \fIz\fP. .LP One has: .nf tan(carg(z)) = cimag(z) / creal(z) .fi .SH RETURN VALUE The return value is the range of [\-pi,pi]. .SH VERSIONS These functions first appeared in glibc in version 2.1. .SH CONFORMING TO C99. .SH SEE ALSO .BR cabs (3), .BR complex (7)