Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Change language to: English - Português - 日本語 - Русский
Aide de Scilab >> Interface avec UMFPACK (sparse) > umf_luinfo

umf_luinfo

get information on LU factors

Syntax

[OK, nrow, ncol, lnz, unz, udiag_nz, it] = umf_luinfo(LU_ptr)

Arguments

LU_ptr

a pointer to umf lu factors (L,U,p,q, R)

OK

a scalar boolean

nrow, ncol, lnz, unz, udiag_nz, it

scalars (integers)

Description

This function may be used to know basic information about LU factors created with umf_lufact :

first OK is %t if LU_ptr is a valid pointer to an umfpack LU numeric handle (and %f else)

if OK is %t then:

nrow, ncol

are the matrix size (L is nrow x n and U is n x ncol where n = min(nrow,ncol)

lnz, unz

are the number of non zeros elements in L and in U;

udiag_nz

are the number of non zeros elements on the diagonal of U; if the matrix is square (nrow = ncol = n) then it is not inversible if udiag_nz < n (more precisely it appears to be numerically not inversible through the LU factorization).

it

0 if the factors are real and 1 if they are complex.

if OK is %f then all the others outputs are set to the empty matrix [].

Examples

// this is the test matrix from UMFPACK
A = sparse( [ 2  3  0  0  0;
3  0  4  0  6;
0 -1 -3  2  0;
0  0  1  0  0;
0  4  2  0  1] );
Lup = umf_lufact(A);
[OK, nrow, ncol, lnz, unz, udiag_nz, it] = umf_luinfo(Lup)  // OK must be %t, nrow=ncol = 5,
[L,U,p,q,R] = umf_luget(Lup);
nnz(L)  // must be equal to lnz
nnz(U)  // must be equal to unz
umf_ludel(Lup) // clear memory

• umfpack — solve sparse linear system
• umf_lufact — lu factorization of a sparse matrix
• umf_lusolve — solve a linear sparse system given the LU factors
• umf_ludel — utility function used with umf_lufact
• umf_luget — retrieve lu factors at the Scilab level