Namespaces
Variants

std:: acosh (std::complex)

From cppreference.net
Definiert im Header <complex>
template < class T >
complex < T > acosh ( const complex < T > & z ) ;
(seit C++11)

Berechnet den komplexen Areakosinus Hyperbolicus eines komplexen Wertes z mit einem Verzweigungsschnitt bei Werten kleiner als 1 entlang der reellen Achse.

Inhaltsverzeichnis

Parameter

z - komplexer Wert

Rückgabewert

Wenn keine Fehler auftreten, wird der komplexe Areakosinus Hyperbolicus von z zurückgegeben, im Bereich eines Halbstreifens nichtnegativer Werte entlang der reellen Achse und im Intervall [−iπ; +iπ] entlang der imaginären Achse.

Fehlerbehandlung und spezielle Werte

Fehler werden gemeldet konsistent mit math_errhandling .

Wenn die Implementierung IEEE-Gleitkommaarithmetik unterstützt,

  • std:: acosh ( std:: conj ( z ) ) == std:: conj ( std:: acosh ( z ) ) .
  • Wenn z (±0,+0) ist, ist das Ergebnis (+0,π/2) .
  • Wenn z (x,+∞) ist (für jedes endliche x), ist das Ergebnis (+∞,π/2) .
  • Wenn z (x,NaN) ist (für jedes [1] endliche x), ist das Ergebnis (NaN,NaN) und FE_INVALID kann ausgelöst werden.
  • Wenn z (-∞,y) ist (für jedes positive endliche y), ist das Ergebnis (+∞,π) .
  • Wenn z (+∞,y) ist (für jedes positive endliche y), ist das Ergebnis (+∞,+0) .
  • Wenn z (-∞,+∞) ist, ist das Ergebnis (+∞,3π/4) .
  • Wenn z (±∞,NaN) ist, ist das Ergebnis (+∞,NaN) .
  • Wenn z (NaN,y) ist (für jedes endliche y), ist das Ergebnis (NaN,NaN) und FE_INVALID kann ausgelöst werden.
  • Wenn z (NaN,+∞) ist, ist das Ergebnis (+∞,NaN) .
  • Wenn z (NaN,NaN) ist, ist das Ergebnis (NaN,NaN) .
  1. gemäß C11 DR471 gilt dies nur für x ungleich null. Wenn z gleich (0,NaN) ist, sollte das Ergebnis (NaN,π/2) sein.

Hinweise

Obwohl der C++-Standard diese Funktion als "komplexen Areakosinus Hyperbolicus" bezeichnet, sind die Umkehrfunktionen der hyperbolischen Funktionen die Areafunktionen. Ihr Argument ist die Fläche eines hyperbolischen Sektors, nicht ein Bogen. Der korrekte Name ist "komplexer Areakosinus Hyperbolicus", und, weniger gebräuchlich, "komplexer Flächenkosinus Hyperbolicus".

Der inverse hyperbolische Kosinus ist eine mehrwertige Funktion und erfordert einen Verzweigungsschnitt in der komplexen Ebene. Der Verzweigungsschnitt wird konventionell auf dem Liniensegment (-∞,+1) der reellen Achse platziert.

Die mathematische Definition des Hauptwerts des Areakosinus Hyperbolicus ist acosh z = ln(z + z+1 z-1 ) .

For any z , acosh(z) =
z-1
1-z
acos(z)
, or simply i acos(z) in the upper half of the complex plane.

Beispiel

#include <complex>
#include <iostream>
int main()
{
    std::cout << std::fixed;
    std::complex<double> z1(0.5, 0);
    std::cout << "acosh" << z1 << " = " << std::acosh(z1) << '\n';
    std::complex<double> z2(0.5, -0.0);
    std::cout << "acosh" << z2 << " (the other side of the cut) = "
              << std::acosh(z2) << '\n';
    // in upper half-plane, acosh = i acos 
    std::complex<double> z3(1, 1), i(0, 1);
    std::cout << "acosh" << z3 << " = " << std::acosh(z3) << '\n'
              << "i*acos" << z3 << " = " << i*std::acos(z3) << '\n';
}

Ausgabe:

acosh(0.500000,0.000000) = (0.000000,-1.047198)
acosh(0.500000,-0.000000) (the other side of the cut) = (0.000000,1.047198)
acosh(1.000000,1.000000) = (1.061275,0.904557)
i*acos(1.000000,1.000000) = (1.061275,0.904557)

Siehe auch

berechnet den Arkuskosinus einer komplexen Zahl ( arccos(z) )
(Funktions-Template)
berechnet den Areasinus Hyperbolicus einer komplexen Zahl ( arsinh(z) )
(Funktions-Template)
berechnet den Areatangens Hyperbolicus einer komplexen Zahl ( artanh(z) )
(Funktions-Template)
berechnet den Kosinus Hyperbolicus einer komplexen Zahl ( cosh(z) )
(Funktions-Template)
(C++11) (C++11) (C++11)
berechnet den Areakosinus Hyperbolicus ( arcosh(x) )
(Funktion)
C-Dokumentation für cacosh