2016-04-19 28 views
0

私は可変周波数応答を持つことが知られている測定時間変動信号を持っています(私は測定装置の周波数対感度データを持っています)。私は、以下の式を使ってデコンボリューションを行いたい:ここで、vtは時間変化信号であり、Mfは周波数応答である。MATLAB:ifft()を使用して信号と周波数応答をデコンボリューションする

私はFREQによって大きさ

abs(fft(vt)) 

と除算を取ります。対応答曲線Mf(同じ周波数範囲に補間)。

しかし、Mf = 1(f = 0〜n MHzのすべての値に対して)を設定した場合、ifftを実行すると元の信号vtは得られません。

vft fftの大きさを使用して除算を実行する必要がありますが(実際にはMfは振幅のデータとの比であるため)、実際の/複雑なfftデータをifft元の信号を取得するが、私はこれが正しく動作するようにする方法がわからない。

答えて

0

pt = ifft(fft(vt)./1) 

PtがVTに等しいが生じないということであるあなたが主張しているものを私には思えます。これは浮動小数点精度まで真実です。私はptとvtのサンプル間の絶対誤差の最大値を調べます。これは、あなたのサンプルのものより少なくとも10桁小さいはずです。

+0

いいえ、うまくいきません。私が理解していないことは、abs(fft(vt))./ Mfまたはfft(vt)./ Mfを使用し、正しいタイムスタンプと振幅を取得するためにifftを後で適用する方法です。 (私はMfを補間しなければならないので、質問周波数点はfft(vt)と同じです。 – 2one

関連する問題