Developer Reference for Intel® oneAPI Math Kernel Library for C
mkl_pardiso_pivot
Replaces routine which handles Intel® oneAPI Math Kernel Library (oneMKL) PARDISO pivots with user-defined routine.
Syntax
voidmkl_pardiso_pivot ( constvoid *ai , void*bi , constvoid*eps );
Include Files
mkl.h
Description
The mkl_pardiso_pivot routine allows you to handle diagonal elements which arise during numerical factorization that are zero or near zero. By default, Intel® oneMKL PARDISO determines that a diagonal element bi is a pivot if bi < eps , and if so, replaces it with eps . But you can provide your own routine to modify the resulting factorized matrix in case there are small elements on the diagonal during the factorization step.
Input Parameters
- ai
-
DOUBLE PRECISION - for real types of matrices ( mtype =2, -2, 4, and 6) and for double precision Intel® oneMKL PARDISO ( iparm(28) =0) Diagonal element of initial matrix corresponding to pivot element.
- bi
-
DOUBLE PRECISION - for real types of matrices ( mtype =2, -2, 4, and 6) and for double precision Intel® oneMKL PARDISO ( iparm(28) =0) Diagonal element of factorized matrix that could be chosen as a pivot element.
- eps
-
DOUBLE PRECISION Scalar to compare with diagonal of factorized matrix. On input equal to parameter described by iparm(10)iparm(9) .
Output Parameters
- bi
-
In case element is chosen as a pivot, value with which to replace the pivot.