2つのベクトルの外積
📂行列代数2つのベクトルの外積
定義
二つの列ベクトルu=u1⋮unとv=v1⋮vnの外積outer productは次のように定義される。
u⊗v=uvT=u1u2⋮un[v1v2⋯vn]=u1v1u2v1⋮unv1u1v2u2v2⋮unv2⋯⋯⋱⋯u1vnu2vn⋮unvn
このとき、Tは行列の転置である。
説明
ベクトルと行列に関するさまざまな演算があり、混同しないよう注意が必要だ。
- 3次元空間で定義されたcross productも外積と翻訳されることが多く、注意が必要だ。英語の単語とその性質を見ると、cross productはクロス積やベクトル積と呼ぶのが適切に見える。
- クロネッカー積(テンソル積)の特殊な場合と見ることができる。A⊗BでAが列ベクトル、Bが行ベクトルの場合である。
- 行列積の特殊な場合と見ることができる。A×BでAが列ベクトル、Bが行ベクトルの場合である。
二つのベクトルのスカラー積(点積、内積)は計算結果がスカラーであり、二つのベクトルのベクトル積は計算結果がベクトルだ。二つのベクトルの外積は計算結果が行列(テンソル)となる。
演算 | スカラー積(内積) | ベクトル積 | 外積(テンソル積) |
---|
次元 | n次元ベクトル | 3次元ベクトル | n次元ベクトル |
表記 | u⋅v=uTv | u×v | u⊗v=uvT |
結果 | スカラー =1×1 行列 | 3次元ベクトル | n×n 行列 |
値 | ∑iuivi=u1v1+⋯+unvn | u2v3−u3v2u3v1−u1v3u1v2−u2v1 | u1v1u2v1⋮unv1u1v2u2v2⋮unv2⋯⋯⋱⋯u1vnu2vn⋮unvn |
一般化
実はスカラー積やベクトル積とは異なり、演算する二つのベクトルの大きさが異なっていてもよく定義される。例えば、二つのベクトルu=u1⋮unとv=v1⋮vmの外積は次のように定義できる。
u⊗v=u1⋮un[v1⋯vm]T=u1v1u2v1⋮unv1u1v2u2v2⋮unv2⋯⋯⋱⋯u1vmu2vm⋮unvm
性質
u=[u1⋯un]T、v=[v1⋯vn]T、w=[w1⋯wn]Tとする。次が成り立つ。
(u⊗v)T=v⊗u(1)
(2)線形性:
(v+w)⊗u=v⊗u+w⊗u
u⊗(v+w)=u⊗v+u⊗w
α∈Rを定数とする。
(αv)⊗u=α(v⊗u)=(αv)⊗u
(u⊗v)w=(v⋅w)u(3)
wT(u⊗v)=(w⋅u)vT(4)
(5)結合法則:
⊗をクロネッカー積に拡張すると次が成り立つ。
(u⊗Kronv)⊗Kronw=u⊗Kron(v⊗Kronw)
証明
(1)
転置の性質による。
(u⊗v)T=(uvT)T=vuT=v⊗u
(2)
行列積が線形であるため成立する。
(v+w)⊗u=(v+w)uT=vuT+wuT=v⊗u+w⊗u
転置が線形であるため成立する。
u⊗(v+w)=u(v+w)T=u(vT+wT)=uvT+uwT=u⊗v+u⊗w
(αv)⊗u=(αv)uT=α(vuT)=α(v⊗u)
■
(3)
(u⊗v)w=(uvT)w=u(vTw)=u(v⋅w)=(v⋅w)u
vTwはスカラーであることに注意する。
■
(4)
wT(u⊗v)=wT(uvT)=(wTu)vT=(w⋅u)vT
■