实验二连续时间信号的卷积

更新时间:2023-12-08 22:12:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1、计算信号f1(t)?e?atu(t)(a=1)和f2(t)?sintu(t)的卷积f(t), f1(t)、f2(t)的时间范围取为0~10,步长值取为0.1。绘制三个信号的波形。

close all; clear; t=0:0.1:10; a=1; dt=0.1;

t0=t+t;%计算卷积结果的非零样值的起点位置 u=stepfun(t,0);%阶跃函数 f1=exp(-a*t).*u;?(t) f2=sin(t).*u;ò(t)

f=dt*conv(f1,f2);?(t)*f2(t) %计算卷积结果的非零样值的宽度 k=length(f); %数组维数

%确定卷积结果的非零样值的时间向量 tf=t0:dt:t0+(k-1)*dt; %绘制函数f1图像 subplot(3,1,1); plot(t,f1);

title('f1');%图像标题 xlabel('t');%横坐标标签 ylabel('f1'); %绘制函数f2图像 subplot(3,1,2); plot(t,f2);

title('f2');%图像标题 xlabel('t');%横坐标标签 ylabel('f1');

%绘制函数f1*f2图像 subplot(3,1,3); plot(tf,f);

title('f1*f2');%图像标题 xlabel('t');%横坐标标签 ylabel('f1*f2');

f110.500f1f1f110.51020132435t4f265tf27687981091010-10f1f1101-12013245t43f1*f265tf1*f2768798109101f1*f20f1*f2102-1402648610t81210t141216141816201820-10

2、已知两连续时间信号如下图所示,设时间变化步长dt分别取为0.5、0.1、0.01,绘制信号f1(t)、f2(t)及卷积结果f(t)的波形;当dt取多少时,程序的计算结果就是连续时间卷积的较好近似?

f1(t) f2(t) 1 0 2 t close all;%关闭已已打开的窗口 clear;%清除存在内存里的数据 %设置步长值 dt1=0.5; dt2=0.1; dt3=0.01;

%步长值不同的时间向量 t1=-3:dt1:3; t2=-3:dt2:3; t3=-3:dt3:3;

1 -1 1 t %卷积结果的非零样值的起点位置 t01=t1+t1; t02=t2+t2; t03=t3+t3; %dt1=0.5 %阶跃函数

u0=stepfun(t1,0)-stepfun(t1,2); u1=stepfun(t1,-1)-stepfun(t1,1); ?(t) f2(t) f1=(1/2)*t1.*u0; f2=(1/2)*(t1+1).*u1; %卷积

f=dt1*conv(f1,f2);

k1=length(f); %计算卷积结果的非零样值的宽度

tf=t01:dt1:t01+(k1-1)*dt1; %确定卷积结果的非零样值的时间向量 figure;%产生图像窗口 ? dt=0.5 subplot(3,1,1); plot(t1,f1);

title('f1');%图像标题 xlabel('t1');%横坐标标签 ylabel('f1');

axis([min(t1)-0.5,max(t1)+0.5,min(f1)-0.5,max(f1)+0.5]);%利用图像本身的最值确定步长值 subplot(3,1,2); ò dt=0.5 plot(t1,f2);

axis([min(t1)-0.5,max(t1)+0.5,min(f1)-0.5,max(f1)+0.5]); title('f2');%图像标题 xlabel('t1');%横坐标标签 ylabel('f2');

%f=f1*f2 dt=0.5 subplot(3,1,3); plot(tf,f);

axis([min(tf)-0.5,max(tf)+0.5,min(f)-0.5,max(f)+0.5]); title('f');%图像标题

xlabel('t1');%横坐标标签 ylabel('f');

f110.50-0.5f1-3-2-10t1f212310.50-0.5f2-3-2-10t1f1230.5f0-0.5-6-4-20t1246

%dt2=0.1 %阶跃函数

u0=stepfun(t2,0)-stepfun(t2,2); u1=stepfun(t2,-1)-stepfun(t2,1); f1=(1/2)*t2.*u0; f2=(1/2)*(t2+1).*u1; f=dt2*conv(f1,f2);

k1=length(f); %计算卷积结果的非零样值的宽度

tf=t02:dt2:t02+(k1-1)*dt2; %确定卷积结果的非零样值的时间向量 figure;

subplot(3,1,1); plot(t2,f1);

axis([min(t2)-0.5,max(t2)+0.5,min(f1)-0.5,max(f1)+0.5]); title('f1');%图像标题 xlabel('t2');%横坐标标签 ylabel('f1'); subplot(3,1,2); plot(t2,f2);

axis([min(t2)-0.5,max(t2)+0.5,min(f1)-0.5,max(f1)+0.5]); title('f2');%图像标题 xlabel('t2');%横坐标标签 ylabel('f2'); subplot(3,1,3); plot(tf,f);

axis([min(tf)-0.5,max(tf)+0.5,min(f)-0.5,max(f)+0.5]); title('f');%图像标题

xlabel('t2');%横坐标标签 ylabel('f');

f110.50-0.5f1-3-2-10t2f212310.50-0.5f2-3-2-10t2f12310.5f0-0.5-6-4-20t2246

%dt3=0.01;

u0=stepfun(t3,0)-stepfun(t3,2); u1=stepfun(t3,-1)-stepfun(t3,1); f1=(1/2)*t3.*u0; f2=(1/2)*(t3+1).*u1; f=dt3*conv(f1,f2);

k1=length(f); %计算卷积结果的非零样值的宽度

tf=t02:dt3:t02+(k1-1)*dt3; %确定卷积结果的非零样值的时间向量 figure;

subplot(3,1,1); plot(t3,f1);

axis([min(t3)-0.5,max(t3)+0.5,min(f1)-0.5,max(f1)+0.5]); title('f1');%图像标题 xlabel('t3');%横坐标标签 ylabel('f1'); subplot(3,1,2); plot(t3,f2);

axis([min(t3)-0.5,max(t3)+0.5,min(f1)-0.5,max(f1)+0.5]); title('f2');%图像标题 xlabel('t3');%横坐标标签

ylabel('f2'); subplot(3,1,3); plot(tf,f);

axis([min(tf)-0.5,max(tf)+0.5,min(f)-0.5,max(f)+0.5]); title('f');%图像标题

xlabel('t3');%横坐标标签 ylabel('f');

f110.50-0.5f1-3-2-10t3f212310.50-0.5f2-3-2-10t3f12310.5f0-0.5-6-4-20t3246实验结论:当dt=0.01时程序的计算结果就是连续时间卷积的较好近似

本文来源:https://www.bwwdw.com/article/qout.html

Top