Visible to Intel only — GUID: GUID-2C3EA4B8-1203-4AB2-A8CD-39B99B89E762
Visible to Intel only — GUID: GUID-2C3EA4B8-1203-4AB2-A8CD-39B99B89E762
pardiso_getdiag
Returns diagonal elements of initial and factorized matrix.
Syntax
call pardiso_getdiag (pt, df, da, mnum, error)
Include Files
- mkl.fi, mkl_pardiso.f90
Description
This routine returns the diagonal elements of the initial and factorized matrix for a real or Hermitian matrix.
In order to use this routine, you must set iparm(56) to 1 before the main pardiso loop.
If iparm(24) is set to 10 (an improved two-level factorization algorithm for nonsymmetric matrices), Intel® oneAPI Math Kernel Library PARDISO will automatically use the classic algorithm for factorization.
Input Parameters
- pt
-
INTEGER for 32-bit or 64-bit architectures
INTEGER*8 for 64-bit architectures
Array with a size of 64. Handle to internal data structure for the Intel® oneAPI Math Kernel Library (oneMKL) PARDISO solver. The entries must be set to zero prior to the first call topardiso. Unique for factorization.
- mnum
-
INTEGER
Indicates the actual matrix for the solution phase of the Intel® oneAPI Math Kernel Library (oneMKL) PARDISO solver. With this scalar you can define the diagonal elements of the factorized matrix that you want to obtain. The value must be: 1 ≤mnum ≤ maxfct. In most applications this value is 1.
Output Parameters
- df
-
DOUBLE PRECISION- for real types of matrices and for double precision Intel® oneAPI Math Kernel Library (oneMKL) PARDISO (iparm(28)=0)
REAL- for real types of matrices and for single precision Intel® oneAPI Math Kernel Library (oneMKL) PARDISO (iparm(28)=1)
DOUBLE COMPLEX- for complex types of matrices and for double precision Intel® oneAPI Math Kernel Library (oneMKL) PARDISO (iparm(28)=0)
COMPLEX- for complex types of matrices and for single precision Intel® oneAPI Math Kernel Library (oneMKL) PARDISO (iparm(28)=1)
Array with a dimension of n. Contains diagonal elements of the factorized matrix after factorization.
NOTE:Elements of df correspond to diagonal elements of matrix Lcomputed during phase 22. Because during phase 22 Intel® oneAPI Math Kernel Library (oneMKL) PARDISO makes additional permutations to improve stability, it is possible that arraydf is not in line with the perm array computed during phase 11.
- da
-
DOUBLE PRECISION- for real types of matrices and for double precision Intel® oneAPI Math Kernel Library (oneMKL) PARDISO (iparm(28)=0)
REAL- for real types of matrices and for single precision Intel® oneAPI Math Kernel Library (oneMKL) PARDISO (iparm(28)=1)
DOUBLE COMPLEX- for complex types of matrices and for double precision Intel® oneAPI Math Kernel Library (oneMKL) PARDISO (iparm(28)=0)
COMPLEX- for complex types of matrices and for single precision Intel® oneAPI Math Kernel Library (oneMKL) PARDISO (iparm(28)=1)
Array with a dimension of n. Contains diagonal elements of the initial matrix.
NOTE:Elements of da correspond to diagonal elements of matrix Lcomputed during phase 22. Because during phase 22 Intel® oneAPI Math Kernel Library (oneMKL) PARDISO makes additional permutations to improve stability, it is possible that arrayda is not in line with the perm array computed during phase 11.
- error
-
INTEGER
The error indicator.
- error
- Information
- 0
-
no error
- -1
-
Diagonal information not turned on before pardiso main loop (iparm(56)=0).