Mercurial > octave-nkf
diff src/DLD-FUNCTIONS/chol.cc @ 8402:2176f2b4599e
Fix sparse cholesky inversion
author | David Bateman <dbateman@free.fr> |
---|---|
date | Fri, 12 Dec 2008 23:18:20 +0100 |
parents | 4ceffd54031a |
children | b8ce8738a4d1 |
line wrap: on
line diff
--- a/src/DLD-FUNCTIONS/chol.cc Fri Dec 12 13:35:10 2008 +0100 +++ b/src/DLD-FUNCTIONS/chol.cc Fri Dec 12 23:18:20 2008 +0100 @@ -469,6 +469,24 @@ return retval; } +/* + +%!test +%! A = [2,0.2;0.2,1]; +%! issymmetric(A) +%! min(eig(A)) +%! Ainv = inv(A); +%! Ainv1 = cholinv(A); +%! Ainv2 = inv(sparse(A)); +%! Ainv3 = cholinv(sparse(A)); +%! Ainv4 = spcholinv(sparse(A)); +%! assert (norm(Ainv-Ainv1),1e-10) +%! assert (norm(Ainv-Ainv2),1e-10) +%! assert (norm(Ainv-Ainv3),1e-10) +%! assert (norm(Ainv-Ainv4),1e-10) + +*/ + DEFUN_DLD (chol2inv, args, , "-*- texinfo -*-\n\ @deftypefn {Loadable Function} {} chol2inv (@var{u})\n\