|
|
◆ z_csc_ilu_solve()
| void z_csc_ilu_solve |
( |
char |
trans, |
|
|
int |
n, |
|
|
const doublecomplex |
val[], |
|
|
const int |
colptr[], |
|
|
const int |
rowind[], |
|
|
int |
base, |
|
|
const doublecomplex |
d[], |
|
|
const doublecomplex |
b[], |
|
|
doublecomplex |
x[], |
|
|
int * |
info |
|
) |
| |
Incomplete LU decomposition preconditioner (ILU) (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] (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] (lcolptr >= n + 1)
Column pointers of preconditioner matrix. |
| [in] | rowind[] | Array rowind[lrowind] (lrowind >= nnz)
Row indices of preconditioner matrix. |
| [in] | base | 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. |
| [in] | d[] | Array d[ld] (ld >= n)
The diagonal elements of upper triangular matrix U. |
| [in] | b[] | Array b[lb] (lb >= n)
Right hand side vector b. |
| [out] | x[] | Array x[lx] (lx >= n)
Solution vector x. |
| [out] | info | = 0: Successful exit.
= i < 0: The (-i)-th argument is invalid. |
|