您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 蒋朝晖数字信号处理实验
《数字信号处理》实验指导书编写蒋朝辉中南大学信息科学与工程学院2014年4月1目录实验一MATLAB仿真软件的基本操作命令和使用方法................................................................2实验二常见离散信号的MATLAB产生和图形显示.......................................................................8实验三离散时间系统的时域分析...............................................................................................12实验四离散时间信号的DTFT......................................................................................................162实验一MATLAB仿真软件的基本操作命令和使用方法实验内容1、帮助命令使用help命令,查找sqrt(开方)函数的使用方法;2、MATLAB命令窗口(1)在MATLAB命令窗口直接输入命令行计算31)5.0sin(21y的值;(2)求多项式p(x)=x3+2x+4的根;33、矩阵运算(1)矩阵的乘法已知A=[12;34],B=[55;78],求A^2*B(2)矩阵的行列式已知A=[123;456;789],求A(3)矩阵的转置及共轭转置已知A=[123;456;789],求A'4已知B=[5+i,2-i,1;6*i,4,9-i],求B.',B'(4)特征值、特征向量、特征多项式已知A=[1.2350.9;51.756;3901;1234],求矩阵A的特征值、特征向量、特征多项式;(5)使用冒号选出指定元素5已知:A=[123;456;789];求A中第3列前2个元素;A中所有列第2,3行的元素;4、Matlab基本编程方法(1)编写命令文件:计算1+2+…+n2000时的最大n值;(2)编写函数文件:分别用for和while循环结构编写程序,求2的0到15次幂的和。65、MATLAB基本绘图命令(1)绘制余弦曲线y=cos(t),t∈[0,2π]7(2)在同一坐标系中绘制余弦曲线y=cos(t-0.25)和正弦曲线y=sin(t-0.5),t∈[0,2π](3)绘制[0,4π]区间上的x1=10sint曲线,并要求:(a)线形为点划线、颜色为红色、数据点标记为加号;(b)坐标轴控制:显示范围、刻度线、比例、网络线(c)标注控制:坐标轴名称、标题、相应文本;8clear;t=0:pi/10:4*pi;y=10*sin(t);plot(t,y);plot(t,y,'-+r');gridxlabel('X'),ylabel('Y');title('Plot:y=10*sin(t)');text(14,10,'完整图形');实验二常见离散信号的MATLAB产生和图形显示实验内容与步骤1.写出延迟了np个单位的单位脉冲函数impseq,单位阶跃函数stepseq,n=ns:nffunction[x,n]=impseq[np,ns,nf];function[x,n]=stepseq[np,ns,nf];92.产生一个单位样本序列x1(n),起点为ns=-10,终点为nf=20,在n0=0时有一单位脉冲并显示它。修改程序,以产生带有延时11个样本的延迟单位样本序列x2(n)=x1(n-11),并显示它。clear;ns=-10;nf=20;n0=0;[x1,n1]=impseq(n0,ns,nf);subplot(1,2,1),stem(n1,x1);title('n0=0时的单位脉冲')np=11;[x2,n2]=impseq(np,ns,nf);subplot(1,2,2),stem(n2,x2);title('延迟11个样本后')103.产生一个序列X(n)=n(u(n)-u(n-8)),0=n=20,并显示。clearn=[0:20];x=n.*(stepseq(0,0,20)-stepseq(8,0,20));stem(n,x);4.编写序列相加,相乘,以及序列翻转、移位的函数文件function[y,ny]=seqadd(x1,n1,x2,n2);function[y,ny]=seqmult(x1,n1,x2,n2);11function[y,ny]=seqfold(x,nx);function[y,ny]=seqshift(x,nx,k);5.已知序列x=[0,1,2,3,4,3,2,1,0],n=-5:3,产生一个序列y(n)=2*x(n+3)+x(-n);并显示它。x=[0,1,2,3,4,3,2,1,0];n=[-5:3];y=2*seqshift(x,n,3)+seqfold(x,n);stem(x,y)stem(n,y)126.复杂信号的产生:复杂的信号可以通过在简单信号上执行基本的运算来产生试产生一个振幅调制信号,并显示出来。)1.02cos())01.02cos(4.01()2cos())2cos(1()(nnnfnfmnyHLn=0:100n=[0:100];y=(1+0.4*cos(2*pi*0.01*n)).*cos(2*pi*0.1*n);stem(n,y)实验三离散时间系统的时域分析实验内容与步骤1.假定一因果系统为y(n)-0.4y(n-1)+0.75y(n-2)=2.2403x(n)+2.4908x(n-1)+2.2403x(n-2)用MATLAB程序仿真该系统,输入三个不同的输入序列:13)1.02cos()(1nnx,)4.02cos()(2nnx,)(3)(221nxnxx计算并并显示相应的输出)(1ny,)(2ny和)(ny。n=0:40;a=2;b=-3;x1=cos(2*pi*0.1*n);x2=cos(2*pi*0.4*n);x=a*x1+b*x2;num=[2.24032.49082.2403];den=[1-0.40.75];y1=filter(num,den,x1);%计算出y1(n)y2=filter(num,den,x2);%计算出y2(n)y=filter(num,den,x);%计算出y(n)stem(y1);n=0:40;a=2;b=-3;x1=cos(2*pi*0.1*n);x2=cos(2*pi*0.4*n);x=a*x1+b*x2;num=[2.24032.49082.2403];den=[1-0.40.75];y1=filter(num,den,x1);%计算出y1(n)y2=filter(num,den,x2);%计算出y2(n)y=filter(num,den,x);%计算出y(n)stem(y1);14stem(y2);stem(y);2.用MATLAB程序仿真步骤1给出的系统,对两个不同的输入序列x(n)和x(n-10),计算并显示相应的输出序列y3(n)和y4(n)。n=0:40;x1=2*n;num=[2.2403,2.4908,2.2403];den=[1,-0.4,0.75];ic=[00];%设置零初始条件y3=filter(num,den,x1,ic);%计算输入为x1(n)时的输出y1(n)[y,ny]=seqshift(x1,n,10)y4=filter(num,den,y,ic);subplot(2,1,1)stem(n,y3);ylabel('振幅');title('y3(n)');subplot(2,1,2)stem(ny,y4);ylabel('振幅');title('y4(n)');153.用MATLAB程序仿真计算下列两个有限长序列的卷积和并显示图形。)2(2)1(3)()(1nnnnx)3()()(2nununxfunction[y,ny]=convwthn(x,nx,h,nh)nys=nx(1)+nh(1);nyf=nx(end)+nh(end);y=conv(x,h);ny=[nys:nyf];n=0:20;x1=impseq(0,0,20)+3*impseq(1,0,20)+2*impseq(2,0,20)x2=stepseq(0,0,20)-stepseq(3,0,20)subplot(3,1,1)stem(n,x1);subplot(3,1,2)stem(n,x2);[y,ny]=convwthn(x1,n,x2,n);subplot(3,1,3)stem(ny,y);16实验四离散时间信号的DTFT一、实验目的1.运用MATLAB计算离散时间系统的频率响应。2.运用MATLAB验证离散时间傅立叶变换的性质。二、实验原理(一)、计算离散时间系统的DTFT已知一个离散时间系统NkkNkkknxbknya00)()(,可以用MATLAB函数frequz非常方便地在给定的L个离散频率点l处进行计算。由于)(jeH是ω的连续函数,需要尽可能大地选取L的值(因为严格说,在MATLAB中不使用symbolic工具箱是不能分析模拟信号的,但是当采样时间间隔充分小的时候,可产生平滑的图形),以使得命令plot产生的图形和真实离散时间傅立叶变换的图形尽可能一致。在MATLAB中,freqz计算出序列{Mbbb,,,10}和{Naaa,,,10}的L点离散傅立叶变换,然后对其离散傅立叶变换值相除得到LleHlj,,2,1),(。为了更加方便快速地运算,应将L的值选为2的幂,如256或者512。例3.1运用MATLAB画出以下系统的频率响应。y(n)-0.6y(n-1)=2x(n)+x(n-1)程序:clf;w=-4*pi:8*pi/511:4*pi;num=[21];den=[1-0.6];h=freqz(num,den,w);subplot(2,1,1)plot(w/pi,real(h));gridtitle(‘H(e^{j\omega}的实部’))xlabel(‘\omega/\pi’);ylabel(‘振幅’);subplot(2,1,1)plot(w/pi,imag(h));gridtitle(‘H(e^{j\omega}的虚部’))xlabel(‘\omega/\pi’);ylabel(‘振幅’);(二)、离散时间傅立叶变换DTFT的性质。1.时移与频移17设)]([)(nxFTeXj,那么)()]([00jnjeXennxFT(2.2.6))()]([)(00jnjeXnxeFT(2.2.7)2.时域卷积定理如果)()()(nhnxny,那么)()()(jjjeHeXeY三、实验内容与步骤1.已知因果线性时不变离散时间系统y(n)-0.4y(n-1)+0.75y(n-2)=2.2403x(n)+2.4908x(n-1)+2.2403x(n-2)运用MATLAB画出该系统的频率响应。clf;w=-4*pi:8*pi/511:4*pi;num=[2.24032.49082.2403];den=[1-0.40.75];h=freqz(num,den,w);subplot(2,1,1)plot(w/pi,real(h));gridtitle('H(e^{j\omega}的实部)');xlabel('\omega/\pi');ylabel('振幅');subplot(2,1,2)plot(w/pi,imag(h));gridtitle('H(e^{j\omega}的虚部)');xlabel('\omega/\pi');ylabel('振幅');运行结果:182.运行下面程序并显
本文标题:蒋朝晖数字信号处理实验
链接地址:https://www.777doc.com/doc-2023711 .html