z变换及应用

本文详细介绍了ztrans(),iztrans(),residuez(),和impz()函数在计算Z变换和逆Z变换中的应用,涉及无限长序列的处理以及重根情况下求解的方法。特别提到了某些情况下无法直接求解的情况和处理策略。
摘要由CSDN通过智能技术生成

使用 ztrans() \text{ztrans()} ztrans()求z变换

有部分的无法求出(不代表不存在z变换),并且不给出ROC

%% 用ztrans子函数求无限长序列的z变换
clear ;
syms w0 n z a

x1 = a^n;
x2 = (n*(n-1))/2;
x3 = exp(1j*w0*n);
x4 = 1/(n*(n-1));

X1=ztrans(x1);
X2=ztrans(x2);
X3=ztrans(x3);
X4=ztrans(x4);

disp(['X1 = ', char(X1)]);
disp(['X2 = ', char(X2)]);
disp(['X3 = ', char(X3)]);
disp(['X4 = ', char(X4)]);%从结果可以看出x4无法求出
使用 iztrans() \text{iztrans()} iztrans()求逆z变换

有部分的无法求出(不代表不存在逆z变换),并且不给出ROC

%% 用iztrans子函数求无限长序列的z反变换
clear;
syms z n a

X1 = z/(z-1);
X2 = a*z/(a-z)^2;
X3 = (1-z^(-n))/(1-z^(-1));

x1 = iztrans(X1);
x2 = iztrans(X2);
x3 = iztrans(X3);

disp(['x1 = ', char(x1)]);
disp(['x2 = ', char(x2)]);
disp(['x3 = ', char(x3)]);%从结果可以看出x3无法求出
使用 residuez() \text{residuez()} residuez()求逆z变换

注意是否重根

单根情况:

求解 X ( z ) = 1 1 − 1.5 z − 1 + 0.5 z − 2 X(z)=\frac{1}{1-1.5z^{-1}+0.5z^{-2}} X(z)=11.5z1+0.5z21

% (1)

clear;
b = [1 0 0];        %分子
a = [1 -1.5 0.5];   %分母

[r p c] = residuez(b,a);

disp('r =');disp(r);
disp('p =');disp(p);
disp('c =');disp(c);

%所以X(z) = r(1)/(1-p(1)*z^(-1))+r(2)/(1-p(2)*z^(-1))

n = 0:30;
x = r(1)*p(1).^n + r(2)*p(2).^n;

figure('color','w');
stem(n,x,'filled');
xlabel('n');ylabel('x(n)');xlim([0,30]);ylim([-0.5,max(x)+0.5]);
grid on;grid minor;

重根情况:

求解 H ( z ) = z − 1 1 − 12 z − 1 + 36 z − 2 H(z)=\frac{z^{-1}}{1-12z^{-1}+36z^{-2}} H(z)=112z1+36z2z1

clear;
b = [0 1 0];a = [1 -12 36];
[r p c] = residuez(b,a);

disp('r =');disp(r);
disp('p =');disp(p);
disp('c =');disp(c);

% x = r(1)*p(1).^n + r(2)*p(2).^n不适用
% 因为可以看出是含有多极点
%所以X(z) = r(1)/(1-p(1)*z^(-1))+r(2)/(1-p(2)*z^(-1))^2
使用 impz() \text{impz()} impz()求z变换

求解 H ( z ) = 0.1321 − 0.3963 z − 2 + 0.3963 z − 4 − 0.1321 z − 6 1 + 0.34319 z − 2 + 0.60439 z − 4 + 0.20407 z − 6 H(z)=\frac{0.1321 - 0.3963z^{-2}+0.3963z^{-4}-0.1321z^{-6}}{1 + 0.34319z^{-2}+0.60439z^{-4}+0.20407z^{-6}} H(z)=1+0.34319z2+0.60439z4+0.20407z60.13210.3963z2+0.3963z40.1321z6

clear;
b = [0.1321 0 -0.3963 0 0.3963 0 -0.1321];
a = [1 0 0.34319 0 0.60439 0 0.20407];

N = 40;
n=0:N-1;
x = impz(b,a,N);
figure('color','w');
stem(n,x,"filled");
grid on;grid minor;
  • 11
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

暮光启行

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值