首页 百科知识 卷积和原理及其应用

卷积和原理及其应用

时间:2023-10-10 百科知识 版权反馈
【摘要】:由于线性时不变系统的输出响应是通过卷积来实现的,因此卷积的性质也是线性时不变系统的性质,这是卷积的一个非常重要的应用。MATLAB提供了用于计算有限长序列之间卷积的函数,它们是conv,conv2和convn,其中conv2用来计算二维卷积。此时若用函数y = conv2求解也可得到同样结果。令对conv函数进行简单扩充,命名为conv_m,它能完成任意位置序列的卷积,函数的MATLAB代码如下所示:

3.2 卷积和原理及其应用

卷积和是求线性时不变系统输出响应(零状态响应)的主要方法。下面我们先一般性地来定义卷积和:

img160

其中,卷积和用“* ”表示,与连续系统的卷积符号一致。以下我们将卷积和简称为卷积。

由于线性时不变系统的输出响应是通过卷积来实现的,因此卷积的性质也是线性时不变系统的性质,这是卷积的一个非常重要的应用。卷积的性质有以下几点:

(1)交换律

img161

上式说明互换x(n)和h(n)的角色不影响输出响应的结果,(3.2)式右半部分可以把x(n)视为系统的单位冲激响应,把h(n)视为系统的输入,如图3-2所示。

img162

图3-2 卷积交换律

(2)结合律

img163

其物理学含义与结合律如图3-3所示。

img164

图3-3 物理学含义及结合律图示

(3)分配律

img165

从物理上解释,该性质意味着如果我们有两个线性时不变系统,它们的冲激响应分别为h1(n)和h2(n),若用同一输入信号x(n)激励它们,则两个响应的和等于x(n)作用于一个冲激响应为

h(n)= h1(n)+h2(n)

的总系统的响应。于是,这个总系统可以看做两个线性时不变系统的并联,如图3-4所示。

img166

图3-4 两个并联的LTI系统可由一个系统代替,该系统为h(n)= h1(n)+h2(n)

我们已经考虑了卷积的几条性质,现在考虑求卷积的方法。以下有几种不同的方法可以用来求卷积,选择哪一种简便取决于待求卷积序列的形式和类型。

1.直接计算法

当被卷积的序列可以用简单闭合形式的数学式表示时,常常可以很容易地通过直接计算(3.1)式中给出的和来求卷积。在直接求卷积时,通常必须计算有限个或无限个和,表3-1中列出的是一些较常见的级数闭合形式的表达式。

表3-1 一些常见级数的闭合表达式

img167

例3.3 求信号

img168

与h(n)= u(n)的卷积。

解用卷积的直接法得

img169

由于k<0时u(k)等于零,k>n时u(n-k)等于零,所以,当n<0时,y(n)=0;当n≥0时,有

img170

因此

img171

2.图解法

除了直接法外,可以用图解法求卷积。使用图解法的步骤如下:

(1)画出x(k)和h(k)这两个序列。

(2)选择一个序列h(k),并将其按时间翻转形成序列h(-k)。

(3)把这个逆时间的序列移动n位(注意:如果n>0,表示向左边移位(时延);反之表示向右移位(超前))。

(4)对所有k,把序列x(k)和h(n-k)相乘并求这些乘积之和,得到的值就是y(k),这个过程要对所有可能的移位n重复进行。

此外,还有矩阵法和变换域法,可参阅参考文献[6] 。

3.卷积的MATLAB求解

MATLAB提供了用于计算有限长序列之间卷积的函数,它们是conv,conv2和convn,其中conv2用来计算二维卷积。

调用格式:

img172

例3.4 已知下面两个序列:

x(n)=(3, 11, 7, 0,-1, 4, 2),-3≤n≤3;

h(n)=(2, 3, 0,-5, 2, 1),-1≤n≤4,  

求卷积y(n)= x(n)* h(n)。

img173

img174

运行结果:

img175

图形显示如图3-5所示。

img176

图3-5 卷积结果图

此时若用函数y = conv2(x, h)求解也可得到同样结果。另外还有一个问题就是题目给出的序列有特定的位置,即n并不是从1开始取值,而是出现了负值,这个问题将会在后面用conv_m函数得到解决。

例3.5 利用randn函数产生随机3阶方阵A和4阶方阵B,对方阵A和B求卷积。

img177

img178

此时若用命令y = conv(A, B)求解,MATLAB会出现错误提示信息:

??? Error using ==>conv

A and B must be vectors.

由于conv函数既不提供也不接受任何定时信息,如果这些序列都有任意位置的话,那么必须明确的是y(n)的一个起始点和一个结束点。已知有限长序列很容易定下这些点。令

img179

是两个有限长序列,根据图解法可得y(n)的起始点和结束点分别是

img180

对conv函数进行简单扩充,命名为conv_m,它能完成任意位置序列的卷积,函数的MATLAB代码如下所示:

img181

例3.6 利用conv_m函数完成例题3.4的卷积。

img182

img183

运行结果:

img184

图形显示如图3-6所示。

img185

图3-6 用conv_m求卷积

结果与例3.4的结果相同。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈