公式,以及它的直覺
到目前為止,向量一直是可以相加和縮放的箭頭。點積 是第一個能比較兩個箭頭、並返回一個數字告訴你它們有多指向同一方向的工具。配方很簡單:對應座標相乘,再全部加起來。
u = (3,4) v = (1,2) u dot v = 3*1 + 4*2 = 3 + 8 = 11
點積是一個更一般想法的日常版本——內積,也就是任何把兩個向量相乘成一個數的合理方式。對平面或空間裡的普通箭頭來說,「內積」和「點積」是同一回事。
讀懂符號
最有用的一個習慣,是在看點積的大小之前先看它的符號。結果為正,表示兩個向量朝同一邊傾斜;結果為負,表示它們指向相反;而結果恰好為零,則表示它們成直角。
(1,0) dot (1,0) = 1 same direction (+) (1,0) dot (0,1) = 0 right angle (0) (1,0) dot (-1,0)= -1 opposite (-)
長度與角度由此得出
把一個向量和它自己做點積,會發生一件好事:交叉項消失,剩下的就是各座標的平方和。這個和的平方根,就是向量的長度,也就是它的範數。這不過是披上新外衣的畢氏定理。
v = (3,4) v dot v = 3*3 + 4*4 = 9 + 16 = 25 norm(v) = sqrt(25) = 5
長度和符號合起來,就是完整的幾何定律:u dot v = norm(u) * norm(v) * cos(theta),其中 theta 是它們之間的夾角。把它反過來解,你就能僅憑座標還原出夾角——根本不需要量角器。
- 計算 u dot v(對應座標相乘後相加)。
- 用「與自身點積」的技巧算出 norm(u) 和 norm(v)。
- 於是 cos(theta) = (u dot v) / (norm(u) * norm(v));取反餘弦即得 theta。