| Communications Toolbox | ![]() |
Convert Hankel matrix to linear system model
[num,den] = hank2sys(h,ini,tol)
[num,den,sv] = hank2sys(h,ini,tol)
[a,b,c,d] = hank2sys(h,ini,tol)
[a,b,c,d,sv] = hank2sys(h,ini,tol)
[num,den] = hank2sys(h,ini,tol) converts a Hankel matrix h to a linear system transfer function with numerator num and denominator den. The vectors num and den list the coefficients of their respective polynomials in ascending order of powers of z-1. The argument ini is the system impulse at time zero. If tol > 1, then tol is the order of the conversion. If tol < 1, then tol is the tolerance in selecting the conversion order based on the singular values. If you omit tol, then its default value is 0.01. This conversion uses the singular value decomposition method.
[num,den,sv] = hank2sys(h,ini,tol) returns a vector sv that lists the singular values of h.
[a,b,c,d] = hank2sys(h,ini,tol) converts a Hankel matrix h to a corresponding linear system state-space model. a, b, c, and d are matrices. The input parameters are the same as in the first syntax above.
[a,b,c,d,sv] = hank2sys(h,ini,tol) is the same as the syntax above, except that sv is a vector that lists the singular values of h.
h = hankel([1 0 1]); [num,den,sv] = hank2sys(h,0,.01)
The output is
num =
0 1.0000 0.0000 1.0000
den =
1.0000 0.0000 0.0000 0.0000
sv =
1.6180
1.0000
0.6180
| hammgen | heldeintrlv | ![]() |
© 1994-2005 The MathWorks, Inc.