Mercurial > octave
changeset 17423:0b93af1023f6
Merge away extra head
author | Jordi Gutiérrez Hermoso <jordigh@octave.org> |
---|---|
date | Mon, 16 Sep 2013 10:25:59 -0400 |
parents | 7ad3b9ca66f5 (diff) 096280194ca3 (current diff) |
children | 8c22a8d42833 |
files | |
diffstat | 1 files changed, 7 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/scripts/sparse/bicgstab.m Sun Sep 15 21:36:22 2013 +0200 +++ b/scripts/sparse/bicgstab.m Mon Sep 16 10:25:59 2013 -0400 @@ -145,7 +145,7 @@ flag = 1; for iter = 1:maxit - rho_1 = res' * rr; + rho_1 = rr' * res; if (iter == 1) p = res; @@ -163,7 +163,7 @@ shat = precon (s); t = Ax (shat); - omega = (t' * s) / (t' * t); + omega = (s' * t) / (t' * t); x = x + alpha * phat + omega * shat; res = s - omega * t; rho_2 = rho_1; @@ -248,3 +248,8 @@ %! [x, flag, relres, iter, resvec] = bicgstab (A, b, tol, [], diag (diag (A))); %! assert (x, ones (size (b)), 1e-7); +%!test +%! A = [1 + 1i, 1 + 1i; 2 - 1i, 2 + 1i]; +%! b = A * [1; 1]; +%! [x, flag, relres, iter, resvec] = bicgstab (A, b); +%! assert (x, [1; 1], 1e-6);