SSOR<Matrix> [MTL Home] Programmers Guide
  Contents | Index |  Search 


Category:itl,functors Component type:type
Description
 Usage:
     Matrix A;
     SSOR precond(A);
     qmr(A, x, b, precond.left(), precond.right(), iter);
     cg(A, x, b, precond(), iter);
Matrix has to be unsymmetric. For symmetric one, use incomlete cholesky. Notes: The idea under a concrete Preconditioner such as Incomplete Cholesky is to create a Preconditioner object to use in iterative methods.
Example
In ssor.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);
  
  noisy_iteration<double> iter(b, max_iter, 1e-6);
  qmr(A, x, b, precond.left(), precond.right(), iter);

Definition
ssor.h
Template Parameters

ParameterDescriptionDefault
MatrixMatrix  
Model of
Members
Member Where defined Description
Precond    
Left    
Right    
SSOR (const Matrix& A)    
Precond operator() ()   return a right or Left Preconditioner object.
Left left ()   return the Left part of a Split Preconditioner
Right right ()   return the Right part of a Split Preconditioner
New members
Notes
See also

[MTL Home] Copyright © 1998,1999 University of Notre Dame. All Rights Reserved.