ベクトル計算機(内積・外積・大きさ・単位ベクトル・なす角)

2次元・3次元のベクトルを入力するだけで、内積(ドット積)・外積(クロス積)・大きさ(ノルム)・単位ベクトル・2ベクトルのなす角を自動計算する無料のベクトル計算ツールです。

ベクトル計算機でできること

このツールは2つのベクトルの成分を入れるだけで、内積(ドット積)・外積(クロス積)・それぞれの大きさ・単位ベクトル・2ベクトルのなす角をまとめて計算します。2次元と3次元を切り替えられ、2次元を選んだときは外積の欄が空欄になります。外積は3次元でしか定義されない演算だからです(2次元の「外積」として紹介される ax·by − ay·bx は、3次元外積のz成分だけを取り出したスカラー量で、ベクトルではありません)。

計算はすべて成分の四則演算と平方根・逆余弦で完結します。内積は a·b = axbx + ayby + azbz、大きさは √(x² + y² + z²)、単位ベクトルは各成分を大きさで割ったもの、なす角は cosθ = a·b ÷(|a||b|)を逆余弦したものです。ゼロベクトルは向きを持たないため、単位ベクトルとなす角は計算できません。その場合はエラーとして表示されます。

ベクトル計算機の使い方

  1. 次元を選ぶ 2次元か3次元かを先に決めます。3次元を選ぶとz成分の入力欄が現れ、外積も計算されます。
  2. ベクトル a と b の成分を入れる x・y(3次元ならz)の各成分を入力します。負の数や小数もそのまま扱えます。
  3. 結果を読み取る 内積・外積・大きさ・単位ベクトル・なす角が同時に表示されます。2次元では外積の欄に「3次元でのみ定義」と出ます。
  4. 図で向きを確かめる 2次元ではベクトル図が描かれます。数値だけでは判断しづらい向きや角度の関係を目で確認できます。

使いこなすためのヒント

  • 2次元・3次元はタブで切り替えられます。3次元を選ぶとz成分の入力欄と外積の結果が表示されます。
  • 内積が0のとき、2つのベクトルは直交(垂直)しています。符号がプラスなら鋭角、マイナスなら鈍角の関係です。
  • 外積の結果ベクトルは、入力した2つのベクトルの両方に垂直な向きになります(右手系)。
  • 単位ベクトルは元のベクトルを大きさ(ノルム)で割った、長さ1で向きだけを表すベクトルです。方向のみを扱いたいときに使います。
  • ゼロベクトル(すべての成分が0)を入力すると、大きさが0になるため単位ベクトルとなす角は計算できません。

ベクトル計算が必要になる場面

高校・大学の演習の答え合わせ

内積やなす角は符号や割り算を1か所間違えるだけで答えが変わります。手計算の結果をそのまま照合できます。

3DプログラミングやCGの座標計算

面の法線を求めるには外積、視線と面の向きの関係を調べるには内積を使います。実装前に手元の数値で挙動を確かめられます。

物理の力の分解・仕事の計算

仕事は力と変位の内積、トルクは位置ベクトルと力の外積で表されます。単位ベクトルは力の向きだけを取り出したいときに使います。

2つの方向がどれだけ揃っているかを測る

単位ベクトル同士の内積はそのまま cosθ になります。機械学習で使われるコサイン類似度も、この計算と同じものです。

ベクトルの用語

内積(ドット積)
対応する成分どうしを掛けて足し合わせた値で、結果はスカラー(向きを持たない数)です。a·b = |a||b|cosθ が成り立つため、0 なら2つのベクトルは直交しています。
外積(クロス積)
3次元でのみ定義される演算で、結果は a とも b とも垂直なベクトルです。その大きさは a と b が張る平行四辺形の面積に等しく、向きは右手の法則で決まります。
大きさ(ノルム)
ベクトルの長さで、√(x² + y² + z²) で求めます。三平方の定理を3次元へ拡張したものです。
単位ベクトル
大きさを1に揃えたベクトルで、向きの情報だけを取り出したいときに使います。各成分を大きさで割って作ります。
なす角
2つのベクトルの間の角度で、0°から180°の範囲に収まります。内積を両者の大きさの積で割り、逆余弦をとって求めます。
ゼロベクトル
全成分が0のベクトルです。長さが0で向きを持たないため、単位ベクトルもなす角も定義できません。

よくある質問

内積(ドット積)は2つのベクトルから1つの数(スカラー)を求める演算で、ベクトルの類似度や、なす角の計算に使われます。外積(クロス積)は2つのベクトルから、その両方に垂直な新しいベクトルを求める演算で、3次元でのみ定義されます。

外積の結果が「2つのベクトルに垂直な方向」を一意に決められるのは3次元特有の性質だからです。2次元では垂直な方向が定まらず、4次元以上では垂直な方向が無数に存在するため、一般的な外積は3次元でのみ自然に定義されます。

cosθ = (a·b) / (|a||b|) という公式を使います。内積を2つのベクトルの大きさの積で割ることでcosθが求まり、その逆余弦(arccos)を計算することで、なす角θを度数法や弧度法で求められます。

元のベクトルと同じ向きを持ち、大きさ(長さ)がちょうど1のベクトルです。ベクトルを大きさで割ることで求められ、コンピューターグラフィックスの法線ベクトルや、物理学での方向のみを表したい場面でよく使われます。

内積を計算し、その値が0であれば2つのベクトルは直交(垂直)しています。このツールでは入力したベクトルの内積を自動計算するため、その値が0かどうかを確認するだけで判定できます。
ツールくん

余談ですが ― ベクトルはハミルトンの四元数から生まれた

現在私たちが使う「ベクトル」という概念と表記法は、19世紀のアイルランドの数学者ウィリアム・ローワン・ハミルトンが考案した「四元数(クォータニオン)」から派生したものです。ハミルトンは3次元の回転を表現するために4つの数からなる四元数を発明しましたが、そのうち「純虚部」の3成分がのちのベクトルの原型になりました。

四元数からベクトルを独立させ、内積・外積という現在の形に整理したのは、アメリカの物理学者ジョサイア・ウィラード・ギブスとイギリスの技術者オリヴァー・ヘヴィサイドです。19世紀末、彼らは物理学(特に電磁気学)の計算を簡潔にするため、四元数の複雑な演算規則から必要な部分だけを取り出し、現在のベクトル解析の体系を作り上げました。

外積が3次元ベクトルでしか一般的に定義されないのは、外積の結果が「2つのベクトルに垂直な向き」を一意に決められる次元が3次元特有の性質だからです。この性質のおかげで、外積は物理学におけるトルク(回転力)や角運動量、コンピューターグラフィックスにおける面の法線ベクトルの計算など、幅広い分野で応用されています。