大连理工大学数字信号处理实验一实验报告.docVIP

大连理工大学数字信号处理实验一实验报告.doc

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

大连理工大学实验报告 学院(系): 信息与通信工程学院专业:电子信息工程 班级: 姓 名: 学号: 组: 实验时间: 实验室: 实验台: 指导教师签字: 成绩: 实验一 线性卷积和圆周卷积 实验目的和要求 (与预习报告相同,省略) 实验原理和内容 (与预习报告相同,省略) 三、实验程序和结果 给出序列x=[3,11,7,0,-1,1,2],h=[2,3,0,-5,2,1],用两种方法求两者的线性卷积y,对比结果。 1.1、直接调用matlab内部函数conv函数,程序为: x=[3,11,7,0,-1,1,2]; h=[2,3,0,-5,2,1]; N=length(x); %求x序列长度 M=length(h); %求h序列长度 L=N+M-1; %y序列的长度 y=conv(x,h); %调用conv函数 nx=0:N-1;nh=0:M-1;ny=0:L-1; %各序列向量显示范围 subplot(311);stem(nx,x,*r); %画出序列波形 xlabel(n);ylabel(x(n));grid on; subplot(312);stem(nh,h,*r); xlabel(n);ylabel(h(n));grid on; subplot(313);stem(ny,y,*r); xlabel(n);ylabel(y(n));grid on; y=conv(x,h); 程序运行结果为: y = 6 31 47 6 -51 -11 32 18 -7 -9 5 2 1.2、根据线性卷积步骤计算,程序为: x=[3,11,7,0,-1,1,2]; h=[2,3,0,-5,2,1]; N=length(x); M=length(h); L=N+M-1; ny=0:L-1; y=zeros(1,L); %先将y序列置0 for n=1:1:L %外重循环,依次得到y(n) for m=1:1:N %內部循环,叠加求和 k=n-m+1; %线性移位得到对应h序号 if ((k=1)(k=M)) %保证k的范围 y(n)=y(n)+x(m)*h(k); %叠加求和求得y(n) end end end stem(ny,y,*r); xlabel(n);ylabel(y(n)); grid on; 程序结果为: y = 6 31 47 6 -51 -11 32 18 -7 -9 5 2 2、将函数conv扩展成为函数conv_m,可以对任意基底的序列求卷积。 function [y,ny]=conv_m(x,nx,h,nh) ny1=nx(1)+nh(1); %输出序列的起始位置 ny2=nx(length(x))+nh(length(h)); %输出序列的截止位置 ny=[ny1:ny2]; y=conv(x,h) end 创建函数circonv,实现序列的圆周卷积,格式: function y=circonv(x1,x2,N) 3.1、采用圆周卷积步骤法 function y=circonv(x1,x2,N) if length(x1)N %x1的长度必须小于N error(N must be bigger than the length); end if length(x2)N %x2的长度必须小于N error(N must be bigger than the length); end x1=[x1,zeros(1,N-length(x1))]; %将x1补零补到长度N x2=[x2,zeros(1,N-length(x2))]; %将x2补零补到长度N y=zeros(1,N); %先将y序列置0 for n=1:1:N %外重循环,依次得到y(n) for m=1:1:N %内重循环,叠加求和 k=mod(n-m,N)+1; %圆周移位得到对应h序号 y(n)=y(n)+x1(m)*x2(k); %叠加求和得到y(n) end end 3.2采用FFT变换法 function y=circonv2(x1,x2,N) i

文档评论(0)

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

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

1亿VIP精品文档

相关文档