信号与系统实验指导书df=diff(f1):df=simple(df):intf=int(f1):f2=simple(intf)subplot(3,1,1),ezplot(f1,[-3,3]);xlabel(")grid;title(f(t)的波形)subplot(3,1,2),ezplot(df,[-3,3]):xlabel(")grid;title(f(t)一阶导数)subplot(3,1,3),ezplot(f2,[-3,3]):grid;title(f(t)的积分')运行程序后显示的图形如图2.3-4所示。其中Heaviside(t)表示符号形式的单位阶跃函数。例2.3-3已知三种有用的脉冲波形的信号能量如图2.3-5所示,试用Matlab的积分运算来证明。A矩形脉冲半周正弦波三角脉冲A4E=A'bE=A°b/2E=A°b/3b6→b→b→图2.3-5三种脉冲波形及能量解在Matlab的命令窗口输入以下命令>>syms t b Aa>>E=int(A2",t,0,b)E =A~2*b>》E=int((A*sin(pi/b*t))2',0,b)E =1/2*A~2*b>>E=int("(A/a*t)2",t,0,a)+int((A/(b-a)*(t-b))~2",t,a,b)F=1/3*A~2*a+1/3*A~2/(b-a)~2*b~3-a3)-A2/(b-a)~2*a*(b2-a~2)+A~2/(b-a)*a~2>> E=simple(E)E =1/3*A~2*b3、卷积积分的数值计算卷积积分计算实际上可用信号的分段求和来实现,即5(t)= f(0)* f(1)=J (t)f2(t-T)dt= limf(kA)f2(t-kA)-4→0,2如果我们只求当t=n△(n为整数)时f(t)的值f(n△),则由上式可得:f(nA)=fi(k)f,[(n-k)A)当时间间隔足够小时,f(n△)就是f(t)的数值近似。Matlab的conv(x,h)函数可以用来计算卷积积分的数值解。为此编写了计算卷积积分的通用函数如下。function x=CSCONV(F1,tl_s,tl_e,F2,t2_s,t2_e);%计算有限长连续信号的卷积%F1,F2为两信号的字符串,tl_s,t2_s为两信号的起始点,t1_e,t2_e为两信号的终止点%同时显示f1(t),f2(t)和{(t)=f1*f2三个波形,并且三个波形自动显示在图形中间-3 -
/012345678 !!'! ! ': U #"'"'"[ '"\#"#] U ! ?MZ U #"'":"[ !"\#"#] U ! ^_7B U #"'"#"[ :"\#"#] ! ?>+ & §¢CH ¨H ICRP ®nf¡ZwZYn\j]BC U¯°±Q ².³´« ! $¨H IC0µ 5¶ ·¸¹º»¼J©·¸ U` a `b:"""U a `b:U a ` Ub:""U a ':`b:U a `b:""" `UUb:"""U a '#`b:'#`b:Ub:Ub#b#`b:Ub:Ub:b:`b:Ub: a a a '#`b:U 'b½¾`!¿ 5bc0O ¨À,-Á 8 V< 0Âa¾U`ì 8<==>ÄÅA<0 D3 67 !"Q`J5 'VÆÇ'ÈQ¨© #$%$&'( )!*!*+!) ! *! *+, - - )!) !*! * !*+! *+ - ! #. !!" #$%& '(
信号与系统实验指导书%例:f1=2*rectpuls(t,4); f2=3*rectpuls(t-0.5,3); figure(1)%CSCONV(f1,-2,2,f2,-1,2)%t_s=t1_s+t2_s;t_e=tl_e+t2_e,t0=min([t1_s,t2_s,t_s])-1;ti=max([t1_e,t2_e,t_e])+1;dt=0.005;(=to:dt:tl;L=length(t);tp-[2*t(1):dt:2*(L)];fl=eval(F1);f2=eval(F2);y=dt*conv(f1,f2)y_max=max(y);y_min=min(y);dy=(y_max-y_min)/10;fl_max=max(f1);fl_min=min(f1);dfl=(f1_max-fl_min)/10;f2_max=max(f2);f2_min=min(f2);df2=(f2_max-f2_min)/10;subplot(3,,1)plot(t,f1,linewidth,2)title信号f1(t)的波形color,b,FontSize,8)axis([t(1) t(L) fl_min-dfl f1_max+df1),grid,set(gca,FontSize,8)subplot(3,1,2)plot(t,f2,linewidth,2),title信号f2(t)的波形color,bFontSize,8)axis([t(1) t(L) f2_min-dfl f2_max+df1]);grid,set(gca,FontSize',8)subplot(3,1,3),plot(tp,y,linewidth',2),title卷积f(t)=f1*2的波形colorbFontSize,8)if y_min>=0y0=(y_max-y_min)/2;elseyo=0;endaxis([t(1),t(L),y_min-dy,y_max+dy);grid:set(gca,Ytick',[y_min,y0,y_max],'FontSize',8)xlabel(Time(sec)调用以上函数可以方便地计算画出两个任意有限长波形和卷积波形。用下面的例子说明。例2.3-4已知信号f(t)和f(t)的波形如图2.3-6(a)、(b)所示(其中令A=2,B=3)。计算卷积积分f(t)=f(t)*f,(t)。B+()()BA+tt0-o12(a)(b)图2.3-6两信号波解MATLAB程序如下:f1=2*rectpuls(t-0.5)":f2=3*tripuls(t-1,2,1)figure(1)CSCONV(f1,0, 1,f2, 0, 2)程序运行后显示的波形如图2.3-7所示。- 4 -
)*+,-./0 - 1/ #0 .1+2 !0, #0 .1+2 ! 0,31+ - $%$&'( ! ! ! !! - *#*4 *,*+#*+4 *+, # *! *!*,# *+! *+!*+4,#, #//, 5#+3" , 2# . // . 5, #+ ), #+ ) , 6#. ! ,6* # 6,6*# 6,6# 6* 6*, * # ,*# ,# * *, * # , *# , # * *, 2 !!!2 !!0+7"0! ,+ 0 0!010!00!0)%8+0!9 5** 4,31!+ 3!0)%8+0!9 2 !! !2 ! !0+7"0! ,+ 0 0!010!00!0)%8+0!9 5 * * 4,31!+ 3!0)%8+0!9 2 !! !2 2!6!0+7"0! , + 0 #. 0!010!00!0)%8+0!9 6*:# 6# 6* 6* , ++ 6#, + ! 5!6*6!6* 46,31, + 3!0;<0!6*!6!6* !0)%8+0!9 + 0=+ +0 SJ¾Q`JÉʪ¥ËÌÍ:« '« ©ÎÏÐ ².! « ¨H IC RP¸ ÑXÒpÓXÔ] ' >=5>? ¨©¬ 23456789:;<=>?@;ABCDE5F 2645G7;8H<=>?@;A3I6I3E5F 2HJ=89@3E KLKMNO@23IBI3I26IBI6E &§¢C« ¨H @ IC
信号与系统实验指导书信号110的被形0.253.信号200的波形-0.52.53.40.5卷积(1)=1112的被开2.253830.50.52.533.5Tme(sec)图2.3-7信号的卷积波形4、卷积积分的符号计算Matlab不仅有数值计算功能,还有强大的符号计算功能。即有推理功能可得解析表达式。卷积积分用Matlab的积分int()函数,可以计算不定积分和定积分。调用格式为int(f),int(f,a,b)其中,f为被积函数,a,b为积分的上下限。为此编写了计算卷积积分解析解的通用函数如下:function y=CSCoNvs(f,h,t_s,t_e,a,b) ;计算卷积积分的解析解%%f激励信号,含有阶跃函数Heaviside(t):%h冲激响应,卷积时要反折的信号,不可含阶跃函数,默认起始点为0:%t_s,t_e为系统零状态响应y=f*h波形的起始点和终止点,%a,b为卷积积分的上,下限.例:计算exp(-2t)u(t+1)与u(t-3)卷积%syms t%h=sym(exp(-2*t+2)"):%f=sym(Heaviside(t-2)"):%CScoNvs(f.h.1.5.2.t)%syms t taoftao=subs(f,t,tao);ht_tao=subs(h,t, t-tao) :y=simple(int(ftao*ht_tao,tao,a,b)):t=t_s:0.02:t_e:yt=subs(y) :y_max=max(yt) :y_min=min(yt):dy=(y_max-y_min)/10:plot(t,yt,linewidth',2),axis([t_s t_e y_min-dy y_max+dy]);%axis([-2 3 0 11]) :xlabel(t(sec)'):grid:if y_min>=0y0=(y_max-y_min)/2:elseyo=0;endset(gca,'tick,[y_min,y0,y_max],FontSize',8)title(卷积的波形):disp(零状态响应"),y-5-
)*+,-./0 ¦Õ 0 OÖ+ `ÃB U' Zhj\]Q0`J¦__STUV Zhj\[]p^Zhj\[pfpq] RP0[ VzQ0fp^q V¾©ÍVÆÇ'ÈQ¨ ©¬^ 2=P:;HQPR4KLKMNOL@2ISI;T?I;T9IUIVEF W XYZY W2[\ I]^_`a b9UcH?Hd9@;EF WSe[fgI hij Ikl]^_`aImn BF W;T?I;T9*+opqfgR427S I WUIV XrIsC1t9u<@A6;E=@;v3E) =@;AGE C W ?Rw?; W S4?Rw@59u<@A67;v6E5EF W 24?Rw@5b9UcH?Hd9@;A6E5EF W KLKMNOL@2ISI3IDI6I;E W ?Rw?;;UQ 2;UQ4?=V?@2I;I;UQEF S;T;UQ4?=V?@SI;I;A;UQEF R4?Hw<>9@HP;@2;UQ7S;T;UQI;UQIUIVEEF ;4;T?tBCB6t;T9F R;4?=V?@REFRTwUu4wUu@R;EFRTwHP4wHP@R;EFdR4@RTwUuARTwHPEx3BF <>Q;@;IR;I5>HP9yHd;S5I6EI UuH?@z;T?;T9RTwHPAdRRTwUuvdR{EFWUuH?@zA6GB33{EF u>UV9>@5;@?9:E5EFJ8HdF H2RTwHP|4B RB4@RTwUuARTwHPEx6F 9>?9 RB4BF 9Pd ?9;@J:UI5};H:~5IzRTwHPIRBIRTwUu{I5QP;LH95IE ;H;>9@5 5EF dH?<@5opqfg5EIR
信号与系统实验指导书现用实例说明其计算方法。例2.3-5线性非时变系统的输入信号f(t)和冲激响应h(t)由下列各式给出,试求系统的零状态响应y=,()。(a) f(t) = e-0.5' [e(t) - 8(t - 2)] , h(t) =e-c(t) :(b) f(t) =e-2ts(t+3) , h(t)=e-(t-1) 。解(a)系统的零状态响应为yg(t) = f(t)* h(t) = J e-0.5 [e(t)-8(t -2)]e-(1)e(t- t)dt=Je-05re-(-)e(t)e(t-)dt-Je-05re(-)e(t-2)e(t-T)dt=[e~]'eo5rdt]e(1)-[e']'e0sf dt]e(t-2)= 2(e-0.51 - e-" )e(t) - 2(e-0.51 - e-(-1)(t - 2)(b)系统的零状态响应为y(1)= f(0)* h(t)= J e-2"re(t+3)le-2(-t)e(t-T -1)dt=[e-2r [" dt Je(t+ 2) =(t + 2)e-2" e(t + 2)为了用CSCONVS()函数计算,利用卷积的时移性质将被积函数要变换如下:Y (1) = e-e(t+ 3)*e- (t-1)=e-2(t-1)e(t+2)*e-2(+1)e()用MATLAB并调用CSCONVS()函数的计算程序为symsth=sym(exp(-t)"):f=sym('exp(-t/2)*(Heaviside(t)-Heaviside(t-2))"):figure(1)y1=CSCONVS(f, h, -0. 5, 5, 0, t)h=sym(exp(-2*t-2)");f=sym(exp(-2*t+2)*(Heaviside(t+2))):figure(2)y2=CSCONVS(f, h, -2.5, 3, -2, t)disp(零状态响应"),yl,y2,运行程序后显示的图形如图2.3-8(a)、(b)所示。(a)y(t)的波形(b) y(t)的波形图2.3-8在命令窗口显示其卷积的解析式如下:-6-
)*+,-./0 cbÏR רÙ<ÚÛ»¼! ´ÜÝ a©ÞßUà0µ Ú ÛáâãÝ + 0 + ä + ! + ÚÛáâãÝV + + + + $%$&'(% !" + + + + >=5>? #$ $%$&'(% %& !"" #$%"%"#" & & !"" $%"'" " ()*+, """ '(%&)*+,- , 9 . /+0 12345*+6789 !" -./ -./
信号与系统实验指导书>>零状态响应yl =2*Heaviside(t)*exp(-1/2*t)-2*Heaviside(t)*exp(-t)-2*Heaviside(t-2)*exp(-1/2*t)+2*Heaviside(t-2)*exp(1-t)y2 =Heaviside(t+2)*(t+2)*exp(-2*t)其中,Heaviside(t)表示阶跃函数s(t),所以,y(t)= 2(e-/2 -e-")e(t) -2(e-2 -e-(-1)e(t- 2)y2 (t)=(t + 2)e-" (t + 2)与理论计算结果一致。2.3实验内容3-1、周期信号如题图2.3-9所示,试计算信号的功率。f(0)业25±图2.3-93-2、求图2.3-10中的信号的能量。1(0)(0)f(t)2图2.3-103-3、用Matlab画出图2.3-11中的信号的卷积波形。(0)()+fi(t)(0)332-0(b)(a)(0)e(t)(c)图2.3-11-7-
0123456789 @ ::()*+, & && 6:A++ ;+<= /> ?@ABCDE0 .FGHI J, B/+KHILM0 .N, :HIOP0 . QR, :HIS-0