• ベストアンサー

離散フーリエ変換の周期とサンプリング間隔と周波数

離散フーリエ変換で求まるスペクトルの各点の周波数について質問があります。 離散フーリエ変換で時間軸上の各点(0~T[s]でΔt刻みにN個の点を取った)を周波数軸上の各点に変換したときの周波数の換算式を調べると、 Δf=1/Tとなっていたり、Δf=1/(N*Δt) となっていました。 意味上はどちらでも良さそうな気がしたのですが、実際に計算してみると両者の式で周波数軸上の各点での周波数がずれていました。 たとえば0秒から0.1秒刻みで10点とると一周期T=0.9秒になるのですが、N*Δtで計算すると一周期1秒になってしまいます。0.9秒しか見ていないのに一秒周期の関数としてフーリエ変換していることになると思いますが、周波数間隔はどちらの式で計算すべきでしょうか?それとも用いるフーリエ変換の式によって異なるのでしょうか? 教えていただければ助かります。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • uyama33
  • ベストアンサー率30% (137/450)
回答No.3

0~T[s]でΔt刻みにN個の点を取った の意味ですが、 0からT秒までをΔtの幅で分割します。 分割した区間内のある時刻に計測するわけです。 たとえば、すべての区間で最初に測るときもあれば、 すべての区間で最後に測るときもあるでしょう。  N回測ったときにかかる時間は、 それぞれの区間で計測した瞬間だけではなく、 各区間の残りの時間を含めて考えるべきです。  そうしないと、 (N+1)回目の測定は、2*Δt秒間で1回計測することになってしまいます。 均等にするには0.9秒の瞬間に測ったとしても残りの0.1秒をつけた区間の中で1回測ったとして扱いますので、10回測るのに必要な時間は1秒となります。

_thinking
質問者

お礼

離散化はずっと線から点を取り出したと考えていたのですが、本当は点ではなく区間に分けて、区間の代表値として点を扱っていたのですね。 離散フーリエ変換での勘違いが一つ消えてスッキリしました。 解説ありがとうございました。

その他の回答 (3)

回答No.4

離散フーリエ変換ていうのは実のところ離散フーリエ級数展開なんです。 (離散フーリエ変換→フーリエ係数、逆変換→級数展開) なので時間幅Tの有限区間信号を両側に張りつけて周期Tの周期関数として扱っていてf(0)=f(T)なのでf(T)は不要です。 周波数のきざみとして分母に入ってくるのは、この有限区間信号を周期化するときの繰り返し周期Tです。

_thinking
質問者

お礼

>f(0)=f(T)なのでf(T)は不要です。 そのとうりでした。私は分かったつもりで分かっていなかったようです。 uyama33さん回答と合わせて理解が深まり、助かりました。 回答ありがとうございました。

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

逆に考えた方が簡単かなぁ? 1 s 周期の信号を 0.1 s 単位でみるなら, 0 s, 0.1 s, ..., 0.9 s における信号の強さを見る必要があるし, これで十分だよね. だから T = NΔt なんです.

_thinking
質問者

お礼

回答ありがとうございます。 uyama33さんとhitokotonusiさんの回答と合わせて離散化と周期化の誤解が一つ解けました。 Tacosanさんの初めの回答のおかげで私自身の誤解が浮き彫りになり、議論が進んだように思います。ありがとうございました。

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

「0秒から0.1秒刻みで10点とる」と周期は 0.9秒ですか? 冷静に考えればわかるはずですが, この場合でも周期は 1秒となるはずです. 「0秒のときの値」と「0.9秒のときの値」は常に等しいですか?

_thinking
質問者

補足

回答ありがとうございます。 0秒から、0、0.1、0.2、・・・、0.8、0.9秒と0秒を含めて10点取って、フーリエ変換の各教科書にある「0~T秒をサンプリングしたときのフーリエ変換の(元データの)周期はT秒になる」に当てはめると、周期は0.9秒になると考えています。「0秒のときの値」と「0.9秒のときの値」が等しいかは元の波形によると思いますし、一般的には一致しない(だから窓関数が必要になってくる)と考えているのですが、誤った認識なのでしょうか? 間違いなく私は何処かでフーリエ変換を誤って覚えていると思うのですが、どこで勘違いしているのかが分からないのが現状で困り果てています(T_T)

関連するQ&A