sylvester
Sylvester 方程式 AX + XB = C を解いて X を得る
説明
は、Sylvester 方程式の解 X
= sylvester(A,B,C
)X
を返します。
入力 A
は m 行 m 列の行列、入力 B
は n 行 n 列の行列、C
と X
は両方とも m 行 n 列の行列です。
例
3 行 3 列出力をもつ Sylvester 方程式を解く
係数行列 A
と B
を作成します。
A = [1 -1 1; 1 1 -1; 1 1 1]; B = magic(3);
3 行 3 列の単位行列として C
を定義します。
C = eye(3);
関数 sylvester
を使用して、A
、B
および C
の値について、Sylvester 方程式を解きます。
X = sylvester(A,B,C)
X = 3×3
0.1223 -0.0725 0.0131
-0.0806 -0.0161 0.1587
-0.0164 0.1784 -0.1072
結果は、3 行 3 列の行列になります。
4 行 2 列出力をもつ Sylvester 方程式を解く
4 行 4 列の係数行列 A
と 2 行 2 列の係数行列 B
を作成します。
A = [1 0 2 3; 4 1 0 2; 0 5 5 6; 1 7 9 0]; B = [0 -1; 1 0];
A
と B
の対応するサイズに一致するように C
を 4 行 2 列の行列として定義します。
C = [1 0; 2 0; 0 3; 1 1]
C = 4×2
1 0
2 0
0 3
1 1
関数 sylvester
を使用して、A
、B
および C
の値について、Sylvester 方程式を解きます。
X = sylvester(A,B,C)
X = 4×2
0.4732 -0.3664
-0.4006 0.3531
0.3305 -0.1142
0.0774 0.3560
結果は、4 行 2 列の行列になります。
入力引数
A,B,C
— 入力行列
行列
入力行列。行列として指定します。入力 A
は m 行 m 列の正方行列、入力 B
は n 行 n 列の正方行列、C
は m 行 n 列の方形行列です。入力行列のいずれかがスパースの場合、関数はエラーを返します。
データ型: single
| double
複素数のサポート: あり
出力引数
X
— 解
行列
C
と同じサイズの行列として返される解。A
と -B
の固有値が異なる値ではない場合、関数はエラーを返します (この場合、解 X
は特異であるか、一意ではありません)。
詳細
Sylvester 方程式
Sylvester 方程式は次のとおりです。
A
と -B
の固有値が異なる場合、方程式では一意の解が得られます。クロネッカー テンソル積 を使用すると、方程式は次のようになります。
I
は単位行列、X(:)
と C(:)
は行列 X
と C
を 1 列のベクトルとして表します。
拡張機能
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
使用上の注意事項および制限事項:
2 つの入力行列
A
またはB
のいずれかに非有限値が含まれる場合、生成されたコードはエラーを発行しません。代わりに、出力には NaN 値が含まれます。
スレッドベースの環境
MATLAB® の backgroundPool
を使用してバックグラウンドでコードを実行するか、Parallel Computing Toolbox™ の ThreadPool
を使用してコードを高速化します。
この関数はスレッドベースの環境を完全にサポートしています。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
バージョン履歴
R2014a で導入
参考
ctranspose
| kron
| eig
| mtimes
| mldivide
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)