巡回行列の固有値分解

はじめに

今読んでいる無線通信工学の本のOFDMの項に差し掛かった。巡回行列がDFT行列で対角化されることが証明無しに用いられたので、導出してみた。

arg maxarg min\providecommandrecterf\providecommand\providecommand\providecommandPr

主張

NN,a0,a1,,aN1C,a:=[a0,,aN1]とする。aの要素をm{0,1,,N1}だけ巡回シフトしたベクトルamを次式で定義する。

am:={a(m=0)[aNm,,aN1,a0,a1,,aN1m](m=1,2,,N1)

ACN×Nを次式で定義する。

A:=[a0,a1,,aN1]

このときAは次のように対角化可能である。

A=NWdiag(DFT(a))W

ここにWN×N DFT基底行列であり、第(n,k)要素は次式で定義される。

Wn,k:=1NexpinkN2π

DFT(a)aのDFT(離散 Fourier 変換)であり、次式で定義される。

DFT(a):=Wa

すなわち第k要素は次式である。

n=0N1Wk,nan

導出

離散 Fourier 変換」で述べられているDFTの性質を用いる。emRNを第m要素が1でそれ以外は0のベクトルとする。amは巡回畳み込みを用いて次式で表せる。

am=acycem

巡回畳み込みのDFTの性質より次式が成り立つ。

DFT(am)=NDFT(a)DFT(em)=NDFT(a)W[:,m]

これより次式が成り立つ。

WA=[DFT(a0),DFT(a1),,DFT(aN1)]=N[DFT(a)W[:,0],DFT(a)W[:,1],,DFT(a)W[:,N1]]=Ndiag(DFT(a))W

両辺に左からWを掛け、Wのユニタリ性WW=Iを用いて次式を得る。

A=NWdiag(DFT(a))W

投稿者: motchy

DSP and FPGA engineer working on measuring instrument.

コメントを残す