- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电信类课程试验报告
学 院:理学院
系 别:电子信息工程
课程名称:数字信号处理
姓 名:010101001010
学 号:00000
日 期:2018.11.19
第:三次实验
实验名称:线性卷积与圆周卷积的计算
实验目的
(1)通过编程,上机调试程序,进一不增强使用计算机解决问题的能力。
(2)掌握线性卷积与圆周卷积软件实现的方法,并实验两者之间的关系。
已知两个有限长序列:
x[k]=δ[k]+2δ[k-1]+3δ[k-2]+4δ[k-3]+5δ[k-4]
h[k]=δ[k]+2δ[k-1]+δ[k-2]+2δ[k-3]
(1)实验前,预先笔算好这两个序列的线性卷积及下列几种情况的圆周卷积
① x[k]⑤h[k] ②[k]⑥h[k] ③ x[k]⑨h[k] ④ x[k]⑽h[k]
(2)编制一个计算两个序列线性卷积的通用程序,计算x(n)*h(n).
(3)编制一个计算圆周卷积的通用程序,计算上述4种情况下两个序列x[k]与h[k]的圆周卷积。
二、实验内容及要求
已知两个有限长序列:
x[k]=δ[k]+2δ[k-1]+3δ[k-2]+4δ[k-3]+5δ[k-4]
h[k]=δ[k]+2δ[k-1]+δ[k-2]+2δ[k-3]
(1)实验前,预先笔算好这两个序列的线性卷积及下列几种情况的圆周卷积
① x[k]⑤h[k] ②[k]⑥h[k] ③ x[k]⑨h[k] ④ x[k]⑽h[k]
(2)编制一个计算两个序列线性卷积的通用程序,计算x(n)*h(n).
(3)编制一个计算圆周卷积的通用程序,计算上述4种情况下两个序列x[k]与h[k]的圆周卷积。
(4)上机调试并打印或记录实验结果。
注:可在一个程序中用菜单形式实现上述两种卷积的计算。
(5)将实验结果与预先笔算的结果比较,验证其真确性。
三、实验报告要求
(1)列出计算两种卷积的公式,画出程序框图,并列出实验程序清单(包括必要的程序说明)。
(2)记录调试运行情况及所遇问题的解决方法。
(3)给出实验结果,并对结果做出分析。验证圆周卷积与线性卷积两者之间的关系。
(4)线性卷积的运算步骤一般可以分为哪几部分?圆周卷积的运算步骤一般可分为哪几部分?比较两者之间的异同。
(1)采用圆周卷积运算代替线性卷积运算的原因
实验程序
%子程序
function yc=circonv(x1,x2,N)
% 直接法实现圆周卷积
% y=circonv(x1,x2,N)
% y:输出序列
% x1,x2:输入序列
% N:圆周卷积的长度
if length(x1)N
error(N必须大于等于x1的长度);
end
if length(x2)N
error(N必须大于等于x2的长度);
end
%以上语句判断两个序列的长度是否小于N
x1=[x1,zeros(1,N-length(x1))];%填充序列x1(n)使其长度为N序列h(n)的
%长度为N1,序列% x(n)的长度为N2
x2=[x2,zeros(1,N-length(x2))];% 填充序列x2(n)使其长度为
n=[0:1:N-1];
x2=x2(mod(-n,N)+1);% 生成序列x2((-n))N
H=zeros(N,N);
for n=1:1:N
H(n,:)=cirshiftd(x2,n-1,N);%该距阵的k行为x2((k-1-n))N
end
yc=x1*H; %计算圆周卷积
function y=cirshiftd(x,m,N)
% 直接实现序列x的圆周移位
% y=cirshiftd(x,m,N);
% x:输入序列,且它的长度小于N
% m: 移位位数
% N:圆周卷积的长度
% y:输出的移位序列
if length(x)N
error(x的长度必须小于N)
end
x=[x,zeros(1,N-length(x))];
n=[0:1:N-1];
y=x(mod(n-m,N)+1);
%主程序
clear all;
n=[1:5];
m=[1 2 1 2];
%计算线性卷积运算
stem([0:1:length(conv(n,m))-1],conv(n,m));
title(线性卷积);
%计算圆周卷积运算
figure;
subplot(221);
stem([0:1:length(circonv(n,m,5))-1],circonv(n,m,5));
title(5点圆周卷积);
subplot(222);
stem([0:1:length(circonv(n,m,6))-1],circonv(n,m,6));
title(6点圆周卷积);
subplot(223);
stem([0:1:length(cir
原创力文档


文档评论(0)