MATLAB Answers

Tan
0

FIR Parks-McClellan

Asked by Tan
on 13 Jun 2012
Hi,
I have a set of FIR Parks-McClellan coefficient :
Numerator: FR_SV = [3.91719822748777E-02, 0.103629842929331, 0.171922134825388, 0.221881476438683, 0.221881476438683, 0.171922134825388, 0.103629842929331, 3.91719822748777E-02];
Denominator: [1.000];
Can i use spectrogram function to plot and see the filter response? I have browse through the help file and could not find Parks-McClellan window. Anyone can help?
Regards, Newbie

  0 Comments

Sign in to comment.

4 Answers

Honglei Chen
Answer by Honglei Chen
on 13 Jun 2012
 Accepted Answer

Parks-McClellan is an algorithm for filter design. It does not use window. Spectrogram is normally used to view the signal since it explores both time and frequency domain. You have a set of fixed filter coefficients so there is no time dependence. You can certainly use spectrogram, but it won't give you additional information than freqz does.

  4 Comments

Show 1 older comment
Tan
on 13 Jun 2012
Hi Honglei,
You were saying that freqz is better than spectrogram? If i use freqz to plot out the response, there is not a need to use spectrogram anymore since freqz is good enough?
How to plot the time domain response using the same set of coefficient?
Honglei Chen
on 13 Jun 2012
That depends on what you plan to do. In general it is a trade off between the main beamwidth and sidelobe height. Different window gives different tradeoff, you should be able to find some discussions on windows on any DSP book. That being said, what is your application? There is nothing wrong to add a window to a filter designed by Parks-McClellan, but this may not preserve the the ripple behavior produced by Parks-McClellan. It may be better to include those requirement before using Parks-McClellan
Honglei Chen
on 13 Jun 2012
I'm not saying freqz is better. What I mean is that for a fixed set of filter coefficients, spectrogram will not give you more information than freqz since there is no time variation. If you want to see the impulse response of the filter, use impz

Sign in to comment.


Wayne King
Answer by Wayne King
on 13 Jun 2012

You don't want to use spectrogram, use freqz()
freqz(FR_SV,1)
If you know the sampling frequency, you can input that as well. Here I will assume 10 kHz.
Fs = 1e4;
freqz(FR_SV,1,[],Fs)

  0 Comments

Sign in to comment.


Tan
Answer by Tan
on 13 Jun 2012

Hi Wayne King,
I have plotted my graph using freqz. but if i still intend to use spectrogram, is it possible? The function does not have window options for Parks-McClellan right?

  3 Comments

Wayne King
on 13 Jun 2012
Honglei said it perfectly. That's why I said use freqz().
Tan
on 13 Jun 2012
All right. Thanks :)
Is systemVue2009 reliable enough to design filter? I'm using this software to design a LPF, FIR Parks-McClellan and obtain a set of coefficient that stated in the ori question.
Tan
on 13 Jun 2012
Hi Wayne King,
freqz(FR_SV,1,N,Fs)
N = 512 (default)
Is it good to use as large as possible? For example, use 512 instead of 128?

Sign in to comment.


Wayne King
Answer by Wayne King
on 13 Jun 2012

I'm not familiar with systemVue2009 so I cannot answer your question. In MATLAB, you can use FDATool
>>fdatool
to design a Parks-McClellan FIR equripple filter and export (save) the filter coefficients.

  1 Comment

Tan
on 14 Jun 2012
Thanks for your guidance :)

Sign in to comment.