MATLAB lu()分解函数的用法
矩阵的 LU 分解又称矩阵的三角分解,它的目的是将一个矩阵分解成一个下三角矩阵 L 和一个上三角矩阵 U 的乘积,即 A=LU。这种分解在解线性方程组、求矩阵的逆等计算中有着重要的作用。
在 MATLAB 中,实现 LU 分解的函数是 lu(),它的调用格式及说明如下表所示。
【实例】分别用 lu() 函数的两种调用格式对对称正定矩阵 A 进行 LU 分解,比较二者的不同。MATLAB 程序如下:
在 MATLAB 中,实现 LU 分解的函数是 lu(),它的调用格式及说明如下表所示。
| 调用格式 | 说明 |
|---|---|
| [L,U] = lu(A) | 对矩阵 A 进行 LU 分解,其中 L 为单位下三角矩阵或其变换形式,U 为上三角矩阵。 |
| [L, U, P] = lu(A) | 对矩阵 A 进行 LU 分解,其中 L 为单位下三角矩阵,U 为上三角矩阵,P 为置换矩阵,满足 LU=PA。 |
【实例】分别用 lu() 函数的两种调用格式对对称正定矩阵 A 进行 LU 分解,比较二者的不同。MATLAB 程序如下:
>> clear % 清除工作区的变量
>> A = gallery('minij',4) % 生成4阶对称正定测试矩阵A
A =
1 1 1 1
1 2 2 2
1 2 3 3
1 2 3 4
>> [L,U]=lu(A) % 对测试矩阵A进行LU分解,返回单位下三角矩阵和上三角矩阵
L =
1 0 0 0
1 1 0 0
1 1 1 0
1 1 1 1
U =
1 1 1 1
0 1 1 1
0 0 1 1
0 0 0 1
>> [L,U,P]=lu(A) % 对测试矩阵A进行LU分解,返回单位下三角矩阵、上三角矩阵和置换矩阵
L =
1 0 0 0
1 1 0 0
1 1 1 0
1 1 1 1
U =
1 1 1 1
0 1 1 1
0 0 1 1
0 0 0 1
P =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
ICP备案:
公安联网备案: