Copyright (c) 2003, The Regents of the University of California, through Lawrence Berkeley National Laboratory (subject to receipt of any required approvals from U.S. Dept. of Energy)
All rights reserved.
The source code is distributed under BSD license, see the file License.txt at the top-level directory.
– SuperLU routine (version 5.0) –
Lawrence Berkeley National Laboratory
November, 2010
August, 2011
This example shows that ILU is computed from the equilibrated matrix,
but the preconditioned GMRES is applied to the original system.
The driver routine SGSISX is called twice to perform factorization
and apply preconditioner separately.
Note that SGSISX performs the following factorization:
Pr*Dr*A*Dc*Pc^T ~= LU
with Pr being obtained from MC64 statically then partial pivoting
dynamically. On return, A is overwritten as A1 = Dr*A*Dc.
We need to save a copy of the original matrix A, then solve
the original system, A*x = B, using FGMRES.
Each GMRES step requires requires 2 procedures:
1) Apply preconditioner M^{-1} = Dc*Pc^T*U^{-1}*L^{-1}*Pr*Dr
2) Matrix-vector multiplication: w = A*v