バックナンバーはこちら。
https://www.simulationroom999.com/blog/stock-predict-matlabpython-backnumber/
はじめに
前回は離散フーリエ変換、逆離散フーリエ変換の大雑把な導出の話をした。
行列を利用した逆変換の都合、サンプリングと級数、係数の数が同値になる。
今回はフーリエ変換、逆フーリエ変換の時と同じく、数式のバリエーションについて。
登場人物
博識フクロウのフクさん
イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1
エンジニア歴8年の太郎くん
イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1
離散フーリエ変換(DFT)、逆離散フーリエ変換(IDFT)の周波数領域は角周波数?周波数?
そして今回はDFT、IDFTのバリエーションか・・・。
といっても、フーリエ変換、逆フーリエ変換の時の数式対称性に伴うバリエーションだけなんだけどね。
あ、そうなんだ。
そういえば、前回導出したDFT、IDFTはフーリエ変換、逆フーリエ変換でいう所の角周波数を元にした数式なの?
それとも周波数?
周波数の方だな。
実数、複素共に同じなんだけど、
フーリエ係数って特定の期間の周波数を示しているんだよね。
そのフーリエ係数、特に今回だと複素フーリエ係数から導出しているんで、自動的に周波数を元にした式になる。
注意点としては、物理学的な周波数ではなく、総サンプリングを1周期とした場合の周波数ってところだな。
まぁ角周波数と周波数の関係性は明確なので、角周波数側への変形はできるだろうけど。
なんか言い回しが無駄に混乱を誘うんだよなぁ。
ここら辺は別途実験もする予定だから、その時に改めて確認してみよう。
あ、そういうのがあるとわかりやすそうだ。
離散フーリエ変換(DFT)、逆離散フーリエ変換(IDFT)のバリエーション
じゃ、3バリエーションを書き出す。
■ バリエーション1
離散フーリエ変換
\(\displaystyle F(t)=\frac{1}{N}\sum^{N-1}_{x=0}f(x)e^{-i\frac{2\pi tx}{N}} \)
逆離散フーリエ変換
\(\displaystyle f(x)=\sum^{N-1}_{t=0}F(t)e^{i\frac{2\pi tx}{N}} \)
■ バリエーション2
離散フーリエ変換
\(\displaystyle F(t)=\sum^{N-1}_{x=0}f(x)e^{-i\frac{2\pi tx}{N}} \)
逆離散フーリエ変換
\(\displaystyle f(x)=\frac{1}{N}\sum^{N-1}_{t=0}F(t)e^{i\frac{2\pi tx}{N}} \)
■ バリエーション3
離散フーリエ変換
\(\displaystyle F(t)=\frac{1}{\sqrt{N}}\sum^{N-1}_{x=0}f(x)e^{-i\frac{2\pi tx}{N}} \)
逆離散フーリエ変換
\(\displaystyle f(x)=\frac{1}{\sqrt{N}}\sum^{N-1}_{t=0}F(t)e^{i\frac{2\pi tx}{N}} \)
フーリエ変換、逆フーリエ変換の時の数式対称性と同じ感じかな?
\(\displaystyle \frac{1}{N}\)をどちらに寄せるか、
もしくは\(\displaystyle \frac{1}{\sqrt{N}}\)で折半するか。
ってことは、離散フーリエ変換、逆離散フーリエ変換も各バリエーションで対になっているものを使用しないとダメってことか。
そうそう。
まぁこれを言いたかっただけなんで、導出の話は流れだけ把握してもらえればOKだったわけだ。
まぁぶっちゃけ導出の話は1ミリもわからんのだけどね。
それは仕方がないことだ。
かなり端折って説明してるもん。
あれで理解出来たらそもそも説明も必要ないな。
な?!
と言ってもガチで説明されても困るんだよな・・・。
この怒りのぶつけ先が無い・・・。
まとめ
まとめだよ。
- 離散フーリエ変換、逆離散フーリエ変換のバリエーションについて。
- フーリエ変換、逆フーリエ変換の時と同じく数式対称性によるバリエーション。
- 1/Nをどちらによせるか、折半するか。
- よって、対になってる離散フーリエ変換、逆フーリエ変換を使用する必要がある。
バックナンバーはこちら。
コメント