关于matlab ztrans函数

下面的程序就是简单的对单位阶跃函数做Z变换,但明白人都知道这结果不对啊,正确结果应该是z/(z-1)。不知道后面为啥多个1/2。heaviside函数我做了简单的修改,就... 下面的程序就是简单的对单位阶跃函数做Z变换,但明白人都知道这结果不对啊,正确结果应该是z/(z-1) 。不知道后面为啥多个1/2。heaviside 函数我做了简单的修改,就是把X==0的值改成了1(原先默认是0.5),但是改回0.5仍然是这个结果。怎么用matlab来计算离散单位阶跃函数U[n]的z变换????
syms n
>> x=heaviside(n);
>> X=ztrans(x)

X =

1/(z - 1) + 1/2
展开
 我来答
我行我素850915
2015-05-09 · TA获得超过8241个赞
知道大有可为答主
回答量:5788
采纳率:77%
帮助的人:1665万
展开全部
这个结果应该是正确的。
z变换定义: F(z) = symsum(f(n)/z^n, n, 0, inf),则
x=heaviside(n)有三种结果:n<0时,x=0;n=0时,x=0.5;n>0时,x=1,相应的z变换是
X=ztrans(x)有两种结果:n<0时,X=0;
n>=0时,X=0.5/z^0+1/z+1/z^2+1/z^3+...+1/z^inf
=0.5+1/z+1/z^2+1/z^3+...+1/z^inf
而在z>1时1/z+1/z^2+1/z^3+...+1/z^inf=1/(z-1)
所以,原结果是对的。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式