欢迎来到天天文库
浏览记录
ID:37759487
大小:86.50 KB
页数:7页
时间:2019-05-30
《宁大数字信号处理实验五》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数字信号处理实验五数字滤波器结构一.实验目的:1.了解IIR和FIR两种滤波器的设计;2.学会使用Matlab,利用Matlab中的函数对系统函数进行转换;3.学会根据系统函数画出系统的结构图;二.实验器材带有Matlab软件的计算机一台;三.实验内容项目一.使用MATLAB写出FIR滤波器传递函数的因子分解形式(1)根据运行程序8_1后得到的数据,写出系统函数的因式分解形式;(2)自己编写程序,利用Matlab的自带函数tf2sos(),写出系统函数的因式分解形式;(3)画出H(z)的级联型结构;代码如下:1.functionfactors=facto
2、rize(polyn)formatlong;factors=[];thresh=1e-8;proots=roots(polyn);len=length(proots);while(len>1)if(abs(imag(proots(1)))3、hresh&abs(samereal)4、;numfactors=factorize(num);k=num(1)/1;disp('factors'),disp(numfactors);disp('gain'),disp(k);factorsfiltercoefficientvector=[50.428.0213.897.426.0931]factors1.00000000000000-0.700000000000000.333333333333331.000000000000000.380952380952380.238095238095241.000000000000000.8750000005、000000.25000000000000gain50.40000000000000则得到的H(z)为:2.functionp5-1-2formatlongnum=input('filtercoefficientvector=');[numfactors,k]=tf2sos(num,1);disp('factors'),disp(numfactors);disp('gain'),disp(k);filtercoefficientvector=[50.428.0213.897.426.0931]factorsColumns1through41.0000006、00000000-0.700000000000000.333333333333331.000000000000001.000000000000000.875000000000000.250000000000001.000000000000001.000000000000000.380952380952380.238095238095241.00000000000000Columns5through6000000gain50.40000000000000则得到的H(z)为:3.结构图如下:项目二.利用Matlab对IIR滤波器进行因式分解(1)利用程序8_7、2得到的结果,写出系统函数的因式分解的形式;(2)自己编写程序,利用Matlab自带的函数tf2sos(),写出H(Z)的因式分解的形式;(3)画出H(Z)的级联型结构;代码如下:1.functionp5-2-1formatshortnum=input('numeratorcoefficients=');den=input('denominatorcoefficient=');numfactors=factorize(num);denfactors=factorize(den);k=num(1)/den(1);disp('numfactorsfactor8、s'),disp(numfactors);disp('denfactorsfac
3、hresh&abs(samereal)4、;numfactors=factorize(num);k=num(1)/1;disp('factors'),disp(numfactors);disp('gain'),disp(k);factorsfiltercoefficientvector=[50.428.0213.897.426.0931]factors1.00000000000000-0.700000000000000.333333333333331.000000000000000.380952380952380.238095238095241.000000000000000.8750000005、000000.25000000000000gain50.40000000000000则得到的H(z)为:2.functionp5-1-2formatlongnum=input('filtercoefficientvector=');[numfactors,k]=tf2sos(num,1);disp('factors'),disp(numfactors);disp('gain'),disp(k);filtercoefficientvector=[50.428.0213.897.426.0931]factorsColumns1through41.0000006、00000000-0.700000000000000.333333333333331.000000000000001.000000000000000.875000000000000.250000000000001.000000000000001.000000000000000.380952380952380.238095238095241.00000000000000Columns5through6000000gain50.40000000000000则得到的H(z)为:3.结构图如下:项目二.利用Matlab对IIR滤波器进行因式分解(1)利用程序8_7、2得到的结果,写出系统函数的因式分解的形式;(2)自己编写程序,利用Matlab自带的函数tf2sos(),写出H(Z)的因式分解的形式;(3)画出H(Z)的级联型结构;代码如下:1.functionp5-2-1formatshortnum=input('numeratorcoefficients=');den=input('denominatorcoefficient=');numfactors=factorize(num);denfactors=factorize(den);k=num(1)/den(1);disp('numfactorsfactor8、s'),disp(numfactors);disp('denfactorsfac
4、;numfactors=factorize(num);k=num(1)/1;disp('factors'),disp(numfactors);disp('gain'),disp(k);factorsfiltercoefficientvector=[50.428.0213.897.426.0931]factors1.00000000000000-0.700000000000000.333333333333331.000000000000000.380952380952380.238095238095241.000000000000000.875000000
5、000000.25000000000000gain50.40000000000000则得到的H(z)为:2.functionp5-1-2formatlongnum=input('filtercoefficientvector=');[numfactors,k]=tf2sos(num,1);disp('factors'),disp(numfactors);disp('gain'),disp(k);filtercoefficientvector=[50.428.0213.897.426.0931]factorsColumns1through41.000000
6、00000000-0.700000000000000.333333333333331.000000000000001.000000000000000.875000000000000.250000000000001.000000000000001.000000000000000.380952380952380.238095238095241.00000000000000Columns5through6000000gain50.40000000000000则得到的H(z)为:3.结构图如下:项目二.利用Matlab对IIR滤波器进行因式分解(1)利用程序8_
7、2得到的结果,写出系统函数的因式分解的形式;(2)自己编写程序,利用Matlab自带的函数tf2sos(),写出H(Z)的因式分解的形式;(3)画出H(Z)的级联型结构;代码如下:1.functionp5-2-1formatshortnum=input('numeratorcoefficients=');den=input('denominatorcoefficient=');numfactors=factorize(num);denfactors=factorize(den);k=num(1)/den(1);disp('numfactorsfactor
8、s'),disp(numfactors);disp('denfactorsfac
此文档下载收益归作者所有