matlab中矩阵方程的求解器,矩阵方程的计算求解(Matlab实现)

  • Post author:
  • Post category:其他


一、Lyapunov方程的计算求解

1、连续Lyapunov方程

连续Lyapunov方程可以表示为:

AX + XA* = -C % 其中A*是A的转置

Lyapunov方程源于微分方程稳定性理论,其中要求-C为对称正定的nxn矩阵,从而可以证明解X亦为nxn对称矩阵。Lyapunov类的方程求解是很困难的,可以利用Matlab控制系统工具箱中提供的lyap函数求解,调用格式为

X = lyap(A, C)

matlab代码:

A = [1 2 3;4 5 6;7 8 0]; C = -[10 5 4;5 6 7;4 7 9];

X = lyap(A, C)

norm(A*X + X*A’ + C) % 验证解的情况

% 结果:

>> Matrix_equation

X =

-3.9444 3.8889 0.3889

3.8889 -2.7778 0.2222

0.3889 0.2222 -0.1111

ans =

2.3211e-14

2、Lyapunov方程的解析解

3、离散 Lyapunov方程

离散Lyapunov方程可以表示为:

AXA* – X + Q = 0 % 其中A*是A的转置矩阵

该方程可以由MATLAB控制系统工具箱的dlyap函数直接求解。该函数的调用格式为:

X = dlyap(A, Q)

matlab代码为:

A = [1 2 3;4 5 6;7 8 0];