sylv
シルベスタ式 A*X + X*B = C または A*X*B + X = C を解決します
呼び出し手順
sylv(A, B, C, 'c') sylv(A, B, C, 'd')
引数
- A, B, C
適当な次元の実数行列.
- flag 'c' or 'd'
文字列 (
'c'
または'd'
)
説明
X = sylv(A, B, C, 'c') は以下の
"連続時間" シルベスタ方程式の解X
を計算します,
A*X + X*B = C
.
X = sylv(A, B, C, 'd') は以下の
"離散時間" シルベスタ方程式の解X
を計算します,
A*X*B + X = C
.
X = -sylv(-A, B, C, 'd') computes X
as solution of the real "discrete time" Sylvester equation
A*X*B - X = C
.
例
A = rand(4, 4); C = rand(4, 3); B = rand(3, 3); // Continuous time Sylvester equation: X = sylv(A, B, C, 'c'); norm(A*X + X*B - C) // Modified Discrete time Sylvester equation: X = sylv(A, B, C, 'd'); norm(A*X*B - X - C) // Real Discrete time Sylvester equation: X = -sylv(-A, B, C, 'd'); norm(A*X*B - X - C)
参考
- lyap — リアプノフ方程式
Report an issue | ||
<< signm | Matrix Computation | Model Transformation >> |