Previous Up Next

15.3.5  LU decomposition

The LU decomposition of a square matrix A is P A=L U, where P is a permutation matrix, L is lower triangular with ones on the diagonal, and U is upper triangular. The lu command finds the LU decomposition of a matrix.

The permutation matrix P is defined from p by:

  Pi,p(i)=1,    Pi,j=0  if  j  ≠ p(i).

In other words, it is the identity matrix where the rows are permuted according to the permutation p. You can get the permutation matrix from p by P:=permu2mat(p) (see Section 12.2.6).

Example

A:=[[3.,5.],[4.,5.]]:; (p,L,U):=lu(A)
     
⎡
⎣
1,0⎤
⎦
,
⎡
⎢
⎣
10
0.751
⎤
⎥
⎦
,
⎡
⎢
⎣
4.05.0
01.25
⎤
⎥
⎦
          

Verification:

permu2mat(p)*A; L*U
     
⎡
⎢
⎣
4.05.0
3.05.0
⎤
⎥
⎦
,
⎡
⎢
⎣
4.05.0
3.05.0
⎤
⎥
⎦
          

Note that the permutation is different for exact input (the choice of pivot is the simplest instead of the largest in absolute value).

lu([[1,2],[3,4]])
     
⎡
⎣
0,1⎤
⎦
,
⎡
⎢
⎣
10
31
⎤
⎥
⎦
,
⎡
⎢
⎣
12
0−2
⎤
⎥
⎦
          
lu([[1.0,2],[3,4]])
     
⎡
⎣
1,0⎤
⎦
,
⎡
⎢
⎣
10
0.3333333333331
⎤
⎥
⎦
,
⎡
⎢
⎣
3.04.0
00.666666666667
⎤
⎥
⎦
          

Previous Up Next