std:: tanh (std::complex)
|
Défini dans l'en-tête
<complex>
|
||
|
template
<
class
T
>
complex < T > tanh ( const complex < T > & z ) ; |
(depuis C++11) | |
Calcule la tangente hyperbolique complexe d'une valeur complexe z .
Table des matières |
Paramètres
| z | - | valeur complexe |
Valeur de retour
Si aucune erreur ne se produit, la tangente hyperbolique complexe de z est retournée.
Gestion des erreurs et valeurs spéciales
Les erreurs sont signalées conformément à math_errhandling .
Si l'implémentation prend en charge l'arithmétique à virgule flottante IEEE,
- std:: tanh ( std:: conj ( z ) ) == std:: conj ( std:: tanh ( z ) ) .
- std:: tanh ( - z ) == - std:: tanh ( z ) .
-
Si
z
est
(+0,+0), le résultat est(+0,+0). -
Si
z
est
(x,+∞)(pour tout [1] x fini), le résultat est(NaN,NaN)et FE_INVALID est déclenché. -
Si
z
est
(x,NaN)(pour tout [2] x fini), le résultat est(NaN,NaN)et FE_INVALID peut être déclenché. -
Si
z
est
(+∞,y)(pour tout y positif fini), le résultat est(1,+0). -
Si
z
est
(+∞,+∞), le résultat est(1,±0)(le signe de la partie imaginaire n'est pas spécifié). -
Si
z
est
(+∞,NaN), le résultat est(1,±0)(le signe de la partie imaginaire n'est pas spécifié). -
Si
z
est
(NaN,+0), le résultat est(NaN,+0). -
Si
z
est
(NaN,y)(pour tout y non nul), le résultat est(NaN,NaN)et FE_INVALID peut être déclenché. -
Si
z
est
(NaN,NaN), le résultat est(NaN,NaN).
-
↑
selon
C11 DR471
, ceci n'est valable que pour x non nul. Si
zest(0,∞), le résultat devrait être(0,NaN). -
↑
selon
C11 DR471
, ceci n'est valable que pour x non nul. Si
zest(0,NaN), le résultat devrait être(0,NaN).
Notes
Mathematical definition of hyperbolic tangent is tanh z =|
e
z
-e -z |
|
e
z
+e -z |
La tangente hyperbolique est une fonction analytique sur le plan complexe et ne présente aucune coupure de branche. Elle est périodique par rapport à la composante imaginaire, avec une période πi, et possède des pôles du premier ordre le long de l'axe imaginaire, aux coordonnées (0, π(1/2 + n)) . Cependant, aucune représentation courante en virgule flottante ne peut représenter π/2 exactement, donc il n'existe aucune valeur de l'argument pour laquelle une erreur de pôle se produit.
Exemple
#include <cmath> #include <complex> #include <iostream> int main() { std::cout << std::fixed; std::complex<double> z(1.0, 0.0); // se comporte comme tanh réel le long de l'axe réel std::cout << "tanh" << z << " = " << std::tanh(z) << " (tanh(1) = " << std::tanh(1) << ")\n"; std::complex<double> z2(0.0, 1.0); // se comporte comme tangent le long de l'axe imaginaire std::cout << "tanh" << z2 << " = " << std::tanh(z2) << " ( tan(1) = " << std::tan(1) << ")\n"; }
Sortie :
tanh(1.000000,0.000000) = (0.761594,0.000000) (tanh(1) = 0.761594) tanh(0.000000,1.000000) = (0.000000,1.557408) ( tan(1) = 1.557408)
Voir aussi
|
calcule le sinus hyperbolique d'un nombre complexe (
sinh(z)
)
(modèle de fonction) |
|
|
calcule le cosinus hyperbolique d'un nombre complexe (
cosh(z)
)
(modèle de fonction) |
|
|
(C++11)
|
calcule la tangente hyperbolique inverse d'un nombre complexe (
artanh(z)
)
(modèle de fonction) |
|
(C++11)
(C++11)
|
calcule la tangente hyperbolique (
tanh(x)
)
(fonction) |
|
applique la fonction
std::tanh
à chaque élément du valarray
(modèle de fonction) |
|
|
Documentation C
pour
ctanh
|
|