Top
Back: mat_rk
Forward: pos_def
FastBack: matrix_lib
FastForward: Commutative algebra
Up: linalg_lib
Top: Singular 2-0-4 Manual
Contents: Table of Contents
Index: Index
About: About this document

D.3.2.15 U_D_O

Procedure from library linalg.lib (see linalg_lib).

Usage:
U_D_O(A); constant invertible matrix A

Return:
list Z: Z[1]=P , Z[2]=U , Z[3]=D , Z[4]=O
gives a permutation matrix P,
a normalized lower triangular matrix U ,
a diagonal matrix D, and
a normalized upper triangular matrix O
with P*A=U*D*O

Note:
Z[1]=-1 means that A is not regular (proc uses gaussred)

Example:
 
LIB "linalg.lib";
ring r = 0,(x),dp;
matrix A[5][5] = 10, 4,  0, -9,  8,
-3, 6, -6, -4,  9,
0, 3, -1, -9, -8,
-4,-2, -6, -10,10,
-9, 5, -1, -6,  5;
list Z = U_D_O(A);              //construct P,U,D,O s.t. P*A=U*D*O
print(Z[1]);                    //P
print(Z[2]);                    //U
print(Z[3]);                    //D
print(Z[4]);                    //O
print(Z[1]*A);                  //P*A
print(Z[2]*Z[3]*Z[4]);          //U*D*O


Top Back: mat_rk Forward: pos_def FastBack: matrix_lib FastForward: Commutative algebra Up: linalg_lib Top: Singular 2-0-4 Manual Contents: Table of Contents Index: Index About: About this document
            User manual for Singular version 2-0-4, May 2003, generated by texi2html.