LTPDA_FQ2RI2 Convert frequency/Q pole/zero representation into real and imaginary conjugate pairs. Returns [ri conj(ri)] ri= ltpda_fq2ri2(f0, Q) M Hewitson 26-01-07 $Id: ltpda_fq2ri2.html,v 1.14 2008/03/31 10:27:31 hewitson Exp $
0001 function ri= ltpda_fq2ri2(f0, Q) 0002 0003 % LTPDA_FQ2RI2 Convert frequency/Q pole/zero representation into real 0004 % and imaginary conjugate pairs. Returns [ri conj(ri)] 0005 % 0006 % ri= ltpda_fq2ri2(f0, Q) 0007 % 0008 % M Hewitson 26-01-07 0009 % 0010 % 0011 % $Id: ltpda_fq2ri2.html,v 1.14 2008/03/31 10:27:31 hewitson Exp $ 0012 % 0013 0014 if(nargin==0) 0015 disp('usage: ri = fq2ri2(f0, Q)') 0016 return 0017 elseif(nargin==1) 0018 ri = (1/(2*pi*f0)); 0019 elseif(nargin==2) 0020 if Q <= 0.5 0021 disp('working on Q < 0.5') %ri =1/(2*pi*f0); 0022 else 0023 w0 = 2*pi*f0; 0024 G = 1/(w0*w0); 0025 re = -w0/(2*Q); 0026 im = w0*sqrt(4*Q*Q-1)/(2*Q); 0027 tri = complex(re,im); 0028 ri = G.*[tri conj(tri)]'; 0029 end 0030 end 0031 0032 % END