CPROJ(3) BSD Library Functions Manual CPROJ(3)
NAME
cproj -- projection onto the Riemann sphere
SYNOPSIS
#include <complex.h>
double complex
cproj(double complex z);
long double complex
cprojl(long double complex z);
float complex
cprojf(float complex z);
DESCRIPTION
cproj(z) computes the projection of a complex floating-point number z onto the Riemann sphere: for any finite z, cproj(z) = z, but all com-
plex infinities (including infinities with one NaN part) project to positive infinity on the real axis.
Specifically, if z = x + iy has an infinite part (one of x or y is infinity), then cproj(z) is equivalent to INFINITY + I*copy-
sign(0.0,cimag(z)).
NOTE
cproj() projects onto the C99 "Riemann Sphere", which may not agree with the mathematical notion of the Riemann Sphere; in particular, it has
two infinites (inf +- 0i) and four zeroes (+-0 +- 0i).
SEE ALSO
complex(3)
STANDARDS
The cproj() function conforms to ISO/IEC 9899:2011.
4th Berkeley Distribution December 11, 2006 4th Berkeley Distribution