# naginterfaces.library.sparse.complex_​gen_​precon_​ilu_​solve¶

naginterfaces.library.sparse.complex_gen_precon_ilu_solve(trans, a, irow, icol, ipivp, ipivq, istr, idiag, y, check='N')[source]

complex_gen_precon_ilu_solve solves a system of complex linear equations involving the incomplete preconditioning matrix generated by complex_gen_precon_ilu().

For full information please refer to the NAG Library document for f11dp

https://www.nag.com/numeric/nl/nagdoc_28.7/flhtml/f11/f11dpf.html

Parameters
transstr, length 1

Specifies whether or not the matrix is transposed.

is solved.

is solved.

acomplex, array-like, shape

The values returned in the array by a previous call to complex_gen_precon_ilu().

irowint, array-like, shape

The values returned in arrays , , , , and by a previous call to complex_gen_precon_ilu().

icolint, array-like, shape

The values returned in arrays , , , , and by a previous call to complex_gen_precon_ilu().

ipivpint, array-like, shape

The values returned in arrays , , , , and by a previous call to complex_gen_precon_ilu().

ipivqint, array-like, shape

The values returned in arrays , , , , and by a previous call to complex_gen_precon_ilu().

istrint, array-like, shape

The values returned in arrays , , , , and by a previous call to complex_gen_precon_ilu().

idiagint, array-like, shape

The values returned in arrays , , , , and by a previous call to complex_gen_precon_ilu().

ycomplex, array-like, shape

The right-hand side vector .

checkstr, length 1, optional

Specifies whether or not the CS representation of the matrix should be checked.

Checks are carried on the values of , , , , , and .

None of these checks are carried out.

Returns
xcomplex, ndarray, shape

The solution vector .

Raises
NagValueError
(errno )

On entry, .

Constraint: or .

(errno )

On entry, .

Constraint: or .

(errno )

On entry, .

Constraint: .

(errno )

On entry, is a repeated value: .

(errno )

On entry, , , .

Constraint: and .

(errno )

On entry, is a repeated value: .

(errno )

On entry, , , .

Constraint: and .

(errno )

On entry, is inconsistent with : .

(errno )

On entry, appears to be incorrect: .

(errno )

On entry, the location () is a duplicate: .

(errno )

On entry, is out of order: .

(errno )

On entry, , , and .

Constraint: and .

(errno )

On entry, , , .

Constraint: and .

(errno )

On entry, appears to be invalid.

Notes

complex_gen_precon_ilu_solve solves a system of complex linear equations

according to the value of the argument , where the matrix corresponds to an incomplete decomposition of a complex sparse matrix stored in coordinate storage (CS) format (see the F11 Introduction), as generated by complex_gen_precon_ilu().

In the above decomposition is a lower triangular sparse matrix with unit diagonal elements, is a diagonal matrix, is an upper triangular sparse matrix with unit diagonal elements and, and are permutation matrices. , and are supplied to complex_gen_precon_ilu_solve through the matrix

which is an by sparse matrix, stored in CS format, as returned by complex_gen_precon_ilu(). The permutation matrices and are returned from complex_gen_precon_ilu() via the arrays and .

It is envisaged that a common use of complex_gen_precon_ilu_solve will be to carry out the preconditioning step required in the application of complex_gen_basic_solver() to sparse complex linear systems. complex_gen_precon_ilu_solve is used for this purpose by the Black Box function complex_gen_solve_ilu().

complex_gen_precon_ilu_solve may also be used in combination with complex_gen_precon_ilu() to solve a sparse system of complex linear equations directly (see Further Comments).