Periodic Sylvester equation solvers
Periodic differential Sylvester equations (in preparation)
Periodic difference Sylvester equations (WIP)
pdsylvc
Solution of periodic discrete-time Sylvester equations of continuous-time flavor.pfdsylvc
Solution of forward-time periodic discrete-time Sylvester equations of continuous-time flavor.prdsylvc
Solution of reverse-time periodic discrete-time Sylvester equations of continuous-time flavor.
Periodic differential Sylvester equation solvers
Periodic difference Sylvester equation solvers
PeriodicMatrixEquations.pdsylvc
— Functionpdsylvc(A, B, C; rev = false, isgn = 1, fast = true) -> X
Solve the periodic discrete-time Sylvester equation of continuous-time flavour
A*X + isgn*σX*B = C for rev = false
or
isgn*A*σX + X*B = C for rev = true,
where σ
is the forward shift operator σX(i) = X(i+1)
and abs(isgn) = 1
.
The periodic matrices A
, B
and C
must have the same type and commensurate periods. The resulting periodic solution X
has the period set to the least common commensurate period of A
, B
and C
and the number of subperiods is adjusted accordingly.
The periodic discrete analog of the Bartels-Stewart method based on the periodic Schur form of the periodic matrices A
and B
is employed (see Appendix II of [1]). If fast = true
, the QR factorization of bordered-almost-block-diagonal (BABD) matrix algorithm of [2] is employed to solve periodic Sylvester equations up to order 2. This option is more appropriate for large periods. If fast = false
, the QR factorization of the cyclic Kronecker form for the periodic Sylvester operator is used to to solve periodic Sylvester equations up to order 2.
For the existence of a solution A
and B
must not have characteristic multipliers α
and β
such that α +isgn*β = 0
.
Reference:
[1] A. Varga. Robust and minimum norm pole assignment with periodic state feedback. IEEE Trans. on Automatic Control, vol. 45, pp. 1017-1022, 2000.
[2] R. Granat, B. Kågström, and D. Kressner, Computing periodic deflating subspaces associated with a specified set of eigenvalues. BIT Numerical Mathematics vol. 47, pp. 763–791, 2007.
PeriodicMatrixEquations.pfdsylvc
— Functionpfdsylvc(A, B, C; isgn = 1, fast = true) -> X
Solve the forward-time periodic discrete-time Sylvester equation of continuous-time flavour
A*X + isgn*σX*B = C ,
where σ
is the forward shift operator σX(i) = X(i+1)
and abs(isgn) = 1
.
The periodic matrices A
, B
and C
must have the same type and commensurate periods. The resulting periodic solution X
has the period set to the least common commensurate period of A
, B
and C
and the number of subperiods is adjusted accordingly.
PeriodicMatrixEquations.prdsylvc
— Functionprdsylvc(A, B, C; isgn = 1, fast = true) -> X
Solve the reverse-time periodic discrete-time Sylvester equation of continuous-time flavour
isgn*A*σX + X*B = C ,
where σ
is the forward shift operator σX(i) = X(i+1)
and abs(isgn) = 1
.
The periodic matrices A
, B
and C
must have the same type and commensurate periods. The resulting periodic solution X
has the period set to the least common commensurate period of A
, B
and C
and the number of subperiods is adjusted accordingly.