Retrieve the Cholesky factorization at the scilab level (original) (raw)

Scilab 5.3.3

Please note that the recommended version of Scilab is 2026.0.1. This page might be outdated.
See the recommended documentation of this function

Scilab help >> UMFPACK Interface (sparse) > taucs_chget

taucs_chget

retrieve the Cholesky factorization at the scilab level

Calling Sequence

[Ct,p] = taucs_chget(C_ptr)

Arguments

C_ptr

a pointer to the Cholesky factorization (C,p : A(p,p)=CC')

Ct

a scilab sparse matrix (you get the upper triangle i.e. Ct is equal to C')

p

column vector storing the permutation

Description

This function may be used if you want to plot the sparse pattern of the Cholesky factorization (or if you code something which use the factors). Traditionnaly, the factorization is written :

with P' the permutation matrix associated to the permutation p. As we get the upper triangle Ct (= C'), in scilab syntax we can write :

Examples

A = sparse( [ 2 -1 0 0 0; -1 2 -1 0 0; 0 -1 2 -1 0; 0 0 -1 2 -1; 0 0 0 -1 2] ); Cp = taucs_chfact(A); [Ct, p] = taucs_chget(Cp); full(A(p,p) - Ct'*Ct)
taucs_chdel(Cp)

stacksize(3000000)

[A] = ReadHBSparse(SCI+"/modules/umfpack/examples/bcsstk24.rsa");

Cptr = taucs_chfact(A);

[Ct, p] = taucs_chget(Cptr);

xset("window",0) ; clf() PlotSparse(A) ; xtitle("Initial matrix A (bcsstk24.rsa)")

B = A(p,p); xset("window",1) ; clf() PlotSparse(B) ; xtitle("Permuted matrix B = A(p,p)")

xset("window",2) ; clf() PlotSparse(Ct) ; xtitle("The pattern of Ct (A(p,p) = C*Ct)")

[OK, n, cnz] = taucs_chinfo(Cptr)

cnz_exact = nnz(Ct)

taucs_chdel(Cptr)

See Also

Authors