Espacios de nombres
Variantes
Acciones

std::atanh, std::atanhf, std::atanhl

De cppreference.com
< cpp‎ | numeric‎ | math
 
 
 
Funciones matemáticas comunes
Funciones
Operaciones básicas
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)(C++11)(C++11)
Funciones exponenciales
(C++11)
(C++11)
(C++11)
(C++11)
Funciones de potencias
(C++11)
(C++11)
Funciones trigonométricas e hiperbólicas
(C++11)
(C++11)
atanh
(C++11)
Funciones de error y gamma
(C++11)
(C++11)
(C++11)
(C++11)
Operaciones de punto flotante del entero más cercano
(C++11)(C++11)(C++11)
(C++11)
(C++11)
(C++11)(C++11)(C++11)
Funciones de manipulación de punto flotante
(C++11)(C++11)
(C++11)
(C++11)
(C++11)(C++11)
(C++11)
Clasificación/comparación
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
Constantes de macro
(C++11)(C++11)(C++11)(C++11)(C++11)
 
Definido en el archivo de encabezado <cmath>
float       atanh ( float arg );
float       atanhf( float arg );
(1) (desde C++11)
double      atanh ( double arg );
(2) (desde C++11)
long double atanh ( long double arg );
long double atanhl( long double arg );
(3) (desde C++11)
double      atanh ( TipoEntero arg );
(4) (desde C++11)
1-3) Calcula la tangente hiperbólica inversa de arg.
4) Un conjunto de sobrecargas o una plantilla de función que acepta un argumento de cualquier tipo entero. Equivalente a (2) (el argumento se convierte a double).

Contenido

[editar] Parámetros

arg - Valor de un tipo de punto flotante o un tipo entero.

[editar] Valor de retorno

Si no se producen errores, se devuelve la tangente hiperbólica inversa de arg (tanh-1
(arg)
, o artanh(arg)).

Si se produce un error de dominio, se devuelve un valor definido por la implementación (NaN donde se dé apoyo).

Si se produce un error de polo, se devuelve ±HUGE_VAL, ±HUGE_VALF, o se devuelve ±HUGE_VALL (con el signo correcto).

Si se produce un error debido a subdesbordamiento, se devuelve el resultado correcto (después del redondeo).

[editar] Manejo de errores

Los errores se informan como se especifica en math_errhandling.

Si el argumento es not on the interval [-1, +1], se produce un error de rango.

Si el argumento es ±1, se produce un error de polo.

Si la implementación admite la aritmética de punto flotante IEEE (IEC 60559):

  • Si el argumento es +0 o -0, se devuelve +0 o -0, respectivamente.
  • Si el argumento es +1, -1, +∞ o -∞, se devuelve +1, -1, +∞ o -∞, respectivamente y se genera FE_DIVBYZERO.
  • if |arg|>1, se devuelve NaN y se genera FE_INVALID.
  • Si el argumento es NaN, se devuelve NaN.

[editar] Notas

Aunque el estándar C (al que se refiere C++ para esta función) denomina esta función "arco tangente hiperbólica", 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" (usado por POSIX) o "tangente hiperbólica de área".

POSIX especifica que en caso de subdesbordamiento, se devuelva arg, y si no se permite, se devuelva un valor definido por la implementación no mayor que DBL_MIN, FLT_MIN y LDBL_MIN.

[editar] Ejemplo

#include <iostream>
#include <cmath>
#include <cfloat>
#include <cerrno>
#include <cfenv>
#include <cstring>
#pragma STDC FENV_ACCESS ON
int main()
{
    std::cout << "atanh(0) = " << std::atanh(0) << '\n'
              << "atanh(-0) = " << std::atanh(-0.0) << '\n'
              << "atanh(0.9) = " << std::atanh(0.9) << '\n';
    // manejo de errores 
    errno = 0;
    std::feclearexcept(FE_ALL_EXCEPT);
    std::cout << "atanh(-1) = " << std::atanh(-1) << '\n';
    if (errno == ERANGE)
        std::cout << "    errno == ERANGE: " << std::strerror(errno) << '\n';
    if (std::fetestexcept(FE_DIVBYZERO))
        std::cout << "    Se generó FE_DIVBYZERO\n";
}

Posible salida:

atanh(0) = 0
atanh(-0) = -0
atanh(0.9) = 1.47222
atanh(-1) = -inf
    errno == ERANGE: Resultado numérico fuera de rango
    Se generó FE_DIVBYZERO

[editar] Véase también

(C++11)(C++11)(C++11)
Calcula el seno hiperbólico inverso (arsinh(x))
(función) [editar]
(C++11)(C++11)(C++11)
Calcula el coseno hiperbólico inverso (arcosh(x))
(función) [editar]
(C++11)(C++11)
Calcula la tangente hiperbólica (tanh(x))
(función) [editar]
Calcula el área de la tangente hiperbólica de un número complejo (artanh(z)).
(plantilla de función) [editar]

[editar] Enlaces externos

Weisstein, Eric W. "Inverse Hyperbolic Tangent." De MathWorld – Un recurso web de Wolfram.