【1】アダマール行列
アダマール行列Hnは+1か−1の要素をもつn×n行列で,その行と列は互いに直交している.各行または列のノルム(各要素の2乗和)はnであるから,
HnHn’=Hn’Hn=nIn
が成り立つ.
最も簡単なアダマール行列は
H2 =[1, 1]
[1,−1]
である.すべての他のアダマール行列はn=4kであることが必要である.
とくに興味深いのは「直積」
H4=H2×H2(2^2×2^2行列),
H8=H2×H2×H2(2^3×2^3行列),
Hn=H2×H2×H2・・・(2^n×2^n行列)
によって,H2から得られるn=2^mのシルベスタ型のアダマール行列で,
[1, 1, 1, 1]
H4 =[1,−1, 1,−1]
[1, 1,−1,−1]
[1,−1,−1, 1]
[1, 1, 1, 1, 1, 1, 1, 1]
[1,−1, 1,−1, 1,−1, 1,−1]
[1, 1,−1,−1, 1, 1,−1,−1]
H8 =[1,−1,−1, 1, 1,−1,−1, 1]
[1, 1, 1, 1,−1,−1,−1,−1]
[1,−1, 1,−1,−1, 1,−1, 1]
[1, 1,−1,−1,−1,−1, 1, 1]
[1,−1,−1, 1,−1, 1, 1,−1]
===================================
【2】アダマール行列の直積
なお,A(m×n行列)とB(m’×n’行列)の直積(クロネッカー積)は,2つの行列の各要素を直接乗じて作る(mm’×nn’)行列である.直積では第1項の各要素をその項と第2項との積で置き換えることによって定義される.
両者の成分のすべての積を作り,各要素を(ci'j')=(aijbkl)において,
i’=i+m(k−1)
j’=j+n(l−1)
の式にしたがって並べると,
1≦i≦m,1≦j≦n,1≦k≦m’,1≦l≦n’
より,
1≦i’≦mm’,1≦j’≦nn’
また,正方行列X(n×n行列)とY(m×m行列)の直積の固有値は,Xのn個の固有値とYのm個の固有値の積である.テンソルの数学的定義はそれが何であるかよりも座標変換に対していかに振る舞うかによって規定するから,理解しにくいかもしれない.
===================================
【3】DFT行列
DFT行列Fnは,1のn乗根
ωj=exp(2πij/n) (j=0〜n−1)
の要素をもつn×nヴァンデルモンド行列で,その行と列は互いに直交している.各行または列のノルム(各要素の2乗和)はnであるから,
FnFn’~=Fn’~Fn=nIn (Fn’は転置行列,Fn~は複素共役行列)
が成り立つ.
det|nIn|=n^n
より
det|Fn|=n^n/2
[1 1 ・・・ 1 ]
[ω0 ω1 ・・・ ωn-1 ]
Fn =[ω0^2 ω1^2 ・・・ ωn-1^2 ]
[・・・・・・・・・・・・・・・・・・]
[ω0^n-1 ω1^n-1 ・・・ ωn-1^n-1 ]
ω=exp(2πi/n)
とおくと,Fnは対称ヴァンデルモンド行列となる.最も簡単なDFT行列は
F2 =[1, 1]
[1,−1]
である.これはアダマール行列H2と全く同じである.
[1, 1, 1 ]
F3 =[1, ω, ω^2 ]
[1, ω^2,ω ]
F4はH4とは異なり,
[1, 1, 1, 1]
F4 =[1, i,−1,−i]
[1,−1, 1,−1]
[1,−i,−1, i]
である.
===================================
【4】離散フーリエ変換(DFT)
離散フーリエ変換(DFT)は,Fnをn×n行列,aをベクトルとして,
A=Σakexp(2πik/n)=Fna
と書くことができる.
n個の複素数(または実数)
z0,z1,・・・,zn-1
を前もって与えて,a=(a0,a1,・・・,an-1)を
zk=a0+a1ωk+a2ωk^2+・・・+an-1ωk^n-1=Σajωk^j (k=0〜n−1)
を定める.
直交性から,具体的に
ak=1/n(z0+z1ωk~+z1ωk~^2+・・・+zn-1ωk~^n-1) (k=0〜n−1)
により与えられる.
zk=Σajωk^jとwk=Σbjωk^jの内積は,直交関係により
Σzkwk~=nΣajbj〜
とくに,すべてのkについてxk=wkならば
Σ|zk|^2=nΣ|aj|^2 (有限パーシヴァル関係式)
となる.
===================================