This function computes the solution X of the continuous-time Sylvester equation
A*X + X*B = C
using the Schur method for Sylvester equations proposed by Bartels and Stewart [1].
function sylvester extends Modelica.Icons.Function; import MatricesMSL = Modelica.Math.Matrices; input Real A[:, :] "Matrix A"; input Real B[:, :] "Matrix B"; input Real C[size(A, 1), size(B, 2)] "Matrix C"; input Boolean aIsSchur = false "True if A has already real Schur form"; input Boolean bIsSchur = false "True if B has already real Schur form"; output Real X[size(A, 1), size(B, 2)] "Solution of Sylvester equation"; end sylvester;
Date | Author | Comment |
---|---|---|
2010-05-31 | Marcus Baur, DLR-RM | Realization |