www.gusucode.com > 高等数学问题求解源码程序 > CH15/rsolve.m
function x=rsolve(F,G,u,x0) %RSOLVE z变换求解离散线性定常系统 % X=RSOLVE(F,G,U,X0) 求线性定常系统X(k+1)=F*X(k)+G*U(k)的解 % % 输入参数: % ---F,G:系统的系数矩阵 % ---U:系统输入 % ---X0:系统的初始值 % 输出参数: % ---X:系统的解 % % See also ztrans, iztrans [m,n]=size(F); [q,p]=size(G); r=length(u); if m~=n || n~=q error('系数矩阵维数不匹配.') end if isvector(u) if r~=p error('输入向量与控制矩阵维数不匹配.') end end I=sym(eye(size(F))); syms z k U=ztrans(sym(u)); x=simple(iztrans((z*I-sym(F))\(z*sym(x0)+sym(G)*U),z,k)); web -broswer http://www.ilovematlab.cn/forum-221-1.html