cprojf, cproj, cprojl
|
Definido en el encabezado
<complex.h>
|
||
| (1) | (desde C99) | |
| (2) | (desde C99) | |
| (3) | (desde C99) | |
|
Definido en el encabezado
<tgmath.h>
|
||
|
#define cproj( z )
|
(4) | (desde C99) |
z
en la esfera de Riemann.
z
tiene tipo
long
double
complex
,
long
double
imaginary
, o
long
double
,
cprojl
es llamado. Si
z
tiene tipo
float
complex
,
float
imaginary
, o
float
,
cprojf
es llamado. Si
z
tiene tipo
double
complex
,
double
imaginary
,
double
, o cualquier tipo entero,
cproj
es llamado.
Para la mayoría de los
z
,
cproj
(
z
)
==
z
, pero todas las infinitas complejas, incluso los números donde un componente es infinito y el otro es NaN, se convierten en infinito real positivo,
INFINITY
+
0.0
*
I
o
INFINITY
-
0.0
*
I
. El signo del componente imaginario (cero) es el signo de
cimag
(
z
)
.
Contenidos |
Parámetros
| z | - | argumento complejo |
Valor de retorno
La proyección de
z
en la esfera de Riemann.
Esta función está completamente especificada para todas las entradas posibles y no está sujeta a ningún error descrito en math_errhandling
Notas
La función
cproj
ayuda a modelar la esfera de Riemann mapeando todas las infinitudes a una (dando o tomando el signo del cero imaginario), y debe usarse justo antes de cualquier operación, especialmente comparaciones, que podría dar resultados espurios para cualquiera de las otras infinitudes.
Ejemplo
#include <stdio.h> #include <complex.h> #include <math.h> int main(void) { double complex z1 = cproj(1 + 2*I); printf("cproj(1+2i) = %.1f%+.1fi\n", creal(z1),cimag(z1)); double complex z2 = cproj(INFINITY+2.0*I); printf("cproj(Inf+2i) = %.1f%+.1fi\n", creal(z2),cimag(z2)); double complex z3 = cproj(INFINITY-2.0*I); printf("cproj(Inf-2i) = %.1f%+.1fi\n", creal(z3),cimag(z3)); }
Salida:
cproj(1+2i) = 1.0+2.0i cproj(Inf+2i) = inf+0.0i cproj(Inf-2i) = inf-0.0i
Referencias
- Estándar C11 (ISO/IEC 9899:2011):
-
- 7.3.9.5 Las funciones cproj (p: 198)
-
- 7.25 Matemáticas genéricas de tipos <tgmath.h> (p: 373-375)
-
- G.7 Matemáticas genéricas de tipos <tgmath.h> (p: 545)
- Estándar C99 (ISO/IEC 9899:1999):
-
- 7.3.9.4 Las funciones cproj (p: 179)
-
- 7.22 Matemáticas genéricas de tipos <tgmath.h> (p: 335-337)
-
- G.7 Matemáticas genéricas de tipos <tgmath.h> (p: 480)
Véase también
|
Documentación de C++
para
proj
|