| |||||||
| |||||||
![]() | |||||||
Prototype | |||||||
template <class Matrix, class Vector, class VectorB, class Preconditioner, class Iteration> int bicgstab(const Matrix& A, Vector& x, const VectorB& b, const Preconditioner& M, Iteration& iter) ; | |||||||
![]() | |||||||
Description | |||||||
A return value of 0 indicates convergence within the
maximum number of iterations (determined by the iter object).
A return value of 1 indicates a failure to converge.
See: H. Van der Vorst, Bi-CGSTAB: A fast and smoothly converging variant of BiCG for the solution of nonsysmmetric linear systems, SIAM J. Sci. Statist. Comput. 13(1992), pp. 631-644 | |||||||
![]() | |||||||
Definition | |||||||
bicgstab.h | |||||||
![]() | |||||||
Preconditions | |||||||
| |||||||
![]() | |||||||
Complexity | |||||||
![]() | |||||||
Example | |||||||
In bicgstab.cc:
typedef matrix< Type, rectangle<>, array< compressed<> >, row_major >::type Matrix; Matrix A(5, 5); dense1D<Type> x(A.nrows(), Type(0)); dense1D<Type> b(A.ncols()); for (dense1D<Type>::iterator i=b.begin(); i!=b.end(); i++) *i = 1.; //SSOR preconditioner SSOR<Matrix> precond(A); //iteration noisy_iteration<double> iter(b, max_iter, 1e-6); //bicgstab algorithm bicgstab(A, x, b, precond(), iter); | |||||||
![]() | |||||||
Notes | |||||||
![]() | |||||||
See also | |||||||
Copyright ©
1998,1999 University of Notre Dame. All Rights Reserved.