MATLAB 帮助中心
求解关于 X 的西尔维斯特方程 AX + XB = C
X = sylvester(A,B,C)
X = sylvester(A,B,C) 将求解 X 返回到 西尔维斯特方程。
X
A,B,C
输入 A 是 m×m 矩阵,输入 B 是 n×n 矩阵,C 和 X 都是 m×n 矩阵。
A
B
C
示例
全部折叠
创建系数矩阵 A 和 B。
A = [1 -1 1; 1 1 -1; 1 1 1]; B = magic(3);
将 C 定义为 3×3 单位矩阵。
C = eye(3);
使用 sylvester 函数根据以上 A、B 和 C 值求解西尔维斯特方程。
sylvester
X = 3×3 0.1223 -0.0725 0.0131 -0.0806 -0.0161 0.1587 -0.0164 0.1784 -0.1072
结果为一个 3×3 矩阵。
创建一个 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];
将 C 定义为与 A 和 B 的相应大小匹配的 4×2 矩阵。
C = [1 0; 2 0; 0 3; 1 1]
C = 4×2 1 0 2 0 0 3 1 1
X = 4×2 0.4732 -0.3664 -0.4006 0.3531 0.3305 -0.1142 0.0774 0.3560
结果为一个 4×2 矩阵。
输入矩阵,指定为矩阵。输入 A 是 m×m 方阵,输入 B 是 n×n 方阵,输入C 是 m×n 矩形矩阵。如果任何输入矩阵是稀疏矩阵,该函数将返回错误。
数据类型: single | double 复数支持: 是
single
double
解,以大小和 C 相同的矩阵形式返回。如果 A 和 -B 的特征值相同(在这种情况下,解 X 是奇异值或不唯一),该函数将返回错误。
-B
西尔维斯特方程是
AX+XB=C.
当 A 和 -B 的特征值不同时,该方程具有唯一解。对于克罗内克张量积 ⊗,方程为
[I⊗A+BT⊗I]X(:)=C(:),
其中,I 是单位矩阵,X(:) 和 C(:) 将矩阵 X 和 C 表示为单列向量。
I
X(:)
C(:)
全部展开
用法说明和限制:
当两个输入矩阵 A 或 B 中的任一个包含一个非有限值时,生成的代码不会引发错误。在这种情况下,输出包含 NaN 值。
backgroundPool
ThreadPool
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
在 R2014a 中推出
ctranspose | kron | eig | mtimes | mldivide
ctranspose
kron
eig
mtimes
mldivide
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处