Namespaces
Variants

std:: sinh (std::complex)

From cppreference.net
定義先ヘッダ <complex>
template < class T >
complex < T > sinh ( const complex < T > & z ) ;
(C++11以降)

複素数の双曲線正弦を計算します z

目次

パラメータ

z - 複素数値

戻り値

エラーが発生しない場合、 z の複素双曲線正弦が返されます。

エラー処理と特殊値

エラーは math_errhandling に従って報告されます。

IEEE浮動小数点演算がサポートされている実装の場合、

  • std:: sinh ( std:: conj ( z ) ) == std:: conj ( std:: sinh ( z ) )
  • std:: sinh ( z ) == - std:: sinh ( - z )
  • zが (+0,+0) の場合、結果は (+0,+0) である
  • zが (+0,+∞) の場合、結果は (±0,NaN) (実部の符号は未規定)であり、 FE_INVALID が発生する
  • zが (+0,NaN) の場合、結果は (±0,NaN) である
  • zが (x,+∞) (任意の正の有限値xに対して)の場合、結果は (NaN,NaN) であり、 FE_INVALID が発生する
  • zが (x,NaN) (任意の正の有限値xに対して)の場合、結果は (NaN,NaN) であり、 FE_INVALID が発生する可能性がある
  • zが (+∞,+0) の場合、結果は (+∞,+0) である
  • zが (+∞,y) (任意の正の有限値yに対して)の場合、結果は +∞cis(y) である
  • zが (+∞,+∞) の場合、結果は (±∞,NaN) (実部の符号は未規定)であり、 FE_INVALID が発生する
  • zが (+∞,NaN) の場合、結果は (±∞,NaN) (実部の符号は未規定)である
  • zが (NaN,+0) の場合、結果は (NaN,+0) である
  • zが (NaN,y) (任意の有限の非ゼロ値yに対して)の場合、結果は (NaN,NaN) であり、 FE_INVALID が発生する可能性がある
  • zが (NaN,NaN) の場合、結果は (NaN,NaN) である

ここで cis(y) cos(y) + i sin(y) を表します。

注記

Mathematical definition of hyperbolic sine is sinh z =
e z
-e -z
2
.

双曲正弦は複素平面における整関数であり、分岐切断を持たない。虚数成分に関して周期関数であり、周期は 2πi である。

#include <cmath>
#include <complex>
#include <iostream>
int main()
{
    std::cout << std::fixed;
    std::complex<double> z(1.0, 0.0); // 実数軸に沿って実数のsinhのように振る舞う
    std::cout << "sinh" << z << " = " << std::sinh(z)
              << " (sinh(1) = " << std::sinh(1) << ")\n";
    std::complex<double> z2(0.0, 1.0); // 虚数軸に沿って正弦関数のように振る舞う
    std::cout << "sinh" << z2 << " = " << std::sinh(z2)
              << " ( sin(1) = " << std::sin(1) << ")\n";
}

出力:

sinh(1.000000,0.000000) = (1.175201,0.000000) (sinh(1) = 1.175201)
sinh(0.000000,1.000000) = (0.000000,0.841471) ( sin(1) = 0.841471)

関連項目

複素数の双曲線余弦を計算する ( cosh(z) )
(関数テンプレート)
複素数の双曲線正接を計算する ( tanh(z) )
(関数テンプレート)
複素数の双曲線逆正弦を計算する ( arsinh(z) )
(関数テンプレート)
(C++11) (C++11)
双曲線正弦を計算する ( sinh(x) )
(関数)
関数 std::sinh をvalarrayの各要素に適用する
(関数テンプレート)