2
%TEST21 test cs_updown, chol_updown2
8
% Copyright 2006-2007, Timothy A. Davis.
9
% http://www.cise.ufl.edu/research/sparse
22
n = 1+fix (100 * rand (1)) ;
24
fprintf ('n: %d\n', n) ;
28
A = A + 1i * sprand (A) ;
30
A = A+A' + 100 * speye (n) ;
36
A = sparse (A (p,p)) ;
61
k = 1+fix (n * rand (1)) ;
62
if (k <= 0 | k > n) %#ok
66
w = sprandn (L (:,k)) ;
69
Lnew = cs_updown (L, w, parent) ;
70
err6 = norm (Lnew*Lnew' - Anew, 1) ;
72
Lnew = cs_updown (L, w, parent, '+') ;
73
err7 = norm (Lnew*Lnew' - Anew, 1) ;
75
[Lnew, wnew] = chol_updown2 (L, 1, w) ;
76
err2 = norm (Lnew*Lnew' - Anew, 1) ;
77
err10 = norm (wnew - (L\w)) ;
79
L3 = chol_updown2 (L, +1, w) ;
80
err9 = norm (L3*L3' - Anew, 1) ;
84
[L2, wnew] = chol_updown2 (Lnew, -1, w) ;
85
err3 = norm (L2*L2' - A, 1) ;
86
err11 = norm (wnew - (Lnew\w)) ;
88
L2 = cs_updown (Lnew, w, parent, '-') ;
89
err5 = norm (L2*L2' - A, 1) ;
91
L2 = chol_updown2 (Lnew, -1, w) ;
92
err8 = norm (L2*L2' - A, 1) ;
94
err = max ([err2 err3 err5 err6 err7 err9 err8 err10 err11]) ;
96
fprintf (' k %3d %6.2e\n', k, err) ;