2つのベクトルを加算したら、結果は対応する要素ごとの和のベクトルとなります。
1: [1, 2, 3] 2: [1, 2, 3] 1: [8, 8, 3] . 1: [7, 6, 0] . . [1,2,3] s 1 [7 6 0] s 2 +
ベクトル要素はコンマかスペースで区切って入力します。 これは不完全ベクトル項を使って入力している時でも、 代数的入力方式でも同じく使えます。 あとで再利用するとき便利なように、 s 1 と s 2 でストアしておきましょう。
2つのベクトルを乗算したら、結果は対応する要素ごとの積の合計です。 これはベクトルの内積(dot product) と呼ばれています。
2: [1, 2, 3] 1: 19 1: [7, 6, 0] . . r 1 r 2 *
2つのベクトルの内積は、それらの「長さ同士の積」×「両者がなす角度のコサイン」 に等しくなります。(ここで、ベクトルは3次元空間の原点 (0,0,0) から 特定の点に向けて引いた矢であると考えます。) A (絶対値)コマンドは、ベクトルの「長さ」を計算するのに使えます。
3: 19 3: 19 1: 0.550782 1: 56.579 2: [1, 2, 3] 2: 3.741657 . . 1: [7, 6, 0] 1: 9.219544 . . M-RET M-2 A * / I C
まず先ほどの内積コマンドの引数(2つのベクトル)を呼出します。 次にスタック先頭にある2つのベクトルの絶対値を計算して各ベクトルの長さとします。 先の内積をこの長さの積で割り、角度のコサインを得ました。 逆コサイン関数は、ベクトルがなす角度を約56度と計算しました。
2つのベクトルの外積(cross product) はベクトルであって、 その長さは「長さ同士の積」×「両者がなす角度のサイン」に等しく、 その方向は2つの入力のベクトルのどちらに対しても垂直です。 内積とは異なり、外積は3次元ベクトルに対してのみ定義されています。 先ほど計算した 2つのベクトルがなす角度を、外積を使って再検証しましょう。
2: [1, 2, 3] 3: [-18, 21, -8] 1: [-0.52, 0.61, -0.23] 1: 56.579 1: [7, 6, 0] 2: [1, 2, 3] . . . 1: [7, 6, 0] . r 1 r 2 V C s 3 M-RET M-2 A * / A I S
まず、元の 2つのベクトルを呼出し、外積を計算します。 これも後のためにストアしておきます。 その外積ベクトルを、もとの2つのベクトルの長さの積で割ります。 その結果得られたベクトルの長さは、角度のサインになるはずで、 確かにそうなっていますね。
ベクトル関係のコマンド群は、一般に v プリフィックス・キーで始まります。 2番目のキーは大文字の場合と小文字の場合があります。 これらのコマンドを打つときの便利のために、 shift-V プリフィックス・キーは v プリフィックス・キーと同様に 働くようにしてあります。(全てのプリフィックス・キーにこの性質を持たせる方法は 一般モードコマンド群 参照 .)
互いに垂直な2つのベクトルの内積を取ると、 コサイン90°がゼロなので結果もゼロになるはずです。 外積ベクトルが、元の2つのベクトルに対して本当に垂直か確かめてみましょう。
2: [1, 2, 3] 1: 0 2: [7, 6, 0] 1: 0 1: [-18, 21, -8] . 1: [-18, 21, -8] . . . r 1 r 3 * DEL r 2 r 3 *
(*) 練習問題 1. スタック top に1つのベクトルが 与えられているとき、そのベクトルを正規化するには (つまりその方向を変えずに長さを1にするためには) どのようなキーストロークを使えば良いでしょうか ? ベクトル 練習問題 1 解答「ベクトルの正規化」 参照 . (*)
(*) 練習問題 2. ある粒子が1次元座標上のいくつかの位置に 存在しうると想定してください。ここにその座標群と対応する座標での粒子存在確率が ベクトル形式のリストで与えられたとします。その粒子の平均の位置座標を出しなさい。 ベクトル 練習問題 2 解答「重心」 参照 . (*)
Go to the first, previous, next, last section, table of contents.
利用度数