信号与系统实验报告3 (2)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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],与任何信号的卷积等于此信号本身。