Matlab第 10次课
作业评讲
第 6章 Matlab在信号与系统中的应用
6.1连续信号与系统
作业 4.12
clc
clear
close all
t=0:0.01:5;
%(a)
a=pi/3;
x=sin(t);
%y=sin(N*t+a);
for N=1:4
y=sin(N*t+a);
subplot(2,2,N),plot(x,y),
end
%(b)
N=2;a=0;
y=sin(N*t+a);
figure
subplot(2,2,1),plot(x,y),
for k=1:3
a=pi/k;
y=sin(N*t+a);
subplot(2,2,k+1),plot(x,y),
end
6.1连续信号与系统
讨论用 Matlab表示和分析连续信号和线性时不变系统。
方法,数值方法
只有在样本点取得足够密才行。
信号变化足够慢
例 6.1连续信号的 Matlab描述列出单位冲激信号、单位阶跃信号、复指数函数等连续信号的 Matlab表达式。
解:建模
( 1)单位冲激函数 δ(t)无法直接用 Matlab描述,但可以把它看作是宽度为 Δ(程序中用 dt
表示),幅度为 1/ Δ矩形脉冲。



其余0
1
)()( 1111 ttttttx?
表示在 t=t1处的冲激
( 2)单位阶跃函数:在 t=t1处跃升的阶跃可写为 u(t-t1)。定义为


1
1
12 0
1
)()(
tt
ttt
ttutx f
( 3)复指数函数,定义为
tjuetx )(3 )(
若 w= 0,就是实指数信号,若 u= 0,则为虚指数函数。
程序
Clc,clear,close all
t0=0;tf=5;dt=0.05;t1=1;
t=t0:dt:tf;st=length(t);
%( 1)单位冲激信号
n1=floor((t1-t0)/dt);
%B = floor(A) rounds the elements of A to the
nearest integers less than or equal to A,
%For complex A,the imaginary and real parts are
rounded independently.
x1=zeros(1,st);x1(n1)=1/dt;
subplot(2,2,1),stairs(t,x1),grid on
%将图形窗口分为 2× 2个子图,在第一个子图中绘制图形。
axis([0,5,0,22])
( 2)单位阶跃信号
%信号从 t0到 tf,在 t1前为 0,到 t1处有一跃变,
x2=[zeros(1,n1-1),ones(1,st-n1+1)]
subplot(2,2,3),stairs(t,x2),grid on
axis([0,5,0,1.1])
%( 3)复指数函数
alpha=-0.5;w=10;x3=exp((alpha+j*w)*t);
subplot(2,2,2),plot(t,real(x3)),grid on
subplot(2,2,4),plot(t,imag(x3)),grid on
例 6.2 LTI系统的零输入响应
描述 n阶 LTI连续系统的微分方程为
ubdtdubdt udbyadtdyadt ydadt yda mmm
m
nnn
n
n
n
1111
1
21,....,

已知 y及其各阶导数的初始值为 y(0),y(1)(0),…,
y(n-1)(0),求系统的零输入响应。
解:建模零输入响应为微分方程的齐次解,形式为:
tpntptp neCeCeCty,..)( 21 21
式中 pi为特征方程的特征根。可用 roots(a)语句求得。系数 Ci
可由 y及其各阶导数的初始值来确定。
C1+C2+…+C n=y0
p1C1+p2C2+…+p nCn=Dy0
…..
0..,11212111 yDCpCpCp nnnnnn
矩阵形式为:
0
.
.
.
0
0
.
.
.
2
1
.,,
.
.
.
.
.
.
.
.
.
.
.
.
.,,
1.,,11
111
2
1
1
21
yD
Dy
y
Cn
C
C
ppp
ppp
nn
n
nn
n
即 V.*C=Y0;解为,C=V\Y0
C=[C1,C2,..,Cn]’;Y0=[y0,Dy0,…D n-1y0]
为翻德蒙矩阵,在 Matlab的特殊矩阵库中有函数 vander。但要经过 rot90的处理才能达到要求。
11
2
1
1
21
...
.
.
.
.
.
.
.
.
.
.
.
.
...
1...11
n
n
nn
n
ppp
ppp
V
程序
Clc,clear,close all
a=[3,5,7,1];dt=0.2;tf=8;
n=length(a)-1;Y0=[0,1,0];
p=roots(a);V=rot90(vander(p));
c=V\Y0';
t=0:dt:tf;y=zeros(1,length(t));
for k=1:n
y=y+c(k)*exp(p(k)*t);
end
plot(t,y),grid
gtext(‘Y0=[0,1,0]’)
请按书上的重新作一遍
例 6-3 n阶 LTI系统的冲激响应
解:建模
n阶微分方程如上例所示,其系统函数为
1
1
21
1
1
21
.,,
.,,
)(
)()(


nn
nn
mm
mm
asasasa
bsbsbsb
sU
sYsH
冲激函数的 Laplace变换为 U(s)=1,则 Y(s)=H(s),h(t)为
H(s)的反变换,可以吧 H(s)为极点留数式。
考虑 H(s)的分母多项式没有重根,则

n
k k
k
ps
rsH
1
)(
n
k
tp
k
kerth
1
)(
Clc,clear,close all
b=[8,3,1];
a=poly([0,-1+2i,-1-2*i,-5]);
dt=0.2;
tf=8;
t=0:dt:tf;
[r,p]=residue(b,a);
h=zeros(1,length(t));
for k=1:length(a)-1
h=h+r(k)*exp(p(k)*t);
end
plot(t,h),grid