# changing filtering "speed" (cutoff frequency) of an IIR filter knowing only its coefficients

i got an IIR filter bu I have only the coefficients. now i'd like to be able to change the filter characteristics of the low pass filter (the "cutoff" frequency) but all i got are a and b coefficients. i'd like to be able to set a multiplier that will "scale" the filter by that amount. if i set the multiplier to 0.5 i'd like to filter the same but two times lower or two times slower (50 Hz cutoff instead of 100Hz)

is it possible ? Or is it a lost cause ? and with Matlab ?

thanks so much

Jeff

• you should be more complete about what your low-pass filter is. what order is it? IIR? can you show us the transfer function or the difference equation? Jun 27, 2020 at 14:22
• If you are simply trying to scale the filter proportionally, you can do this by resampling the coefficients accordingly. (So for your example of 50 Hz cutoff instead of 100 Hz, if you mean you want to scale the entire filter by that factor of 1/2, then you can interpolate the coefficients by 2 using standard interpolation techniques. For example insert 0's and do 2 pt moving averages to get the new coefficients. Jun 27, 2020 at 15:08
• @Jeff yes it is just reverse from my first comment I deleted-- To scale the filter response in half, interpolate x2 (since you are not actually changing the sampling rate, so the response will scale accordingly) Jun 27, 2020 at 15:09
• One numerator coefficient has no frequency effect (it is a constant gain) so that would not change. Jun 27, 2020 at 15:10
• This is very clear to me for the case of an FIR filter, and I believe it would apply to an IIR but I am not 100% confident. If you try this, please confirm back if it did work (or not). It's just a polynomial that is sampled in either case, so I don't see why that wouldn't work, but haven't done this myself for an IIR so giving my hesitation of confidence. Jun 27, 2020 at 15:11