离散卷积的算法分析及matlab实现(程序实例)

离散卷积的算法分析及matlab实现(程序实例)

ID:35486893

大小:59.83 KB

页数:4页

时间:2019-03-25

离散卷积的算法分析及matlab实现(程序实例)_第1页
离散卷积的算法分析及matlab实现(程序实例)_第2页
离散卷积的算法分析及matlab实现(程序实例)_第3页
离散卷积的算法分析及matlab实现(程序实例)_第4页
资源描述:

《离散卷积的算法分析及matlab实现(程序实例)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、离散卷积的算法分析及MATLAB实现(实例程序)摘张登奇,陈佳•离散卷积的算法分析及MATLAB实现[J].湖南理工学院学报(自然科学版).2013(02)摘要:离散卷积是信号处理的慕木运算,快速卷积和分段卷积是计算离散卷积的重要算法•文章以离散线性卷枳的概念为基础,介绍了计算卷积的常用方法和运算流程,列举了MATLAB实现的程序.这些程序能动态演示卷积运算的全部过程,既可帮助理解卷积运算的原理流程,也可作为教学讲解的演示工具.1、离散卷积常规算法的动态演示程序clcar;clc;closcall;formatcom

2、pact;xn=[5,4,3,2,l],M=length(xn),%输入任意序列并计算长度Mhn=[l,l,l],N=length(hn),%输入任意脉冲响应并计算t度Nm=[-(M-l):M+N-2],%设置代换变量的范围以便x(m)翻转和移位xm=[zeros(1,M-l),xn,zeros(1,N-1)],%补零以便与m对应绘图subplot(4,1,1);stem(m,xm,'r.,)»%%绘输入序列x(m)ylabelCx(m)'),grid,title(*(a)输入序列x(m)'),%%加标签网格和标题h

3、m=[zeros(l,M-l),hn,zeros(l,M-l)],%补零以便与m对应绘图subplot(4,l,2);stem(m,hm,'r.*),%%绘脉冲响应ylabel(,h(m),),grid,title(,(b)脉冲响应h(m)1),%%加标签网格和标题yn=zeros(1,2*M+N・2);%卷积输出初始化forn=0:M+N-2,%逐个计算卷积输出ifn==0;xmfy=[fliplr(xn),zeros(1,M+N-2几%实现翻转elsefork=M:-l:l;xmfy(k+n)=xmfy(k+n-

4、l);end;xmfy(n)=0;xmfy,%实现翻转后移位并显示endsubplot(4,1,3);stem(m,xmfy,*b.*),%%绘制翻转移位序歹ijylabelCxCn-m)*),grid,title('(c)翻转移位x(n-m)'),%%加标签网格和标题yn(M+n)=sum(xmfy.*hm);%计算第n位输出并与m位置对应subplot(4,1,4);stem(m,yn,'r.'),%%绘制卷积输出序列axis([min(m),max(m),min([0,conv(xn,hn)]),max([0,

5、conv(xn,hn)])]),%%控制绘图坐标ylabelCyCn)*),grid,title('(d)卷积输出y(n)'),%%加标签网格和标题pause,%每算完一位卷积输出后暂停,按任意键继续endyn,%显示线性卷积结果2、循环卷积运算过程的动态演示程序clc;closeall;clear;formatcompact;xn=[5,4,3,2,l],M=length(xn),%输入任意序列并计算长度Mhn=[l,l,l],N=length(hn),%输入任意脉冲响应并计算长度NL=&讦L

6、=max(M,N),end,%输入循环卷积的长度m=0:L-1,%设置代换变量并与两圆周上的编号对应xm=[xn,zeros(1,L・M)],%按圆周编号方向排列不足补零subplot(4,1J);stem(m,xm,'r.*),%%绘输入序列x(m)ylabel('x(m)'),grid,title(,(a)输入序列x(m)'),%%加标签网格和标题hm=[hn,zeros(1,L-N)],%按圆周编号方向排列不足补零subplot(4,1,2);stem(m,hm,'r.'),%%纟会脉冲响应h(m)ylabel

7、(,h(m),),grid,title(,(b)脉冲响应h(m)1),%%加标签网格和标题ycn=zcros(1,L);%循环卷积输Jl'i初始化forn=0:L-l%逐个计算循环卷积xn_m=xm(mod(n-m,L)4-l),%按I员]周编号方向反排后正转n位subplot(4,l,3);stem(m,xn_m,b*),%%绘反排正转序列ylabel('x((n-m))L,),grid,title(,(c)反排正转x((n-m))L*),%%加标签网格和标题ycn(n+1)=sum(xn_m.*hm);%计算第n

8、位循环卷积输出subplot(4,l,4);stem(m,ycn;r.'),%%纟会循环卷积输出序歹!]axis([min(m),max(m),min([0,conv(xn,hn)J),max([0,conv(xn,hn)])])%%控制绘图坐标ylabel(,yc(n),),grid,title(,(d)循环卷积yc(n)1),%%加标签网格

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。