- 1、本文档共75页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
信号与系统MATLAB文件及仿真
2.2 离散时间序列卷积
离散时间序列卷积和的定义为:
设序列f1(n)在区间n1~ n2非零,f2(n) 在区间m1~ m2非零,则f1(n)的时域宽度为L1= n2 - n1+1,f2(n)的时域宽度为L2= m2 - m1+1。由卷积和的定义可得,卷积后的序列f(n)的宽度为L= L1 + L2 -1,且。,只在区间n1 +m1~ n1 +m1+ L1 + L2 –2非零。因此对于f1(n)和f2(n)均为有限期间非零的情况,只需计算在区间n1 +m1~ n1 +m1+ L1 + L2 –2的序列值即可。
MATLAB的conv()函数可以快速求出两个离散序列卷积和,conv()函数的调用格式为:
( f=conv(f1,f2)
其中f1为包含序列f1(n)的非零样值点的行向量,f2为包含序列f2(n)的非零样值点的行向量,向量f则返回序列f(n)= f1(n)* f2(n)的所有非零样值点的行向量。但是函数conv()不需要给出序列f1(n)和f2(n)非零样值点的时间序列,也不返回卷积后序列非零样值点的时间序号。为此编制出如下求离散序列卷积和的通用函数dconv()。
function[f,n]=dconv(f1,f2,n1,n2)
%f:卷积和序列f(n)对应的非零样值向量
%n:序列f(n)对应的序号向量
%f1:序列f1(n)的非零样值向量
%f2:序列f2(n)的非零样值向量
%n1:序列f1(n)对应的序号向量
%n2:序列f2(n)对应的序号向量
f=conv(f1,f2);
%计算序列f1与f2的卷积和f
n0=n1(1)+n2(1);
%计算序列f非零样值点的起始位置
n3=length(f1)+length(f2)-2;
%计算卷积和f非零样值的宽度
n=n0:n0+n3;
%确定卷积和f非零样值的序号向量
subplot(2,2,1)
stem(n1,f1,filled)
title(f1(n))
xlabel(n)
ylabel(f1(n))
subplot(2,2,2)
stem(n2,f2,filled)
title(f2(n))
xlabel(n)
ylabel(f2(n))
subplot(2,2,3)
stem(n,f,filled)
title(f1(n)与f2(n)的卷积和f(n))
xlabel(n)
ylabel(f(n))
h=get(gca,position);
h(3)=2.5*h(3);
set(gca,position,h) %将第三个子图的横坐标范围扩为原来的2.5倍
例1:
求:
f1=ones(1,3);
f2=0:3;
f=conv(f1,f2)
结论:
f = 0 1 3 6 5 3
例2: ,
求:
n1=[-1 0 1];
f1=[1 2 1];
n2=-2:2;
f2=ones(1,5);
[f,n]=dconv(f1,f2,n1,n2)
结论:
f = 1 3 4 4 4 3 1
n = -3 -2 -1 0 1 2 3
例3:、
求:
n1=0:3;
f1=ones(1,4);
n2=0:2;
f2=ones(1,3);
[f,n]=dconv(f1,f2,n1,n2)
结论:
f = 1 2 3 3 2 1
n = 0 1 2 3 4 5
2.1 连续时间信号卷积
连续时间信号卷积的定义为:
用MATLAB实现上述卷积积分运算实际上是采用分段求和的方法来实现的。即:
卷积过程如下:(1) 将连续信号f1(t)与f2(t)以时间间隔(进行取样,得到离散序列f1(k()和f2(k();(2) 构造与f1(k()和f2(k()相对应的时间向量k1和k2;(3) 调用conv()函数计算卷积积分f(t)的近似向量f(n();(4) 构造f(n()对应的时间向量k。为此编制出如下求卷积积分的通用函数sconv()。
function[f,n]=sconv(f1,f2,n1,n2,p)
% 计算连续信号卷积积分f(t)=f1(t)*f2(t)
% f:卷积积分f(t)对应的非零样值向量
% n:f(t)的对应时间向量
% f1:f1(t)的非零样值向量
% f2:f2(t)的非零样值向量
% n1:f1(t)对应的时间向量
% n2:f2(t)对应的时间向量
% p: 取样时间间隔
f=conv(f1,f2);
%计算序列f1与f2的卷积和f
f=f*p;
n0=n1(1)+n2(1);
文档评论(0)