Main Content

iztrans

Inverse Z-transform

Description

iztrans(F) returns the Inverse Z-Transform of F. By default, the independent variable is z and the transformation variable is n. If F does not contain z, iztrans uses the function symvar.

example

iztrans(F,transVar) uses the transformation variable transVar instead of n.

example

iztrans(F,var,transVar) uses the independent variable var and transformation variable transVar instead of z and n respectively.

example

Examples

Inverse Z-Transform of Symbolic Expression

Compute the inverse Z-transform of 2*z/(z-2)^2. By default, the inverse transform is in terms of n.

syms z
F = 2*z/(z-2)^2;
iztrans(F)
ans =
2^n + 2^n*(n - 1)

Specify Independent Variable and Transformation Variable

Compute the inverse Z-transform of 1/(a*z). By default, the independent and transformation variables are z and n, respectively.

syms z a
F = 1/(a*z);
iztrans(F)
ans =
kroneckerDelta(n - 1, 0)/a

Specify the transformation variable as m. If you specify only one variable, that variable is the transformation variable. The independent variable is still z.

syms m
iztrans(F,m)
ans =
kroneckerDelta(m - 1, 0)/a

Specify both the independent and transformation variables as a and m in the second and third arguments, respectively.

iztrans(F,a,m)
ans =
kroneckerDelta(m - 1, 0)/z

Inverse Z-Transforms Involving Kronecker Delta Function

Compute the inverse Z-transforms of these expressions. The results involve the Kronecker Delta function.

syms n z
iztrans(1/z,z,n)
ans =
kroneckerDelta(n - 1, 0)
f = (z^3 + 3*z^2)/z^5;
iztrans(f,z,n)
ans =
kroneckerDelta(n - 2, 0) + 3*kroneckerDelta(n - 3, 0)

Inverse Z-Transform of Array Inputs

Find the inverse Z-transform of the matrix M. Specify the independent and transformation variables for each matrix entry by using matrices of the same size. When the arguments are nonscalars, iztrans acts on them element-wise.

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];
iztrans(M,vars,transVars)
ans =
[ exp(x)*kroneckerDelta(a, 0), kroneckerDelta(b, 0)]
[       iztrans(sin(y), y, c),   iztrans(z, z, d)*1i]

If iztrans is called with both scalar and nonscalar arguments, then it expands the scalars to match the nonscalars by using scalar expansion. Nonscalar arguments must be the same size.

syms w x y z a b c d
iztrans(x,vars,transVars)
ans =
[ x*kroneckerDelta(a, 0),       iztrans(x, x, b)]
[ x*kroneckerDelta(c, 0), x*kroneckerDelta(d, 0)]

Inverse Z-Transform of Symbolic Function

Compute the Inverse Z-transform of symbolic functions. When the first argument contains symbolic functions, then the second argument must be a scalar.

syms f1(x) f2(x) a b
f1(x) = exp(x);
f2(x) = x;
iztrans([f1, f2],x,[a, b])
ans =
[ iztrans(exp(x), x, a), iztrans(x, x, b)]

If Inverse Z-Transform Cannot Be Found

If iztrans cannot compute the inverse transform, it returns an unevaluated call.

syms F(z) n
F(z) = exp(z);
f = iztrans(F,z,n)
f =
iztrans(exp(z), z, n)

Return the original expression by using ztrans.

ztrans(f,n,z)
ans =
exp(z)

Input Arguments

collapse all

Input, specified as a symbolic expression, function, vector, or matrix.

Independent variable, specified as a symbolic variable, expression, vector, or matrix. This variable is often called the "complex frequency variable." If you do not specify the variable, then iztrans uses z. If F does not contain z, then iztrans uses the function symvar.

Transformation variable, specified as a symbolic variable, expression, vector, or matrix. It is often called the"time variable" or "space variable." By default, iztrans uses n. If n is the independent variable of F, then iztrans uses k.

More About

collapse all

Inverse Z-Transform

Where R is a positive number, such that the function F = F(z) is analytic on and outside the circle |z| = R, the inverse Z-transform is

f(n)=12πi|z|=RF(z)zn1dz,n=0,1,2...

Tips

  • If any argument is an array, then iztrans acts element-wise on all elements of the array.

  • If the first argument contains a symbolic function, then the second argument must be a scalar.

  • To compute the direct Z-transform, use ztrans.

Version History

Introduced before R2006a