ml_lyap_sgn_fac
Continuous-time Lyapunov equation solver.
Contents
Syntax
[Z, info] = ml_lyap_sgn_fac(A, C) [Z, info] = ml_lyap_sgn_fac(A, C, []) [Z, info] = ml_lyap_sgn_fac(A, C, [], opts)
[Z, info] = ml_lyap_sgn_fac(A, C, E) [Z, info] = ml_lyap_sgn_fac(A, C, E, opts)
Description
Computes the full-rank solution of the standard Lyapunov equation
A*X + X*A' + B*B' = 0, (1)
or of the generalized Lyapunov equation
A*X*E' + E*X*A' + B*B' = 0, (2)
with X = Z*Z', using the sign function iteration. It is assumed that the eigenvalues of A (or s*E - A) lie in the open left half-plane.
Input
- A - matrix with dimensions n x n in (1) or (2)
- B - matrix with dimensions n x m in (1) or (2)
- E - matrix with dimensions n x n in (2), if empty the standard equation (1) is solved
- opts - structure, containing the following optional entries:
Parameter | Meaning |
AbsTol | nonnegative scalar, tolerance for the absolute error in the last iteration step default: 0 |
CompTol | nonnegative scalar, tolerance for the row compression during the iteration default: 1.0e-02*sqrt(n*eps) |
Info | {0, 1}, used to disable/enable display of verbose status information during iteration steps default: 0 |
MaxIter | positive integer, maximum number of iteration steps default: 100 |
RelTol | nonnegative scalar, tolerance for the relative error in the last iteration step default: 1.0e+01*n*eps |
Output
- Z - full-rank solution factor of (1) or (2), such that X = Z*Z'
- info - structure, containing the following information:
Entry | Meaning |
AbsErr | vector, containing the absolute error of the iteration matrix in each iteration step |
IterationSteps | number of performed iteration steps |
RelErr | vector, containing the relative error of the iteration matrix in each iteration step |
Reference
P. Benner, J. M. Claver, E. S. Quintana-Orti, Efficient solution of coupled Lyapunov equations via matrix sign function iteration, in: Proc. 3rd Portuguese Conf. on Automatic Control CONTROLO'98, Coimbra, 1998, pp. 205--210.
See Also