Cannot deduce a transfer function! Help!

1 view (last 30 days)
Alex on 19 Nov 2011
Hey everyone, I've tried creating a bandpass filter and finding it's transfer function but have had no luck. As you can see below, I tried making the filter and the line for 'd' runs just fine, but when I try to create the IIR filter 'HdIIR' from object d, it doesn't work. It has worked for other objects like 'd' I have created so I do not understand why this one doesn't work (albeit that my other objects used different parameters, but this should still be valid).
Once I get the filter to work, I would like to find the numerator and the denominator of the transfer function (S-domain preferable) of the filter but cannot find a method that will do so given either 'd' or 'HdIIR'.
Please help if you can!
clear all
close all
f_p1=40000; %Pass Frequency in Hz
f_p2=50000; %Stop Frequency in Hz
r_s=25; %Stopband Attenuation in dB
r_p=3; %Passband Ripple
d = fdesign.bandpass('N,F3dB1,F3dB2,Ast1,Ap,Ast2',n,f_p1,f_p2,r_s,r_p,r_s,150e3);
HdIIR = design(d,'butter');
??? Error using ==> fdesign.abstracttype.superdesign at 60
butter is an invalid design method.
Error in ==> at 11
varargout{1} = superdesign(this, varargin{:});
Error in ==> Demo at 13
HdIIR = design(d,'butter');
  1 Comment
Alex on 21 Nov 2011
Does anyone have any insight as to why this filter will not compile?

Sign in to comment.

Answers (2)

Kaustubha Govind
Kaustubha Govind on 21 Nov 2011
It appears that 'butter' is not a valid design method for the band-pass filter object.
Using designmethods on your filter design object, I got:
>> designmethods(d)
Design Methods for class fdesign.bandpass (N,F3dB1,F3dB2,Ast1,Ap,Ast2):
So 'ellip' seems to be the only available design method for your band-pass filter.
Alex on 22 Nov 2011
Hey Wayne, so what domain do I assume these coefficients correlate to? The S or Z domain?
Also, is there any convention on what the denominator coefficients correspond to? Example, is the numerator (A): s^5 + 2.9945s^4 + 8.0928s^3 + ... ?

Sign in to comment.

Naz on 21 Nov 2011
I always use
it's pretty straight forward and you can see the result right away.
  1 Comment
Naz on 21 Nov 2011
And then you can export the coefficients into the workspace.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!