Main Content

sylvester

求解关于 X 的西尔维斯特方程 AX + XB = C

说明

示例

X = sylvester(A,B,C) 将求解 X 返回到 西尔维斯特方程

输入 A 是 m×m 矩阵,输入 B 是 n×n 矩阵,CX 都是 m×n 矩阵。

示例

全部折叠

创建系数矩阵 AB

A = [1 -1 1; 1 1 -1; 1 1 1];
B = magic(3);

C 定义为 3×3 单位矩阵。

C = eye(3);

使用 sylvester 函数根据以上 ABC 值求解西尔维斯特方程。

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×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 定义为与 AB 的相应大小匹配的 4×2 矩阵。

C = [1 0; 2 0; 0 3; 1 1]
C = 4×2

     1     0
     2     0
     0     3
     1     1

使用 sylvester 函数根据以上 ABC 值求解西尔维斯特方程。

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 是 m×m 方阵,输入 B 是 n×n 方阵,输入C 是 m×n 矩形矩阵。如果任何输入矩阵是稀疏矩阵,该函数将返回错误。

数据类型: single | double
复数支持:

输出参数

全部折叠

解,以大小和 C 相同的矩阵形式返回。如果 A-B 的特征值相同(在这种情况下,解 X 是奇异值或不唯一),该函数将返回错误。

详细信息

全部折叠

西尔维斯特方程

西尔维斯特方程是

AX+XB=C.

A-B 的特征值不同时,该方程具有唯一解。对于 Kronecker 张量积 ,方程为

[IA+BTI]X(:)=C(:),

其中,I 是单位矩阵,X(:)C(:) 将矩阵 XC 表示为单列向量。

扩展功能

版本历史记录

在 R2014a 中推出

另请参阅

| | | |