- 締切済み
MATLABでの波形のフーリエ変換
MATLABであるパルスのフーリエ変換をし、そのスペクトルを逆フーリエ変換をすると、元の時間波形に戻らなくて困っています。原因として考えられることとしてはどのようなことでしょうか? よろしくお願いします。
- hikamiu
- お礼率2% (2/73)
- その他(プログラミング・開発)
- 回答数1
- ありがとう数1
- みんなの回答 (1)
- 専門家の回答
みんなの回答
フーリエ解析するためにデータをサンプリングすると、サンプリング定理により情報量が落ちる。 フーリエ変換することにより、さらに情報量が落ちる。 これをまた、逆フーリエ変換するとまたも情報量が落ちる。 だから、元には戻らない。
関連するQ&A
- フーリエ変換における時間波形と振幅スペクトル
ある電磁波で,時間波形を取得後,フーリエ変換し振幅スペクトルを得たとき, 時間波形の長さ(時間窓)が長くなればなるほど,振幅スペクトルのピーク値が下がってしまいます. これはいったいなぜなのでしょうか? どなたか教えていただけませんか? よろしくおねがいします.
- ベストアンサー
- 物理学
- フィルタ処理後の逆フーリエ変換で問題??
私は時間と電圧の値に対して以下の処理を施しています。 時間と電圧の波形(時間波形と呼ぶ。)にフーリエ変換 ↓ バンドパスフィルタ ↓ 逆フーリエ変換 この処理をした後に、時間の初めの部分に元の時間波形より大きな値が出てしまいます。 逆フーリエ変換後に初めの時間に大きな値が発生してしまう原因をご存知の方いましたら、原因を教えてください。 よろしくお願いします。 なお、フーリエ変換→逆フーリエ変換で元の時間波形になることは確認しています。
- ベストアンサー
- 数学・算数
- フーリエ変換について
ある波の波形をフーリエ変換するんですが、 した結果というのは、周波数スペクトルがでてくるんですか? 一体どの公式を使えばいいんですか? またそれによっていくつかの波の違いって分かるんですか?
- ベストアンサー
- 数学・算数
- フーリエ変換を用いた波形の特徴抽出
波形の特徴抽出について以前質問をさせていただいたものです。 その後、試行錯誤してフーリエ変換を用いてみたのですがフーリエ変換がよくわかりません。 まず、波形に対しハミング窓を掛けて、それをフーリエ変換してグラフを出してみたのですが、3種類違う波形に対して同じ処理を行ってみたところ最終的に出てくるグラフは同じようなものになってしまいます。 これがなぜだかわからないのですがどなたか、わかる方がいらっしゃいましたらご教授ください。 加えて、フーリエ変換を用いて波形の特徴を抽出したい場合にどのような処理をどのような手順で行えばいいのか、わかる方がいらっしゃいましたら教えてください。 よろしくお願いします。
- ベストアンサー
- 数学・算数
- 二重フーリエ変換
こんにちは。 普通の横軸時間軸の周期関数のフーリエ変換の参考書はよくあるのですが、二重フーリエ変換(離散)に詳しい参考書、サイトを探しています。 二重フーリエ変換の使用目的は、正弦波をPWM変調(またはΔΣなど)する時、周期的にパルス幅が変わってくるのですが、これは元の正弦波と三角波(など)の組み合わせによって回路で処理されます。 このPWM波形を周波数解析するのに、元の正弦波と三角波のそれぞれの周波数が関わり、二重のフーリエ変換が必要になるということです。 どなたか、解かる方いたらアドバイスお願いします。
- ベストアンサー
- その他(学問・教育)
- MATLABによるFFT
MATLABのfft関数を使用して,フーリエ変換してPSDを算出すると,スペクトルの周波数領域での積分値が元データの二乗平均値と一致しないのですが,原因は何が考えられるでしょうか?FFTの出力がフーリエ係数であれば一致するはずなのですが.
- ベストアンサー
- 数学・算数
- エクセルを使用しフーリエ変換でグラフを作るには?
課題でエクセルでフーリエ変換でグラフにするのですが、サンプリング周波数と時系列データから時間波形とフーリエスペクトルのグラフを作らないとなりません。 エクセルの使い方やフーリエ変換も勉強したばかりで分からないことだらけです。ネットや本などで調べても出来そうになかったので、どうか教えていただけると幸いです。
- ベストアンサー
- 電気・電子工学
- MATLABでtxtから読み込み,高速フーリエ変換
とある大学生です. あるプロットデータの解析で高速フーリエ変換したいのですが,やり方がわかりません. MATLABを使えば簡単らしいですが,あまり詳しくなく手こずっており,ネットで調べてもわかりませんでした. データ提出の締め切りも近いため,この場をお借りして質問しました. 具体的には,以下に示すようなテキストデータを読み込んで,高速フーリエ変換をしてグラフ化したいです. それで各箇所の周波数を解析する予定です. テキスト読み込み,フーリエ変換,グラフ化のすべてをこなせるコマンド記述が知りたいです. ご回答,よろしくお願い致します. filename.txt ----------------------------------------------- (何行かあるヘッダー) 時間(秒) [TAB] 箇所1 [TAB] 箇所2 [TAB] 箇所3 0.0000 [TAB] 1.000 [TAB] 2.012 [TAB] 1.111 1.029 [TAB] 4,000 [TAB] 2.111 [TAB] 1.109 3.100 [TAB] 8.888 [TAB] 1.029 [TAB] 5.921 ~省略~ 40.0000 [TAB] 2.987 [TAB] 3.195 [TAB] 123.11 (何行かあるフッダー) ----------------------------------------------- あと,できればでいいのですが・・・ 時間窓の両端が同じ値でない場合に出る擬似的なスペクトルを抑える窓関数の畳み込み方も教えていただきたいです.
- ベストアンサー
- 数学・算数
- ある時間関数を離散フーリエ変換して得られるフーリエスペクトルの振幅値に
ある時間関数を離散フーリエ変換して得られるフーリエスペクトルの振幅値について教えて下さい。 今想定している離散フーリエ変換の式は一般的なもので Σ(k=0~N-1) f(k)exp(-2πkni/N) を考えています。 また、離散フーリエ変換して得られるスペクトルは √(Re^2+Im^2) で計算します。 離散フーリエ変換を適用する関数を、 振幅1の直流、及び振幅1で周波数5[Hz]の正弦波とします。 (この2つの信号は別々の信号で合成されていません。) サンプリング周波数を20[Hz]とした場合、サンプリングして得られるデータ列はそれぞれ、 直流: 「1, 1, 1, 1」 正弦波: 「0, 1, 0, -1」 となると想定されます。 (正弦波をサンプリングする場合は位相が関わってきますが、今回は気にしないで下さい。) このデータ列に対して上記の離散フーリエ変換を適用した場合、 得られるフーリエスペクトルの振幅値はそれぞれ、 直流: 「4」(直流のフーリエスペクトルの振幅値値) 正弦波: 「2」(5[Hz]のフーリエスペクトルの振幅値) となります。 (データ点数は上の通り4点) ここで質問なのですが、 離散フーリエ変換して得られるスペクトルの振幅値から元の関数の振幅値を求める場合、 フーリエスペクトルをサンプリングの総データ点数で割ることは数学的に納得できます。 しかしこの例の場合、フーリエスペクトルを総データ点数で割ると、 直流: 「4 -> 1」 正弦波: 「2 -> 0.5」 となってしまい、直流は正しいのですが、正弦波の元の振幅値を正確に求めることは出来ません。 この例の場合、フーリエスペクトルの振幅値から正弦波の振幅値を正しく求めるには、 「フーリエスペクトルの振幅値*2/データ点数」 としてやらなければいけません。 上記のことに関して、なぜこのようになるのかを(2をかける理由を)教えて頂けないでしょうか。 当方、数学についてはあまり詳しくないため、簡単に説明して頂けると幸いです。
- 締切済み
- 数学・算数