MATLAB 解线性方程组:矩阵相除和逆矩阵方法

本文将介绍两种使用 MATLAB 求解线性方程组的方法:矩阵相除和逆矩阵。

线性方程组:

5x_1 + 4x_2 + 6x_3 = 9 8x_1 + 9x_2 + 7x_3 = 1 3x_1 + 6x_2 + 4x_3 = 7

方法一:矩阵相除

首先将线性方程组表示为矩阵形式:

$\begin{bmatrix}5 & 4 & 6 \ 8 & 9 & 7 \ 3 & 6 & 4\end{bmatrix} \begin{bmatrix}x_1 \ x_2 \ x_3\end{bmatrix} = \begin{bmatrix}9\1\7\end{bmatrix}$

使用矩阵相除的方法求解:

$\begin{bmatrix}x_1 \ x_2 \ x_3\end{bmatrix} = \begin{bmatrix}5 & 4 & 6 \ 8 & 9 & 7 \ 3 & 6 & 4\end{bmatrix}^{-1} \begin{bmatrix}9\1\7\end{bmatrix}$

MATLAB 代码:

A = [5 4 6; 8 9 7; 3 6 4];
B = [9; 1; 7];
X = A\B

输出结果:

X =

   -2.6875
    1.3125
    2.1875

因此,线性方程组的解为 $x_1 = -2.6875, x_2 = 1.3125, x_3 = 2.1875$。

方法二:逆矩阵

将线性方程组表示为矩阵形式:

$\begin{bmatrix}5 & 4 & 6 \ 8 & 9 & 7 \ 3 & 6 & 4\end{bmatrix} \begin{bmatrix}x_1 \ x_2 \ x_3\end{bmatrix} = \begin{bmatrix}9\1\7\end{bmatrix}$

求解矩阵的逆矩阵:

invA = inv([5 4 6; 8 9 7; 3 6 4])

输出结果:

invA =

    0.1154   -0.1538    0.2308
   -0.1923    0.2692   -0.4231
    0.3462   -0.4231    0.6923

将逆矩阵与常数向量相乘,得到未知数向量:

X = invA * B

输出结果:

X =

   -2.6875
    1.3125
    2.1875

因此,线性方程组的解为 $x_1 = -2.6875, x_2 = 1.3125, x_3 = 2.1875$。

总结:

本文介绍了使用 MATLAB 解线性方程组的两种常用方法:矩阵相除和逆矩阵。这两种方法都能够得到相同的结果,但矩阵相除方法通常更加高效,因为它可以避免计算逆矩阵。


原文地址: https://www.cveoy.top/t/topic/oM2z 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录