1.Z变换
1.1 Z变换公式
1.2 matlab函数(ztrans)
1.2.1 Syntax(语法)
ztrans(f)
ztrans(f,transVar)
ztrans(f,var,transVar)
1.2.2 Input Arguments
f — Input
var — Independent variable
transVar — Transformation variable
1.2.3 Description
1. ztrans(f) finds the Z-Transform of f. By default, the independent variable is n and the transformation variable is z. If f does not contain n, ztrans uses symvar.
2. ztrans(f,transVar) uses the transformation variable transVar instead of z.
3. ztrans(f,var,transVar) uses the independent variable var and transformation variable transVar instead of n and z, respectively.
1.2.4 Examples
P1:(先将sin(n)转化为幂指函数,再累加求和,最后化为正余弦函数)
syms n
f = sin(n);
ztrans(f)
ans =
(z*sin(1))/(z^2 - 2*cos(1)*z + 1)
P2(思路:Z变换性质)
syms m n
f = exp(m+n);
ztrans(f)
ans =
(z*exp(m))/(z - exp(1))
若需要指定变量为y,可用下面的语句 (自变量仍然为n)
syms y
ztrans(f,y)
ans =
(y*exp(m))/(y - exp(1))
涉及Heaviside函数(阶跃函数)和二项式系数的z变换
P3(注意 阶跃函数在0处值为1/2)
syms n z
ztrans(heaviside(n-3),n,z)
ans =
(1/(z - 1) + 1/2)/z^3
P4 n(n-1)/2 (思路:线性加权性质)
ztrans(nchoosek(n,2))
ans =
z/(z - 1)^3
求矩阵m的z变换。通过使用相同大小的矩阵为每个矩阵项指定独立变量和变换变量。当参数是非标量时,ztrans按元素对其进行操作。
P5
syms a b c d w x y z
M = [exp(x) 1; sin(y) i*z];
vars = [w x; y z];
transVars = [a b; c d];
ztrans(M,vars,transVars)
ans =
[ (a*exp(x))/(a - 1), b/(b - 1)]
[ (c*sin(1))/(c^2 - 2*cos(1)*c + 1), (d*1i)/(d - 1)^2]
如果同时使用标量和非标量参数调用ztrans,那么它将通过使用标量展开展开标量以匹配非标量。非标量参数的大小必须相同。
syms w x y z a b c d
ztrans(x,vars,transVars)
ans =
[ (a*x)/(a - 1), b/(b - 1)^2]
[ (c*x)/(c - 1), (d*x)/(d - 1)]
计算符号函数的z变换。如果第一个参数包含符号函数,则第二个参数必须是标量。
syms f1(x) f2(x) a b
f1(x) = exp(x);
f2(x) = x;
ztrans([f1 f2],x,[a b])
ans =
[ a/(a - exp(1)), b/(b - 1)^2]
如果ztrans不能转换输入,那么它将返回一个未计算的调用。
syms f(n)
f(n) = 1/n;
F = ztrans(f,n,z)
F =
ztrans(1/n, n, z)
使用iztrans返回原始表达式。
iztrans(F,z,n)
ans =
1/n
注
1.如果任何参数是数组,则ztrans对数组的所有元素按元素方式操作;
2.如果第一个参数包含符号函数,则第二个参数必须是标量;
3.要计算z逆变换,使用iztrans。