PHPのacosh()関数とは?逆双曲線余弦の計算方法を徹底解説
PHPのacosh()関数は、指定した数値の逆双曲線余弦(アークハイパボリックコサイン)を計算して返す数学関数です。つまり、cosh(y) = x となるような y の値を求める関数であり、双曲線関数 cosh() の逆関数にあたります。
数学的には、次の式で定義されます。
acosh(x) = log(x + sqrt(pow(x,2) − 1))
この関数の戻り値は float 型です。なお、acosh(x) が実数値を持つのは x ≥ 1 の場合であり、x が 1 未満の場合は NAN(Not a Number)が返される点に注意しましょう。
構文
acosh ( float $arg ) : float
パラメータ
| 番号 | パラメータと説明 |
|---|---|
| 1 | arg 逆双曲線余弦を計算したい浮動小数点値(float)を指定します。 |
戻り値
PHPのacosh()関数は、指定された引数の逆双曲線余弦の値を float 型で返します。引数が 1 未満の場合は NAN を返します。
対応するPHPバージョン
この関数は、PHP 4.x、PHP 5.x、PHP 7.x の各バージョンで利用可能です。
使用例1:acosh(π/2) の計算
次の例では、acosh(π/2) を計算します。結果は 1.0232274785476 となり、定義式から直接計算した値と一致することが確認できます。
<?php
$arg = M_PI_2;
$val = acosh($arg);
$ret = log($arg + sqrt(pow($arg, 2) - 1));
echo "acosh(" . $arg . ") = " . $val . "\n";
echo "定義式による計算 = " . $ret;
?>
出力
acosh(1.5707963267949) = 1.0232274785476
定義式による計算 = 1.0232274785476
使用例2:deg2rad() と組み合わせた計算
次の例では、deg2rad() 関数を使って 60 度をラジアンに変換し、その値に対して acosh() を適用しています。結果は 0.30604210861327 です。
<?php
$arg = deg2rad(60);
$val = acosh($arg);
echo "acosh(" . $arg . ") = " . $val;
?>
出力
acosh(1.0471975511966) = 0.30604210861327
使用例3:acosh(0) の場合
acosh() に 0 を渡すと、定義域外のため NAN が返されます。
<?php
$arg = 0;
$val = acosh($arg);
echo "acosh(" . $arg . ") = " . $val;
?>
出力
acosh(0) = NAN
使用例4:acosh(π) の計算
次の例では、円周率 π を引数として acosh() を計算しています。
<?php
$arg = M_PI;
$val = acosh($arg);
echo "acosh(" . $arg . ") = " . $val;
?>
出力
acosh(3.1415926535898) = 1.8115262724609
まとめ
acosh() 関数は、双曲線余弦の逆関数を求める際に便利な関数です。定義域が x ≥ 1 であることに注意し、1 未満の値を渡すと NAN が返されることを覚えておきましょう。数学的な処理や科学技術計算を行う PHP プログラムで活用できます。
-
PHPのlog()関数とは?自然対数の計算方法と使い方を解説
定義と使い方log() 関数は、数値の自然対数(natural logarithm)を計算します。対数とは、指数関数の逆演算のことです。たとえば 102=100 という関係は「log10100=2」と表せます。自然対数はオイラー数 e を底として計算され、PHP では定義済み定数 M_E によって e の値(2.7182818284590452354)が提供されています。具体例を挙げると、exp(4.60517018599)=100(つまり e4.60517018599=100)が成り立つため、loge100=4.60517018599 となります。PHP では、この自然対数(loge)を l
-
PHPのacosh()関数の使い方|逆双曲線余弦を求める方法
acosh()関数とはPHPのacosh()関数は、指定した数値の逆双曲線余弦(アークハイパボリックコサイン)を返します。これは、双曲線関数であるcosh()の逆関数に相当します。なお、逆双曲線余弦は数学的に「x ≥ 1」の範囲でのみ定義されるため、引数には1以上の数値を指定する必要があります。構文acosh(num)パラメータnum − 逆双曲線余弦を求めたい数値を指定します。1以上の値である必要があります。戻り値acosh()関数は、指定した数値の逆双曲線余弦をfloat型で返します。引数が1未満の場合は、NAN(Not a Number)が返されます。使用例<?php &