信号与系统实验报告3 (2)

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

信号与系统实验

实验三:信号的卷积

(第三次实验)

【实验目的】

1. 理解卷积的物理意义;

2. 掌握运用计算机进行卷积运算的原理和方法;

3. 熟悉卷积运算函数conv的应用;

【实验内容】

给定如下因果线性时不变系统:

y[n]+0.71y[n-1]-0.46y[n-2]-0.62y[n-3=0.9x[n]-0.45x[n-1]+0.35x[n-2]+0.002x[n-3]

(1)不用impz函数,使用filter命令,求出以上系统的单位冲激响应h[n]的前20个样本;

代码如下:

clear all;

N=[0:19];

num=[0.9 -0.45 0.35 0.002];

den=[1 0.71 -0.46 -0.62];

h=filter(num,den,N);

stem(N,h);

xlabel('ʱ¼äÐòºÅ');

ylabel('Õñ·ù');

title('µ¥Î»³å¼¤ÏìÓ¦');

grid;

图像如下:

(2)得到h[n]后,给定x[n],计算卷积输出y[n];并用滤波器h[n]对输入x[n]滤波,求得y1[n];

代码如下:

clear all;

N=[0:19];

num=[0.9 -0.45 0.35 0.002];

den=[1 0.71 -0.46 -0.62];

h=filter(num,den,N);

x=[1 -2 3 -4 3 2 1];

y=conv(h,x);

n=0:25;

subplot(2,1,1);

stem(n,y);

xlabel('时间序号n');ylabel('振幅');

title('用卷积得到的输出');grid;

x1=[x zeros(1,19)];

y1=filter(h,1,x1);

subplot(2,1,2);

stem(n,y1);

xlabel('时间序号n ');ylabel('振幅');

title('用滤波得到的输出');grid;

图像如下:

(3)y[n]和)y1[n]有差别吗?为什么要对x[n]进行补零得到的x1[n]来作为输入来产生y1[n]?

(4)思考:设计实验,证明下列结论

① 单位冲激信号卷积:)()(*)(t f t f t =δ )()(*)(00t t f t f t t -=-δ

代码如下:

clc;

clear all ;

n=[0:20];

d=(n==0);

f=sin(n);

f1=conv(d,f);

subplot(3,1,1);

f1=f1(1:21);

stem(n,f1);

title('¦Ä[n]*f[n]');

grid;

subplot(3,1,2);

stem(n,f);

title('f[n]');

grid;

subplot(3,1,3);

stem(n,f-f1);

title('¦Ä[n]*f[n]-f[n]');

grid;

图像如下:

② 卷积交换律:)(*)()(*)()(1221t f t f t f t f t f ==

代码如下:

clc;

clear all;

n=0:30;

f1=sin(n);

f2=cos(n);

y1=conv(f1,f2);

y1=y1(1:31);

y2=conv(f2,f1);

y2=y2(1:31); subplot(3,1,1); stem(n,y1);

title('f1*f2'); grid;

subplot(3,1,2); stem(n,y2);

title('f2*f1'); grid;

subplot(3,1,3);

y3=(y1-y2)>10^-14; stem(n,y3);

grid;

图像如下:

③卷积分配律:)(*)()(*)()]()([*)(3121321t f t f t f t f t f t f t f +=+

代码如下:

clc;

clear all ;

n=1:50;

f1=(-1).^n;

f2=cos(n);

f3=sin(n);

y1=conv(f1,(f2+f3));

y1=y1(1:50);

y2=conv(f1,f2)+conv(f1,f3);

y2=y2(1:50);

subplot(3,1,1);

stem(n,y1);

title('f1*[f2+f3]');

grid;

subplot(3,1,2);

stem(n,y2);

title('f1*f2+f1*f3');

grid;

subplot(3,1,3);

y3=(y1-y2)>10^-14;

stem(n,y3);

title('f1*[f2+f3]-f1*f2+f1*f3');

grid;

图像如下:

【实验分析】:

1.y[n]和)y1[n]有差别吗?为什么要对x[n]进行补零得到的x1[n]来作为输入来产生y1[n]?

答:y[n]和)y1[n]是对同一个系统输入的响应,该系统是因果线性时不变系统,所以y[n]和)y1[n]没有差别;由于y[n]和)y1[n]没有差别,滤波器h[n]对x[n]滤波得到的y1[n]和用卷积计算得到的y[n]是同一个信号;

2.卷积分配率程序代码中f1的n时间序号长度n为[1:50],f2的n时间序号长度为[1:50],所

以输出完整信号的长度为99,而程序中输出长度仅50,说明这只是信号的部分波形。

3.单位冲击响应δ[t],与任何信号的卷积等于此信号本身。

相关文档
最新文档