Namensräume
Varianten
Aktionen

std::acosh, std::acoshf, std::acoshl

Von cppreference.com
< cpp‎ | numeric‎ | math
 
 
 
 
Definiert in der Header-Datei <cmath>
(1)
float       acosh ( float num );

double      acosh ( double num );

long double acosh ( long double num );
(bis C++23)
/* Gleitkommazahl-Typ */
            acosh ( /*Gleitkomma-Typ*/ num );
(seit C++23)
(constexpr seit C++26)
float       acoshf( float num );
(2) (seit C++11)
(constexpr seit C++26)
long double acoshl( long double num );
(3) (seit C++11)
(constexpr seit C++26)
SIMD-Überladung (seit C++26)
Definiert im Header <simd>
template< /*math-floating-point*/ V >

constexpr /*deduzierter-simd-t*/<V>

            acosh ( const V& v_num );
(S) (seit C++26)
Definiert in der Header-Datei <cmath>
template< class Integer >
double      acosh ( Integer num );
(A) (constexpr seit C++26)
1-3) Berechnet den inversen hyperbolischen Kosinus von num. Die Bibliothek stellt Überladungen von std::acosh für alle cv-unqualifizierten Gleitkommatypen als Parametertyp bereit.(seit C++23)
S) Die SIMD-Überladung führt eine elementweise std::acosh für v_num aus.
(Siehe math-floating-point und deduced-simd-t für ihre Definitionen.)
(seit C++26)
A) Zusätzliche Überladungen werden für alle ganzzahligen Typen bereitgestellt, die als double behandelt werden.
(seit C++11)

Inhalt

[edit] Parameter

num - Gleitkomma- oder Ganzzahlwert

[edit] Rückgabewert

Wenn keine Fehler auftreten, wird der inverse hyperbolische Kosinus von num (cosh-1
(num)
oder arcosh(num)) im Intervall [0, +∞] zurückgegeben.

Wenn ein Domänenfehler auftritt, wird ein implementierungsabhängiger Wert zurückgegeben (NaN, wo unterstützt).

[edit] Fehlerbehandlung

Fehler werden wie in math_errhandling beschrieben gemeldet.

Wenn das Argument kleiner als 1 ist, tritt ein Domänenfehler auf.

Wenn die Implementierung IEEE-Gleitkomma-Arithmetik (IEC 60559) unterstützt,

  • Wenn das Argument kleiner als 1 ist, wird FE_INVALID ausgelöst und NaN zurückgegeben.
  • Wenn das Argument 1 ist, wird +0 zurückgegeben.
  • Wenn das Argument +∞ ist, wird +∞ zurückgegeben.
  • Wenn das Argument NaN ist, wird NaN zurückgegeben.

[edit] Hinweise

Obwohl der C-Standard (auf den sich C++ für diese Funktion bezieht) diese Funktion "arcus hyperbolischer Kosinus" nennt, sind die inversen Funktionen der hyperbolischen Funktionen die Areafunktionen. Ihr Argument ist die Fläche eines hyperbolischen Sektors, nicht eines Bogens. Der korrekte Name ist "inverser hyperbolischer Kosinus" (wie von POSIX verwendet) oder "Area hyperbolischer Kosinus".

Die zusätzlichen Überladungen müssen nicht exakt als (A) bereitgestellt werden. Sie müssen nur ausreichen, um sicherzustellen, dass für ihr Argument num vom ganzzahligen Typ std::acosh(num) dieselbe Wirkung hat wie std::acosh(static_cast<double>(num)).

[edit] Beispiele

#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";
}

Mögliche Ausgabe

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

[edit] Siehe auch

(C++11)(C++11)(C++11)
berechnet den inversen hyperbolischen Sinus (arsinh(x))
(Funktion) [bearbeiten]
(C++11)(C++11)(C++11)
berechnet den inversen hyperbolischen Tangens (artanh(x))
(Funktion) [bearbeiten]
(C++11)(C++11)
berechnet den hyperbolischen Kosinus (cosh(x))
(Funktion) [bearbeiten]
berechnet den Area Hyperbolicus Kosinus einer komplexen Zahl (arcosh(z))
(function template) [edit]
C-Dokumentation für acosh

[edit] Externe Links

Weisstein, Eric W. "Inverse Hyperbolic Cosine." Von MathWorld — Eine Wolfram Web Ressource.