atanh, atanhf, atanhl
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Definido en el encabezado
<math.h>
|
||
|
float
atanhf
(
float
arg
)
;
|
(1) | (desde C99) |
|
double
atanh
(
double
arg
)
;
|
(2) | (desde C99) |
|
long
double
atanhl
(
long
double
arg
)
;
|
(3) | (desde C99) |
|
Definido en el encabezado
<tgmath.h>
|
||
|
#define atanh( arg )
|
(4) | (desde C99) |
atanhl
es llamado. De lo contrario, si el argumento tiene tipo entero o tipo
double
,
atanh
es llamado. De lo contrario,
atanhf
es llamado. Si el argumento es complejo, entonces el macro invoca la función compleja correspondiente (
catanhf
,
catanh
,
catanhl
).
Contenidos |
Parámetros
| arg | - | valor de punto flotante que representa el área de un sector hiperbólico |
Valor de retorno
Si no ocurren errores, se devuelve la tangente hiperbólica inversa de
arg
(
tanh
-1
(arg)
, o
artanh(arg)
).
Si ocurre un error de dominio, se devuelve un valor definido por la implementación (NaN donde esté soportado).
Si ocurre un error de polo,
±
HUGE_VAL
,
±HUGE_VALF
, o
±HUGE_VALL
es devuelto (con el signo correcto).
Si ocurre un error de rango debido a desbordamiento inferior, se devuelve el resultado correcto (después del redondeo).
Manejo de errores
Los errores se reportan como se especifica en
math_errhandling
.
Si el argumento no está en el intervalo
[
-
1
,
+
1
]
, ocurre un error de rango.
Si el argumento es ±1, se produce un error de polo.
Si la implementación soporta aritmética de punto flotante IEEE (IEC 60559),
- Si el argumento es ±0, se devuelve sin modificación.
- Si el argumento es ±1, se devuelve ±∞ y FE_DIVBYZERO se activa.
- Si |arg|>1 , se devuelve NaN y FE_INVALID se activa.
- Si el argumento es NaN, se devuelve NaN.
Notas
Aunque el estándar de C denomina a esta función "tangente hiperbólica inversa del arco", las funciones inversas de las funciones hiperbólicas son las funciones de área. Su argumento es el área de un sector hiperbólico, no un arco. El nombre correcto es "tangente hiperbólica inversa" (utilizado por POSIX) o "tangente hiperbólica de área".
POSIX especifica que en caso de subdesbordamiento, arg se devuelve sin modificar, y si esto no es compatible, se devuelve un valor definido por la implementación no mayor que DBL_MIN , FLT_MIN , y LDBL_MIN .
Ejemplo
#include <errno.h> #include <fenv.h> #include <float.h> #include <math.h> #include <stdio.h> // #pragma STDC FENV_ACCESS ON int main(void) { printf("atanh(0) = %f\natanh(-0) = %f\n", atanh(0), atanh(-0.0)); printf("atanh(0.9) = %f\n", atanh(0.9)); // error handling errno = 0; feclearexcept(FE_ALL_EXCEPT); printf("atanh(-1) = %f\n", atanh(-1)); if (errno == ERANGE) perror(" errno == ERANGE"); if (fetestexcept(FE_DIVBYZERO)) puts(" FE_DIVBYZERO raised"); }
Salida posible:
atanh(0) = 0.000000
atanh(-0) = -0.000000
atanh(0.9) = 1.472219
atanh(-1) = -inf
errno == ERANGE: Resultado numérico fuera de rango
FE_DIVBYZERO raised
Referencias
- Estándar C23 (ISO/IEC 9899:2024):
-
- 7.12.5.3 Las funciones atanh (p: 241)
-
- 7.25 Matemáticas genéricas de tipos <tgmath.h> (p: 373-375)
-
- F.10.2.3 Las funciones atanh (p: 520)
- Estándar C17 (ISO/IEC 9899:2018):
-
- 7.12.5.3 Las funciones atanh (p: TBD)
-
- 7.25 Matemáticas genéricas de tipos <tgmath.h> (p: TBD)
-
- F.10.2.3 Las funciones atanh (p: TBD)
- Estándar C11 (ISO/IEC 9899:2011):
-
- 7.12.5.3 Las funciones atanh (p: 241)
-
- 7.25 Matemáticas genéricas de tipo <tgmath.h> (p: 373-375)
-
- F.10.2.3 Las funciones atanh (p: 520)
- Estándar C99 (ISO/IEC 9899:1999):
-
- 7.12.5.3 Las funciones atanh (p: 221-222)
-
- 7.22 Matemáticas genéricas de tipo <tgmath.h> (p: 335-337)
-
- F.9.2.3 Las funciones atanh (p: 457)
Véase también
|
(C99)
(C99)
(C99)
|
calcula el seno hiperbólico inverso (
\({\small\operatorname{arsinh}{x} }\)
arsinh(x)
)
(función) |
|
(C99)
(C99)
(C99)
|
calcula el coseno hiperbólico inverso (
\({\small\operatorname{arcosh}{x} }\)
arcosh(x)
)
(función) |
|
(C99)
(C99)
|
calcula la tangente hiperbólica (
\({\small\tanh{x} }\)
tanh(x)
)
(función) |
|
(C99)
(C99)
(C99)
|
calcula el arcotangente hiperbólica compleja
(función) |
|
Documentación de C++
para
atanh
|
|
Enlaces externos
| Weisstein, Eric W. "Tangente Hiperbólica Inversa." De MathWorld — Un recurso web de Wolfram. |