コンテンツにスキップ

JavaScript/Math/asinh

出典: フリー教科書『ウィキブックス(Wikibooks)』

Math.asinh(x) は、引数 x の逆双曲線正弦(アークハイパボリックサイン)を返します。これは、x の値に対応する双曲線角度をラジアン単位で返します[1]

  • 引数 xNaN の場合、NaN を返します。
  • 引数 x+0 の場合、+0 を返します。
  • 引数 x-0 の場合、-0 を返します。
  • 引数 xInfinity の場合、Infinity を返します。
  • 引数 x-Infinity の場合、-Infinity を返します。

[編集]

逆双曲線正弦を計算するプログラム

[編集]

以下のプログラムは、ユーザーが入力した値の逆双曲線正弦を計算します。

constf=p=>{for(;;){a=prompt(`${p}は何ですか?`);if(!isNaN(a))returna;alert(`${p}に、入力ミスがあります。 "${a}"`);}}for(;;){constx=f("値");constasinh=Math.asinh(x);if(!isNaN(asinh)){alert(`${x} の逆双曲線正弦は ${asinh.toFixed(3)} ラジアンです。`);break;}alert("入力が大きすぎます。");}

このプログラムでは、Math.asinh を使用して値の逆双曲線正弦を計算しています。ユーザーが入力した値が NaNInfinity の場合、適切に処理されます。

逆双曲線正弦関数のグラフを描画するプログラム

[編集]

以下のプログラムは、逆双曲線正弦関数のグラフを描画します。

constcanvas=document.createElement('canvas');document.body.appendChild(canvas);constctx=canvas.getContext('2d');canvas.width=800;canvas.height=400;constxScale=canvas.width/10;constyScale=canvas.height/5;ctx.beginPath();ctx.moveTo(0,canvas.height/2);for(letx=-5;x<=5;x+=0.1){consty=Math.asinh(x);constcanvasX=(x+5)*xScale;constcanvasY=canvas.height/2-y*yScale;ctx.lineTo(canvasX,canvasY);}ctx.strokeStyle='blue';ctx.lineWidth=2;ctx.stroke();

このプログラムでは、Math.asinh を使用して逆双曲線正弦関数のグラフを描画しています。xScaleyScale は、グラフのスケーリングを調整するための変数です。

注意点

[編集]
  • 戻り値の範囲: Math.asinh の戻り値は、-Infinity から Infinity の範囲です。
  • 精度: 浮動小数点演算の特性上、Math.asinh の結果には微小な誤差が含まれることがあります。

脚註

[編集]
  1. ^これは、数学的には sinh(y) = x となるような値 y を返します。

外部リンク

[編集]


close