实验七 数字滤波器结构.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验七 数字滤波器结构

实验七 滤波器设计 实验目的: 掌握滤波器结构类型转换的Matlab实现方法;掌握用滤波器直接形式、级联形式、并联形式、格型形式以及频率采样形式的Matlab实现。了解和学习组合滤波的结构类型特性;进一步理解和巩固理论知识,提高分析和解决实际问题的能力。 实验原理: 1.滤波器数学模型之间的转换 2.滤波器结构类型之间的转换 三.实验内容: 程序用到的自定义子函数程序: 1.IIR系统级联转直接型子函数: function [b,a]=cas2dir(b0,B,A) [K,L]=size(B); b=[1]; a=[1]; for i=1:1:K b=conv(b,B(i,:)); a=conv(a,A(i,:)); end b=b*b0; 2.IIR系统直接转级联型子函数: function [b0,B,A]=dir2cas(b,a); b0=b(1);b=b/b0; a0=a(1);a=a/a0; b0=b0/a0; M=length(b);N=length(a); if NM b=[b zeros(1,N-M)]; elseif MN a=[a zeros(1,M-N)];N=M; else NM=0; end K=floor(N/2);B=zeros(K,3);A=zeros(K,3); if K*2==N; b=[b 0]; a=[a 0]; end broots=cplxpair(roots(b)); aroots=cplxpair(roots(a)); for i=1:2:2*K Brow=broots(i:1:i+1,:); Brow =real(poly(Brow)); B(fix((i+1)/2),:)=Brow; Arow=aroots(i:1:i+1,:); Arow =real(poly(Arow)); A(fix((i+1)/2),:)=Arow; end 3.IIR系统直接转并联型子函数: function [C,B,A]=dir2par(b,a) M=length(b); N=length(a); [r1,p1,C]=residuez(b,a); p=cplxpair(p1eps); I=cplxcomp(p1,p); r=r1(I); K=floor(N/2);B=zeros(K,2);A=zeros(K,3); if K*2==N for i=1:2:N-2 Brow=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); end [Brow,Arow]=residuez(r(N-1),p(N-1),[]); B(K,:)=[real(Brow) 0];A(K,:)=[real(Arow) 0] else for i=1:2:N-1 Brow=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); end end 4.dir2par函数中用到的cplxcomp子函数: function I=cplxcomp(p1,p2) I=[]; for j=1:1:length(p2) for i=1:1:length(p1) if(abs(p1(i)-p2(j))0.0001) I=[I,i]; end end end I=I; 5.IIR系统直接型转格型子函数: function [K,C]=dir2ladr(b,a) a1=a(1);a=a/a1;b=b/a1; M=length(b);N=length(a); if MN error(***length(b)=length(a)***) end b=[b,zeros(1,N-M)];K=zeros(1,N-1); A=zeros(N-1,N-1);C=b; for m=N-1:-1:1 A(m,1:m)=-a(2:m+1)*C(m+1); K(

文档评论(0)

zijingling + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档