matlab信号的卷积仿真实验,实验三信号卷积的matlab实现.doc

41528d3028836879cd698677c3999917.gif实验三信号卷积的matlab实现.doc

实验三信号卷积的MATLAB实现一、实验名称信号卷积的MATLAB实现二、实验目的1增加学生对卷积的认识2了解MATLAB这个软件的一些基础知识3利用MATLAB计算信号卷积4验证卷积的一些性质三、实验原理用MATLAB实现卷积我们先必须从信号下手,先把信号用MATLAB语句描述出来,然后再将这些信号带入到我们写好的求卷积的函数当中来计算卷积。在本章中我们将信号分为连续信号和离散序列两种来实现卷积并验证卷积的一些性质。MATLAB强大的图形处理功能及符号运算功能,为我们实现信号的可视化提供了强有力的工具。在MATLAB中通常有两种方法来表示信号,一种是用向量来表示信号,另一种则是用符号运算的方法来表示信号。用适当的MATLAB语句表示出信号后,我们就可以利用MATLAB的绘图命令绘制出直观的信号波形。连续时间信号,是指自变量的取值范围是连续的,且对于一切自变量的取值,除了有若干不连续点以外,信号都有确定的值与之对应的信号。从严格意义上来讲,MATLAB并不能处理连续信号,在MATLAB中,是用连续信号在等时间间隔点的样值来近似地表示连续信号的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。在MATLAB中连续信号可用向量或符号运算功能来表示。1.向量表示法对于连续时间信号FT,我们可以用两个行向量F和T来表示,其中向量T是行如T=T1PT2的MATLAB命令定义的时间范围向量,T1为信号起始时间,T2为中止时间,P为时间间隔。向量F为连续信号FT在向量T所定义的时间点上的样值。例如对于连续信号FTSINT,我们可以用如下两个向量来表示T101510;FSINT用上述向量对连续信号表示后,就可以用PLOT命令来绘出该信号的时域波形。PLOT命令可将点与点间用直线连接,当点与点间的距离很小时,绘出的图形就成了光滑的曲线。命令如下PLOTT,FTITLE‘FTSINT’XLABEL‘T’AXIS10,10,11,11绘制的信号波形如图31所示,当把时间间隔P取得更小如001时,就可得到SINT较好的近似波形,如图32所示。图31P15的SINT近似波形图32P001的SINT近似波形2.符号运算表示法如果信号可以用一个符号表达式来表示它,则我们可用EZPLOT命令绘制出信号的波形。例如对于连续信号FT,我们可以用符号表达式表示为/2TESYMSTF=SYM‘EXPT/2’FEXPT/2然后用EZPLOT命令绘制其波形EZPLOTF,6,6该命令绘制的信号波形如图33所示图33指数信号波形利用上面两种表达方式我们可以描述出很多种连续信号,常用的信号有阶跃信号,门信号,斜线信号,指数信号等等。接下来我们看看离散时间信号,一般说来,离散时间信号用FK表示,其中变量K为整数,代表离散的采样时间点。FK可表示为FK{F2,F1,F0,F1,F2}↑K=0在MATLAB中,用一个向量F即可表示一个有限长度的序列。但是,这样的向量并没有包含其对应的时间序号信息。所以,要完整地表示一个离散信号需要用两个向量。如序列FK{1,2,1,3,2,4,1}↑K0在MATLAB中应表示为K3,2,1,0,1,2,3或是K=33;F1,2,1,3,2,4,1在用MATLAB表示离散序列并将其可视化时,我们要注意以下几点第一,与连续时间信号不同,离散时间信号无法用符号运算来表示;第二,由于在MATLAB中,矩阵的元素个数是有限的,因此,MATLAB无法表示无限序列;第三,在绘制离散信号波形时,要使用专门绘制离散数据的STEM命令,而不是PLOT命令。如对于上面定义的二向量F和K,可用如下STEM命令绘图STEMK,F,得到对应序列波形图,如图34所示。图34随机序列的波形同样的,单位阶跃序列,正弦序列,离散时间指数序列等的离散信号我们都可以用类似的方法描述并绘制出图形。信号的时域变换包括信号的平移、反折、倒相及信号的尺度变换。我们就分别介绍连续时间信号和离散时间信号的各种时域变换。1、连续信号的时域变换如前所述,MATLAB可以有两种方法来表示连续信号。用这两种方法均可实现连续信号的时域变换,但用符号运算的方法则较为简便。(1).移位对于连续信号FT,若有常数T00,延时信号FTT0是将原信号沿正T轴方向平移时间T0,而FTT0是将原信号沿负T轴方向移动时间T0。我们可用下面的命令来实现连续信号的平移及其结果可视化,其中F是用符号表达式表示的连续时间信号,T是符号变量,SUBS命令则将连续信号中的时间变量T用T-T0替换YSUBSF,T,TT0EZPLOTY(2).反折连续信号的反折,是指将信号以纵坐标为轴反折,即将信号FT中的自变量T换为-T。实现如下YSUBSF,T,TEZPLOTY(3).尺度变换连续信号的尺度变换,是指将信号的横坐标进行展宽或压缩变换,即将信号FT中的自变量T换为AT,当A1时,信号FAT以原点为基准,沿横轴压缩到原来的1/A当0A1时,就展宽至原来的1/A倍。实现如下YSUBSF,T,TEZPLOTY(4).倒相连续信号的倒相是指将信号FT以横轴为对称轴对折得到-FT。实现如下YFEZPLOTY对于以上的命令,可在画图命令之后加入坐标轴的调整的命令即加入AXIS命令,以使画出的图形更清晰、直观。2、离散时间序列的时域变换与连续信号不同的是,在MATLAB中,离散序列的时域变换不能用符号运算来实现,而必须用向量表示的方法,即在MATLAB中离散序列的变换需表示成两个向量的变换。1).离散序列反折离散序列的反折,即是将表示离散序列的两向量以零时刻的取值为基准点,以纵轴为对称轴反折,向量的反折可用MATLABA中的FLIPLR函数来实现,具体实现如下FUNCTIONF,KLSFZF1,K1FFLIPLRF1KFLIPLRK1调用此函数实现向量F1和K1的反折STEMK,F,’FILLED’AXISMINK1,MAXK1,MINF05,MAXF052).离散序列的平移离散序列的平移可看作是将离散序列的时间序号向量平移,而表示对应时间序号点的序列样值不变,当序列向左移动K0个单位时,所以时间序号向量都减小K0个单位,反之则增加K0个单位。实现如下FUNCTIONF,KLSYWFF,KK,K0KKKK0FFFSTEMK,F,’FILLED’AXISMINK1,MAXK1,MINF05,MAXF053).离散序列的倒相离散序列的倒相可看作是将表示序列样值的向量取反,而对应的时间序号向量不变,得到的离散时间序列。实现如下FUNCTIONF,KLSDXFF,KKFFFKKKSTEMK,F,’FILLED’AXISMINK1,MAXK1,MINF05,MAXF05这些时域变换,我们可以把我们在第一节中描述过的信号带入其中,来看看信号时域变换的结果如何。除此以外,我们通过时域变换也可以锻炼我们描述信号的能力,一些复杂信号,往往都是一些简单信号经过一系列的时域变换得到。前面的内容,其实是给以下的学习做的准备,我们在了解如何描述信号以后,接下来就只要把信号带入卷积运算中就可以了。在MATLAB中,CONV函数可以帮助我们快速求出两个离散序列的卷积和。CONV函数的调用格式为F=CONVF1,F2其中F1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值