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

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

real_gen_precon_ilu_solve solves a system of linear equations involving the incomplete preconditioning matrix generated by real_gen_precon_ilu().

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

https://www.nag.com/numeric/nl/nagdoc_28.5/flhtml/f11/f11dbf.html

Parameters
transstr, length 1

Specifies whether or not the matrix is transposed.

is solved.

is solved.

afloat, array-like, shape

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

irowint, array-like, shape

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

icolint, array-like, shape

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

ipivpint, array-like, shape

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

ipivqint, array-like, shape

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

istrint, array-like, shape

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

idiagint, array-like, shape

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

yfloat, 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
xfloat, 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

real_gen_precon_ilu_solve solves a system of linear equations

according to the value of the argument , where the matrix , corresponds to an incomplete decomposition of a sparse matrix stored in coordinate storage (CS) format (see the F11 Introduction), as generated by real_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 real_gen_precon_ilu_solve through the matrix

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

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

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