Filtered signal's frequency response is not correct

3 次查看(过去 30 天)
I am trying to pass a pure noise signal through a filter, but the frequency response is not what I expected. I have attached the sample script I am using to filter the signal.
I created a digital FIR filter as shown:
filter_response.jpg
I applied this to flat noise and expected to see abount -120 dB of attenuation at higher frequencies; however, I get the following frequency response:
freq_response.jpg
A few things stand out as incorrect:
  1. Why isn't the amplitude flat in the stopband of the filter (~1000 Hz to ~64000 Hz)? I would have expected the orange filtered signal response (the 2nd figure) to match the filter response in the first figure.
  2. The attentuation in the orange filtered signal only reaches about -60 dB, when it should reach -120 dB. Why is this?
  3. I ran a similar test using Simulink and the spectrum analyzer produced the correct frequency response for the signal. Why is this different that using a MATLAB script?
simulinkTest.JPG
simulink_spectrum.JPG

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Get Started with DSP System Toolbox 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by