资源描述:
《数字信号处理实验数字滤波器网格结构变换》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验4数字滤波器网络结构转换实验目的:用MATLAB编程,熟悉数字滤波器各种结构类型及转换。实验内容:1、已知滤波器系统函数试求其级联结构,要求写出级联结构的系统函数及相应的结构流图。若输入序列,试求该级联结构的输出。2、已知滤波器系统函数试求其并联结构,要求写出并联结构的系统函数及相应的结构流图(两种方法实现)。实验要求:打印出程序、运行结果,并分析实验结果。附录:程序及实验结果第一题程序:clearallb=[1-1.60.65-0.05];a=[1-7.312.1-3];x=[010000000];[sos,G]=tf2sos(b,a)[r,p,k
2、]=residuez(b,a)hc=G*sosfilt(sos,x)结果:sos=1.0000-0.100001.0000-5.000001.0000-1.50000.50001.0000-2.30000.6000G=1r=1.2511-0.27940.0117p=5.00002.00000.3000k=0.0167hc=1.0e+004*00.00010.00060.00300.01540.07770.39011.95309.7704第二题程序:1,源代码dir2par.mfunction[C,B,A]=dir2par(b,a)M=length(b);
3、N=length(a);[r1,p1,C]=residuez(b,a);p=cplxpair(p1,10000000*eps);I=cplxcomp(p1,p);r=r1(I);K=floor(N/2);B=zeros(K,2);A=zeros(K,3);ifK*2==N;fori=1:2:N-2Brow=r(i:1:i+1,:);Arow=p(i:1:i+1,:);[Brow,Arow]=residuez(Brow,Arow,[]);B(fix((i+1)/2),:)=real(Brow);A(fix((i+1)/2),:)=real(Arow);en
4、d[Brow,Arow]=residuez(r(N-1),p(N-1),[]);B(K,:)=[real(Brow)0];A(K,:)=[real(Arow)0];elsefori=1:2:N-1Brow=r(i:1:i+1,:);Arow=p(i:1:i+1,:);[Brow,Arow]=residuez(Brow,Arow,[]);B(fix((i+1)/2),:)=real(Brow);A(fix((i+1)/2),:)=real(Arow);endEnd2,源代码cplxcomp.mfunctionI=cplxcomp(p1,p2)I=[];fo
5、rj=1:1:length(p2)fori=1:1:length(p1)if(abs(p1(i)-p2(j))<0.0001)I=[I,i];endendendI=I';3,源代码parfilt.mfunctiony=parfilt(C,B,A,x)[K,L]=size(B);N=length(x);w=zeros(K+1,N);w(1,:)=filter(C,1,x);fori=1:1:Kw(i+1,:)=filter(B(i,:),A(i,:),x);endy=sum(w);4,源代码par2dir.mfunction[b,a]=par2dir(C,
6、B,A)[K,L]=size(A);R=[];P=[];fori=1:1:K[r,p,k]=residuez(B(i,:),A(i,:));R=[R;r];P=[P;p];end[b,a]=residuez(R,P,C);b=b(:)';a=a(:)';5,源代码Untitled2.mclearall;closeall;clc;b=[-480];%分子系数a=[168];%分母系数[C,B,A]=dir2par(b,a)%输出并联结构系数结果:C=0B=-48A=168