Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 11/07/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

dfgmres_check

Checks consistency and correctness of the user defined data.

Syntax

dfgmres_check(n, x, b, RCI_request, ipar, dpar, tmp)

Include Files

  • Fortran: mkl_rci.fi, mkl_rci.f90

Description

The routine dfgmres_check checks consistency and correctness of the parameters to be passed to the solver routine dfgmres. However, this operation does not guarantee that the method gives the correct result. It only reduces the chance of making a mistake in the parameters of the routine. Skip this operation only if you are sure that the correct data is specified in the solver parameters.

The lengths of all vectors are assumed to have been defined in a previous call to the dfgmres_init routine.

In particular, the routine checks the consistency of ipar(16)-ipar(21) and ipar(1), ipar(15). If the values do not agree, the routine emits a warning and modifies ipar(16)-ipar(21) to comply with the values of ipar(1), ipar(15). A possible use case for this modification is a non-default value (not the one set by a possible call to dfgmres_init) of ipar(15).

Also, if none of the stopping criteria (ipar(8)-ipar(10)) has been enabled, both ipar(8) and ipar(9) will be set to 1.

NOTE: It is not strictly necessary to call the dfgmres_check routine unless the values of ipar(15) or ipar(1) are changed after the last call to dfgmres_init.

Input Parameters

ipar

Array of size 128. Refer to the FGMRES Common Parameters.

n

INTEGER. Sets the size of the problem.

x

DOUBLE PRECISION. Array of size n. Contains the initial approximation to the solution vector. Normally it is equal to 0 or to b.

b

DOUBLE PRECISION. Array of size n. Contains the right-hand side vector.

Output Parameters

RCI_request

INTEGER. Gives information about result of the routine.

ipar

INTEGER. Array of size 128. Refer to the FGMRES Common Parameters. Only ipar(8)-ipar(9) and ipar(16)-ipar(21) might be changed.

dpar

DOUBLE PRECISION. Array of size 128. Refer to the FGMRES Common Parameters.

tmp

DOUBLE PRECISION. Array of size ((2*ipar(15) + 1)*n + ipar(15)*(ipar(15) + 9)/2 + 1). Refer to the FGMRES Common Parameters.

Return Values

RCI_request= 0

Indicates that the task completed normally.

RCI_request= -1100

Indicates that the task is interrupted and the errors occur.

RCI_request= -1001

Indicates that there are some warning messages.

RCI_request= -1010

Indicates that the routine changed some parameters to make them consistent or correct.

RCI_request= -1011

Indicates that there are some warning messages and that the routine changed some parameters.