拉普拉斯逆变换及 matlab 实现
一.实验目的:
利用 matlab 实现拉普拉斯逆变换,并根据逆变换分析系统的单位冲激响应。
二.实验原理:
求连续时间信号拉普拉斯逆变换的过程,可以用 MATLAB 的 residue 函数来
实现。设
(s)X
令 A 和 B 分别是 X (s)的分子和分母多项式构成的系数向量,则函数[r, p,
k]=residue (B, A) 将产生三个向量 r、p 和 k,其中 p 为包含 X (s) 所有极点的
列向量, r 为包含 X (s) 部分分式展开系数 ri (i = 1,2,…,N) 的列向量。k 为包含
X(s) 部分分式展开的多项式项的系数 cj( j = 1,2,…, M - N) 的行向量,若 M N,
则 k 为空阵。
用函数 residue()求出 X (s) 部分分式展开的系数后,便可根据其极点位置分
布情况直接求出 X (s) 的拉普拉斯逆变换 x(t) 。下面举例说明如何用 MATLAB
求拉普拉斯逆变换。
例: 已知连续信号的拉普拉斯变换为:
X
(s)
s
4
s
2
2
3
s
3
s
试用 MATLAB 求其拉普拉斯逆变换 x (t) 并绘制零极点图。
解:
1. 拉普拉斯逆变换:
可以用函数 residue()来解决, 对应的 MATLAB 命令如下:
a=[1 4 3 0];
b=[1 2];
[r,p,k]=residue(b,a)
运行结果为:
r =
-0.1667
-0.5000
0.6667
p =
-3
-1
0
[]
k =
由上述结果可以看出,X (s)有三个极点 p1=-3, p2 =-1, p3 = 0
X (s)的拉普拉斯逆变换为:
2. 画零极点图
H = tf(b,a)
运行结果:
Transfer function:
s + 2
-----------------
s^3 + 4 s^2 + 3 s
pzmap(H)
运行结果:
三.实验内容:
已知某连续系统的系统函数为:
试用 MATLAB 求出该系统的冲激响应 h(t),绘出其时域波形图;绘制系统
的零极点图。
程序:
a=[1 3 2 0];
b=[1 4];
[r,p,k]=residue(b,a)
结果:
r =
1
-3
2
-2
-1
0
p =
k =
[]
时域波形:
impulse(b,a);
零极点图:
H = tf(b,a)
Transfer function:
s + 4
-----------------
s^3 + 3 s^2 + 2 s
pzmap(H)
运行结果: