はじめに
この実験では、ベクトルの角度の概念を探り、JavaScript を使って 2 つのベクトルの間の角度を計算する方法を学びます。必要な計算を行い、目的の結果を導き出すために、Math.pow()、Math.sqrt()、Math.acos() などの様々な数学関数を使用します。この実験を通じて、ベクトル演算とその実際の応用について、より深い理解を得るでしょう。
ベクトルの角度の計算
2 つのベクトルの間の角度(θ)を計算するには、次の手順に従います。
- ターミナル/SSH を開き、コーディングの練習を始めるために
nodeと入力します。 Array.prototype.reduce()、Math.pow()、およびMath.sqrt()を使用して、各ベクトルの大きさと 2 つのベクトルのスカラー積を計算します。Math.acos()を使用して逆余弦を計算し、θ の値を取得します。
以下はコードの例です。
const vectorAngle = (x, y) => {
let mX = Math.sqrt(x.reduce((acc, n) => acc + Math.pow(n, 2), 0));
let mY = Math.sqrt(y.reduce((acc, n) => acc + Math.pow(n, 2), 0));
return Math.acos(x.reduce((acc, n, i) => acc + n * y[i], 0) / (mX * mY));
};
vectorAngle([3, 4], [4, 3]); // 0.283794109208328
この関数は 2 つの配列(x と y)を引数として受け取り、それらの間の角度(ラジアン)を返します。
まとめ
おめでとうございます!あなたはベクトルの角度の実験を完了しました。あなたのスキルを向上させるために、LabEx でさらに多くの実験を練習することができます。