matlab实验二 离散信号的卷积和

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

(数字信号处理)实验报告

实验名称 实验二 离散信号的卷积和 实验时间 年 月 日

专业班级 学 号 姓 名

成 绩 教师评语: 一、 实验目的

1、掌握两个离散信号卷积和的计算方法和编程技术。

2、进一步熟悉用MATLAB 描绘二维图像的方法。

二、 实验原理与计算方法

两个离散序列x(n)与y(n)的卷积和f(n)定义为

∑∞

-∞

=-=

*=m m n y m x n y n x n f )

()()()()(

由于通常信号处理中所碰到的都是有始信号或有限时间信号,因此在实际计算卷积和时,求和是在有限范围内进行的。计算过程中上下限的选取和所得结果的分布区间取决于参与卷积的两个序列,下面将分别进行讨论: 1、两个从n = 0开始的序列)()()(n u n x n x =和)()()(n u n y n y =的卷积和

∑∑=∞-∞=-=--=

n

m m n u m n y m x m n u m n y m u m x n f 0)

()]()([)()()()()( (1)

上式右边因子u(n)表示卷积和的结果也是一个从n = 0开始的序列。

2、从n = n1开始的序列

)

()()(1n n u n x n x -=和从n = n2开始的序列)

()()(2n n u n y n y -=的卷积和,其中n1和n2为任意整数。

∑∑-=∞

-∞

=---=----=

2

1

)

()]()([)()()()()(2

1

2

1

n n n m m n n n u m n y m x n m n u m n y n m u m x n f (2)

上式右边因子u(n-n1-n2)表示卷积和是一个从n = n1+n2开始的序列。 3、从n = n1开始的长度为N1的加窗序列)

()()(1n w n x n x N =和从n = n2开始的长度

为N2的加窗序列

)

()()(2n w n y n y N =的卷积和,其中

⎩⎨

⎧-+≤≤=otherwise 0 1 1 )(1111N n n n n w N

⎩⎨

⎧-+≤≤=o t h e r w i s e 0 1

1 )(2222N n n n n w N

∑∞

-∞

=--=

m N N m n w m n y m w

m x n f )

()()()()(21

(3)

所得卷积和也是一个加窗序列,从n = n1+ n2开始,长度为N1+ N2-1。

MATLAB 提供了一个内部函数conv(x,h)用来计算两个有限长度序列的卷积,该函数得到的卷积结果默认从n=0开始,因此当参与卷积的两个序列的起始位置不是n=0时,则由该函数得到的计算结果将出现错误,此时需要重新定义结果的位置向量。

由以上卷积运算的原理可知,两有限长序列卷积后仍为有限长序列,长度为两序列长度之和减1,结果的起始位置为两序列起始位置之和,截止位置为两序列截止位置之和。据此,可以得到卷积结果的位置向量。 实验内容及结果

(1) 根据(1)式计算两个从n = 0开始的序列)()(n u n x =和)()(n u e

A n y an

-=的卷积和,

其中A=40,a = 0.5。取50个样值点,作出序列)(n x 、)(n y 及卷积和f(n)的图像。

(2) 根据(3)式计算两个有限长序列)

()(1n w n x N =和

)(8)(2n w n

n y N =

的卷积和,其

⎩⎨⎧≤≤=otherwise 0 910- 1 )(1n n w N ⎩⎨

⎧≤≤=o t h e r w i s e 0 24

5 1 )(2n n w N

作出序列x(n)、y(n)及卷积和f(n)的图像。

结果如下:

第一题:首先定义一个样值点为50,从0开始的阶跃信号,具体如下: function x = stepseq(n0,n1,n2) if ((n0 < n1) | (n0 > n2) | (n1 > n2))

error('arguments must satisfy n1 <= n0 <= n2') end

n = [n1:n2];

x = [(n-n0) >= 0];

然后根据题目要的来定义参数和编写代码,具体如下: figure(1) n=0:50;

x=stepseqi(0,0,50) b=40.*exp(-0.5.*n).*x; c=conv(x,b); figure(1); stem(n,x);

title('u(n)序列的图像') figure(2); stem(n,b);

title('y(n)序列的图像') figure(3);

stem(c);

title('卷积和f(n)的图像') 实验结果如下:

第二题:首先定义阶跃函数,具体如下:function [n,x] = stepseq(n0,n1,n2)

if ((n0 < n1) | (n0 > n2) | (n1 > n2))

error('arguments must satisfy n1 <= n0 <= n2')

相关文档
最新文档