table of contents
        
      
      
    - Tumbleweed 2024.07.05-1.3
 - Leap-16.0
 - Leap-15.6
 
| std::acosh,std::acoshf,std::acoshl(3) | C++ Standard Libary | std::acosh,std::acoshf,std::acoshl(3) | 
NAME¶
std::acosh,std::acoshf,std::acoshl - std::acosh,std::acoshf,std::acoshl
Synopsis¶
 Defined in header <cmath>
  
   float acosh ( float num );
  
   double acosh ( double num ); (until C++23)
  
   long double acosh ( long double num );
  
   /* floating-point-type */ (since C++23)
  
   acosh ( /* floating-point-type */ num ); (constexpr since C++26)
  
   float acoshf( float num ); (1) (2) (since C++11)
  
   (constexpr since C++26)
  
   long double acoshl( long double num ); (3) (since C++11)
  
   (constexpr since C++26)
  
   Additional overloads (since C++11)
  
   Defined in header <cmath>
  
   template< class Integer > (A) (constexpr since C++26)
  
   double acosh ( Integer num );
  
   1-3) Computes the inverse hyperbolic cosine of num.
  
   The library provides overloads of std::acosh for all cv-unqualified
    floating-point
  
   types as the type of the parameter.
  
   (since C++23)
  
   A) Additional overloads are provided for all integer types, which are
    (since C++11)
  
   treated as double.
Parameters¶
num - floating-point or integer value
Return value¶
 If no errors occur, the inverse hyperbolic cosine of num (cosh-1
  
   (num), or arcosh(num)) on the interval [0, +∞], is returned.
  
   If a domain error occurs, an implementation-defined value is returned (NaN
    where
  
   supported).
Error handling¶
Errors are reported as specified in math_errhandling.
  
   If the argument is less than 1, a domain error occurs.
  
   If the implementation supports IEEE floating-point arithmetic (IEC
  60559),
  
   * if the argument is less than 1, FE_INVALID is raised an NaN is returned.
  
   * if the argument is 1, +0 is returned.
  
   * if the argument is +∞, +∞ is returned.
  
   * if the argument is NaN, NaN is returned.
Notes¶
 Although the C standard (to which C++ refers for this function)
    names this function
  
   "arc hyperbolic cosine", the inverse functions of the hyperbolic
    functions are the
  
   area functions. Their argument is the area of a hyperbolic sector, not an
    arc. The
  
   correct name is "inverse hyperbolic cosine" (used by POSIX) or
    "area hyperbolic
  
   cosine".
  
   The additional overloads are not required to be provided exactly as (A). They
    only
  
   need to be sufficient to ensure that for their argument num of integer type,
  
   std::acosh(num) has the same effect as
    std::acosh(static_cast<double>(num)).
Examples¶
// Run this code
  
   #include <cerrno>
  
   #include <cfenv>
  
   #include <cfloat>
  
   #include <cmath>
  
   #include <cstring>
  
   #include <iostream>
  
   // #pragma STDC FENV_ACCESS ON
  
   int main()
  
   {
  
   std::cout << "acosh(1) = " << std::acosh(1) <<
    '\n'
  
   << "acosh(10) = " << std::acosh(10) << '\n'
  
   << "acosh(DBL_MAX) = " << std::acosh(DBL_MAX) <<
    '\n'
  
   << "acosh(Inf) = " << std::acosh(INFINITY) <<
    '\n';
  
   // error handling
  
   errno = 0;
  
   std::feclearexcept(FE_ALL_EXCEPT);
  
   std::cout << "acosh(0.5) = " << std::acosh(0.5)
    << '\n';
  
   if (errno == EDOM)
  
   std::cout << " errno == EDOM: " << std::strerror(errno)
    << '\n';
  
   if (std::fetestexcept(FE_INVALID))
  
   std::cout << " FE_INVALID raised\n";
  
   }
Possible output:¶
 acosh(1) = 0
  
   acosh(10) = 2.99322
  
   acosh(DBL_MAX) = 710.476
  
   acosh(Inf) = inf
  
   acosh(0.5) = -nan
  
   errno == EDOM: Numerical argument out of domain
  
   FE_INVALID raised
See also¶
 asinh
  
   asinhf computes the inverse hyperbolic sine
  
   asinhl (\({\small\operatorname{arsinh}{x}}\)arsinh(x))
  
   (C++11) (function)
  
   (C++11)
  
   (C++11)
  
   atanh
  
   atanhf computes the inverse hyperbolic tangent
  
   atanhl (\({\small\operatorname{artanh}{x}}\)artanh(x))
  
   (C++11) (function)
  
   (C++11)
  
   (C++11)
  
   cosh
  
   coshf computes hyperbolic cosine (\({\small\cosh{x}}\)cosh(x))
  
   coshl (function)
  
   (C++11)
  
   (C++11)
  
   acosh(std::complex) computes area hyperbolic cosine of a complex number
  
   (C++11) (\({\small\operatorname{arcosh}{z}}\)arcosh(z))
  
   (function template)
  
   C documentation for
  
   acosh
External links¶
 Weisstein, Eric W. "Inverse Hyperbolic Cosine." From
    MathWorld — A Wolfram Web
  
   Resource.
| 2024.06.10 | http://cppreference.com |