• ベストアンサー

インパルスとフーリエ変換

 離散フーリエ変換のプログラムを作成したのですが、初歩的な疑問が出てきました。測定法はオシロスコープからデータを得て離散値をフーリエ変換するというものです。インパルス=δ関数としてこれはオシロ自身が持っている(性能)ものと解釈してよろしいのでしょうか。また「アナログ信号のフーリエ変換」というのも理解に苦しみます。連続量を離散量子化しなければ計算不可のような気がしてならず、また離散フーリエ(DFT)なら有限区間に周期信号が必ず入っていなければ役に立たないと解釈していますが・・・。初歩の初歩ですが混乱しております。またこれらプログラミング等、専門外で初心者なのでよろしく解答お願いします。

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

  • ベストアンサー
  • nta
  • ベストアンサー率78% (1525/1942)
回答No.2

> δ関数は関数列をアナログ信号に乗算して離散化を図っているものと理解していますが、離散データ化しているのはこの場合オシロですよね。ということはデータ列間(分解能)はオシロの性能に等しい?と思ったのです。 δ関数列を乗算するだけではサンプリング値が得られません。その前後で積分が必要になります。積分を含めてということであれば、まさしくオシロスコープの入力信号回路の動作となります。

bottan
質問者

お礼

ありがとうございます。まさしく 積分する ということが欠如しておりました。 つくったプログラムは積分してます。概念が抜け落ちておりました。離散値だけを扱っていたので、専門書でアナログ信号のフーリエ・・・、ときたものですから混乱してしまいました。

その他の回答 (1)

  • nta
  • ベストアンサー率78% (1525/1942)
回答No.1

アナログ信号をDFTを使ってフーリエ変換するにはアナログ信号をサンプリングして2進数に量子化・符号化しなければなりません。サンプリングの周波数はナイキストの定理で含まれている信号の最高周波数の2倍が必要であるとされています。問題にされているのはサンプリングの期間=サンプリング数n ではないかと思いますが、サンプリングの周期Δt と周波数分解能ΔfとはΔf=1/(n Δt)となりますから、サンプリング周期が短く、サンプリング数が少ない場合には低い周波数に対する分解能が不足してしまいます。 そういう意味ではサンプリングした区間に一周期も含まれてこない、低い周波数の信号はわからないことになります。 前半の >インパルス=δ関数としてこれはオシロ自身が持っている(性能)ものと解釈してよろしいのでしょうか。 の意味はよくわかりませんが、回答した中身を呼んでいただければ少しはヒントになるのではないでしょうか。

bottan
質問者

お礼

サンプリング定義は理解しているのですが、アナログ信号の定義を少し勘違いしておりました。  δ関数は関数列をアナログ信号に乗算して離散化を図っているものと理解していますが、離散データ化しているのはこの場合オシロですよね。ということはデータ列間(分解能)はオシロの性能に等しい?と思ったのです。  遅ればせながらありがとうございました。

関連するQ&A

  • 離散フーリエ変換(DFT)について。

    離散フーリエ変換(DFT)について。 次の有限長N=4のディジタル信号の離散フーリエ変換(DFT)の周波数スペクトルを求めよ。[F[0],F[1],F[2],F[3]]=[-1,1,-1,2] について。 算出した所、 DFTは F[0]=1 F[1]=j F[2]=-5 F[3]=-jと算出できましたが正解でしょうか。 よろしくお願いいたします。

  • CUDAでの離散フーリエ変換(DFT)を教えてください。

    CUDAでの離散フーリエ変換(DFT)を教えてください。

  • アナログ信号とフーリエ変換

    デジタル信号の周波数分析として離散フーリエ変換があります。そして、アナログ信号の周波数分析としてフーリエ変換と考えていました。またアナログ信号を離散フーリエ変換で考える方法もあり、アナログ信号をサンプリングすることで離散フーリエ変換で考えることが出来ると考えています。 ですが、「アナログ信号の周波数分析にフーリエ変換を使うと定義されている」という考え方は間違いであると言われました。 何が違うのか分かりません。よく分からないので詳しく教えてください。

  • フーリエ級数、フーリエ変換、離散フーリエ変換

    こんばんは。 ・正弦波 ・余弦波 ・三角波 上記3つについて、それぞれ ・フーリエ級数 ・フーリエ変換 ・離散フーリエ変換 を求めよ、という課題を出されました。 周期2Tで、-T~Tの区間以外は0として考えていいとのことなのですが、全然分かりません。 教えていただけないでしょうか? よろしくお願いします。

  • C言語プログラムの離散フーリエ変換

    C言語プログラムの離散フーリエ変換について教えてください。「C言語による画像再構成の基礎」という本のプログラムをもとに二次元画像をDFT(通常の離散フーリエ変換)→InveresFFT(逆高速フーリエ変換)すると画像が左右反転、上下反転してしまいます。DFT→InverseDFTやFFT→InverseFFTだとそのようにはなりません。通常のDFTとFFTのアルゴリズムの違いからしかたがないのでしょうか?それともプログラムの変更で修正できるのでしょうか?どうしてもDFT→InverseFFTでがぞうをもとに戻したいのです。 サンプルページ http://www.iryokagaku.co.jp/frame/03-honwosagasu/370/370-dl.html P4-14fourier2d1d.c (離散フーリエ変換DFT)   P4-15fft.c(高速フーリエ変換)プログラムです

  • 離散フーリエ変換をC言語でどの様に書けばいいですか?

    C言語でDFT離散フーリエ変換を書くにはどの様に書けばよろしいですか? Googleで検索すれば書き方は出てくるのですが、使ってる関数がいまいちよく分かりません。 ・データの入力 ↓ ・フーリエ変換の計算 ↓ ・結果の出力というのをやればいいのは理解できるのですが、C言語でどの様に書けばいいか分からなくて…

  • 離散フーリエ変換をC言語で書く方法について

    C言語でDFT離散フーリエ変換を書くにはどの様に書けばよろしいですか? Googleで検索すれば書き方は出てくるのですが、使ってる関数がいまいちよく分かりません。 ・データの入力 ↓ ・フーリエ変換の計算 ↓ ・結果の出力というのをやればいいのは理解できるのですが、C言語でどの様に書けばいいか分からなくて…

  • 離散フーリエ変換

    離散フーリエ変換(DFT)に関する質問です。 N個のデータ(次数)をDFTすると、N個の係数が導き出せます。 これらの係数のなかで、周波数が中域成分である係数の値を操作したいのですが、 求まった係数や次数からどのように高周波成分、中周波成分、低周波成分とわかるのでしょうか。 Nの値が大きいほど高周波成分なのでしょうか。

  • 離散フーリエ変換(DFT)の実数と虚数

    離散フーリエ変換を行うと実数部と虚数部が出力されるのはわかったのですが、この実数部と虚数部そのものが何であるかがわからないです。 質問は下記の二つになります。 (1)離散フーリエ変換された信号の実数部とは何で虚数部とは何なのでしょうか? (2)実数部と虚数のどちらかだけでは離散フーリエ変換にならないのでしょうか? どなたかよろしくお願いします。

  • 離散フーリエ展開の意味(イメージ)

    離散フーリエ展開のよく意味がわかりません。 フーリエ変換は任意の周期関数をsunやcosの関数の和 で書くことですよね?それの複素表示も理解できるのですが…。 DFT(離散フーリエ展開)は関数の値を細分化して、 そしてそれを変えるいうことですか? それはどのようなことなのでしょうか? Uj=cos(2π/N)jとVj=sin(2π/N)jの離散フーリエ展開を すると、離散フーリエ変換したUkがk=1、N-1で振動成分をもつとはどういうことですか? まだ、大学1年で非常に難しくて困っています。 どなたかわかりやすく教えてほしいです。 お願いします。