|
|
◆ ZCscIluSolve()
| Sub ZCscIluSolve |
( |
ByVal Trans As |
String, |
|
|
N As |
Long, |
|
|
Val() As |
Complex, |
|
|
Colptr() As |
Long, |
|
|
Rowind() As |
Long, |
|
|
D() As |
Complex, |
|
|
B() As |
Complex, |
|
|
X() As |
Complex, |
|
|
Optional Info As |
Long, |
|
|
Optional Base As |
Long = -1 |
|
) |
| |
Incomplete LU decomposition (ILU) preconditioner (Complex matrices) (CSC)
- Purpose
- This routine is the incomplete LU decomposition preconditioner (ILU) for the sparse linear equations. It solves the equation M*x = b, M^T*x = b or M^H*x = b, where M is the preconditioner matrix.
- Parameters
-
| [in] | Trans | = "N": solve M*x = b.
= "T": solve M^T*x = b.
= "C": solve M^H*x = b. |
| [in] | N | Dimension of preconditioner matrix. (N >= 0) (if N = 0, returns without computation) |
| [in] | Val() | Array Val(LVal - 1) (LVal >= Nnz) (Nnz is number of non-zero elements)
Values of non-zero elements of preconditioner matrix (lower triangular matrix L and upper triangular matrix U). |
| [in] | Colptr() | Array Colptr(LColptr - 1) (LColptr >= N + 1)
Column pointers of preconditioner matrix. |
| [in] | Rowind() | Array Rowind(LRowind - 1) (LRowind >= Nnz)
Row indices of preconditioner matrix. |
| [in] | D() | Array D(LD) (LD >= N)
The diagonal elements of upper triangular matrix U. |
| [in] | B() | Array B(LB - 1) (LB >= N)
Right hand side vector b. |
| [out] | X() | Array X(LX - 1) (LX >= N)
Solution vector x. |
| [out] | Info | (Optional)
= 0: Successful exit.
= i < 0: The (-i)-th argument is invalid. |
| [in] | Base | (Optional)
Indexing of Colptr() and Rowind().
= 0: Zero-based (C style) indexing: Starting index is 0.
= 1: One-based (Fortran style) indexing: Starting index is 1.
(default: Assumes 1 if Colptr(0) = 1, 0 otherwise) |
- Example Program
- See examples of ZCscIlu and ZCscIlu0.
|