matlab实验-卷积

matlab实验-卷积

ID:25558583

大小:136.50 KB

页数:24页

时间:2018-11-20

matlab实验-卷积_第1页
matlab实验-卷积_第2页
matlab实验-卷积_第3页
matlab实验-卷积_第4页
matlab实验-卷积_第5页
资源描述:

《matlab实验-卷积》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、实验二用matlab进行信号卷积仿真离散时间信号的卷积我们试举一例来看conv的功能,已知序列f1(k)和f2(k)如下所示:f1(k)=1,(0≤k≤2)f2(k)=k,(0≤k≤3)则调用conv()函数求上述两序列的卷积和的MATLAB命令为:f1=ones(1,3);f2=0:3;f=conv(f1,f2)运行结果为:f=013653由这个例子可以看出,函数conv()不需要给定序列f1(k)和f2(k)非零样值点的时间序号,也不返回序列f(k)=f1(k)*f2(k)的非零样值点的时间序号。因此,要正确地标识出函数conv()的计算结果向量f,我们还必须

2、构造序列f1(k)、f2(k)及f(k)的对应序号向量。我们可以看出f(k)的序号向量k是由序列f1(k)和f2(k)的非零样值点的起始序号及他们的时域宽度决定的在此,我们自己可以构造一个实用一点的函数dconv(),该函数实现的功能为:可以在计算出卷积f(k)的同时,还可以绘出序列f1(k)、f2(k)及f(k)在时域内的波形图。并返回f(k)的非零样值点的对应向量function[f,k]=dconv(f1,f2,k1,k2)%thefunctionofcomputef=f1*f2%f:卷积序列f(k)对应的非零样值向量%k:序列f(k)的对因序号向量%f1:

3、序列f1(k)非零样值向量%f2:序列f2(k)非零样值向量%k1:序列f1(k)的对应序号向量%k2:序列f2(k)的对应序号向量f=conv(f1,f2)%计算序列f1与f2的卷积和fk0=k1(1)+k2(1);%计算序列f非零样值的起点位置k3=length(f1)+length(f2)-2;%计算卷积和f的非零样值的宽度k=k0:k0+k3%确定卷积和f非零样值的序号向量subplot(3,1,1)stem(k1,f1)%在子图1绘序列f1(k)时域波形图title('f1(k)')xlabel('k')ylabel('f1(k)')subplot(3,

4、1,2)stem(k2,f2)%在子图2绘序列f2(k)时波形图title('f2(k)')xlabel('k')ylabel('f2(k)')subplot(3,1,3)stem(k,f);%在子图3绘序列f(k)的波形图title('f1(k)与f2(k)的卷积和f(k)')xlabel('k')ylabel('f(k)')对于下面两个离散序列,我们可以调用dconv()函数来求离散序列的卷积。MATLAB命令如下:f1=[12-1-3-24];k1=1:6;f2=ones(1,5);k2=-2:2;%f1,f2两个信号的向量表示[f,k]=dconv(f1,

5、f2,k1,k2)%子函数调用需要注意的是,调用conv()函数计算序列卷积时,该函数将向量f1和f2以外的序列样值均视为零,因此,当序列f1(k)或f2(k)为无限长序列时调用conv()函数就可能出现误差。如果碰到无限长序列时候,我们必须将其截断才能求带入到conv()函数中。此时,函数将把截断区域外的区间视为零,故conv()计算出的卷积只有部分是真实的C=conv(a,b)x=[1,2,3,4];y=[1,1,1,1,1];z=conv(x,y);N=length(z);stem(0:N-1,z);连续信号的卷积卷积积分运算实际上可用信号的分段求和来实现。

6、用MATLAB实现连续信号f1(t)与f1(t)卷积的过程如下1.将连续信号f1(t)与f2(t)以时间间隔Δt进行取样,得到离散序列f1(kΔt)与f2(kΔt);2.构造与f1(kΔt)和f2(kΔt)相对应的时间向量k1和k2(注意,此时时间序号向量k1和k2的元素不再是整数,而是取样时间间隔Δt的整数倍的时间间隔点);3.调用conv()函数计算卷积积分f(t)的近似向量f(nΔt);4.构造f(nΔt)对应的时间向量k。根据以上步骤我们自己可以比较容易写出求连续信号卷积的函数程序sconv(),该函数实现的功能为:在计算连续信号的卷积的同时绘出信号及卷积

7、结果的波形,程序如下:function[f,k]=sconv(f1,f2,k1,k2,p)%计算连续信号卷积积分f(t)=f1(t)*f2(t)%f:卷积积分f(t)对应的非零样值向量%k:f(t)的对应时间向量%f1:f1(t)的非零样值向量%f2:f2(t)的非零样值向量%k1:f1(t)的对应时间向量%k2:f2(t)的对应时间向量%p:取样时间间隔f=conv(f1,f2);%计算需要序列f1与f2的卷积和ff=f*p;%将f进行采样k0=k1(1)+k2(1);%计算序列f非零样值的起点位置k3=length(f1)+length(f2)-2;%计算卷积

8、和f的非零

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

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

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