Hi all. I've found in MATLAB help that a notching comb filter has following tranfser function: H(z) = b*(1+z^(-N))/(1+a*z^(-N)) where N is the number of notches. How to determine coefficients a and b with respect to real-world parameters such as sampling frequency, notch frequency and notch bandwidth/resp. attenuation? I don't have the filter toolbox and therefore not the 'iircomb' function. A quick search on the web did yield nothing useful and it's not explained in MATLAB help. Thanks for your help.

# Notch comb filter coefficients

Started by ●May 21, 2010

Reply by ●May 21, 20102010-05-21

ombz wrote:> Hi all. > I've found in MATLAB help that a notching comb filter has following > tranfser function: > > H(z) = b*(1+z^(-N))/(1+a*z^(-N)) > > where N is the number of notches. How to determine coefficients a and b > with respect to real-world parameters such as sampling frequency, notch > frequency and notch bandwidth/resp. attenuation? > I don't have the filter toolbox and therefore not the 'iircomb' function. A > quick search on the web did yield nothing useful and it's not explained in > MATLAB help. > > Thanks for your help.Why don't you play a bit -- change the values of a and b, and look at the response on a Bode plot? Perhaps it'll give you an idea of what you want. Note that this isn't the only comb filter, too. -- Tim Wescott Control system and signal processing consulting www.wescottdesign.com

Reply by ●May 24, 20102010-05-24

On Fri, 21 May 2010 09:18:21 -0500, "ombz" <andreas.weiskopf@n_o_s_p_a_m.gmail.com> wrote:>Hi all. >I've found in MATLAB help that a notching comb filter has following >tranfser function: > >H(z) = b*(1+z^(-N))/(1+a*z^(-N)) > >where N is the number of notches. How to determine coefficients a and b >with respect to real-world parameters such as sampling frequency, notch >frequency and notch bandwidth/resp. attenuation? >I don't have the filter toolbox and therefore not the 'iircomb' function. A >quick search on the web did yield nothing useful and it's not explained in >MATLAB help. > >Thanks for your help.Hi, the following web page gives what you call "real-world parameters" in an example: http://www.mathworks.com/access/helpdesk/help/toolbox/filterdesign/ref/iircomb.html As Tim said, there are other comb filters, such as the FIR comb filter: H1(z) = b*(1+z^(-N)) H1(z) doesn't have as narrow notches as does your H(z), but H1(z) requires fewer computations than does your H(z). Good luck, [-Rick-]

Reply by ●May 24, 20102010-05-24

On Fri, 21 May 2010 09:18:21 -0500, "ombz" <andreas.weiskopf@n_o_s_p_a_m.gmail.com> wrote:>Hi all. >I've found in MATLAB help that a notching comb filter has following >tranfser function: > >H(z) = b*(1+z^(-N))/(1+a*z^(-N)) > >where N is the number of notches. How to determine coefficients a and b >with respect to real-world parameters such as sampling frequency, notch >frequency and notch bandwidth/resp. attenuation? >I don't have the filter toolbox and therefore not the 'iircomb' function. A >quick search on the web did yield nothing useful and it's not explained in >MATLAB help. > >Thanks for your help.Oops!, I just remembered that you don't have the "iircomb()" code. So my first reply didn't help you at all. Sorry 'bout that. Tim's advice is good advice. [-Rick-]

Reply by ●May 24, 20102010-05-24

@Tim Of course I found and read your other thread where you've written down another type of notch filter. But the one from MATLAB looks simpler. So, of course I will play around with the coefficients since I still don't know the answer yet - thank you. @Rick Thank you. I know the FIR comb filter. But I need to have narrow notches, so I've chosen IIR.>On Fri, 21 May 2010 09:18:21 -0500, "ombz" ><andreas.weiskopf@n_o_s_p_a_m.gmail.com> wrote: > >>Hi all. >>I've found in MATLAB help that a notching comb filter has following >>tranfser function: >> >>H(z) = b*(1+z^(-N))/(1+a*z^(-N)) >> >>where N is the number of notches. How to determine coefficients a and b >>with respect to real-world parameters such as sampling frequency, notch >>frequency and notch bandwidth/resp. attenuation? >>I don't have the filter toolbox and therefore not the 'iircomb' function.A>>quick search on the web did yield nothing useful and it's not explainedin>>MATLAB help. >> >>Thanks for your help. > >Oops!, > I just remembered that you don't have the >"iircomb()" code. So my first reply didn't >help you at all. Sorry 'bout that. > >Tim's advice is good advice. > >[-Rick-] > >