Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
?getc2
Computes the LU factorization with complete pivoting of the general n-by-n matrix.
Syntax
call sgetc2(n, a, lda, ipiv, jpiv, info)
call dgetc2(n, a, lda, ipiv, jpiv, info)
call cgetc2(n, a, lda, ipiv, jpiv, info)
call zgetc2(n, a, lda, ipiv, jpiv, info)
Include Files
mkl.fi
Description
The routine computes an LU factorization with complete pivoting of the n -by- n matrix A . The factorization has the form A = P*L*U*Q , where P and Q are permutation matrices, L is lower triangular with unit diagonal elements and U is upper triangular.
The LU factorization computed by this routine is used by ?latdf (Uses the LU factorization of the n-by-n matrix computed by ?getc2 and computes a contribution to the reciprocal Dif-estimate.) to compute a contribution to the reciprocal Dif-estimate.
Input Parameters
- n
-
INTEGER. Specifies the order of the matrix A. The value of n must be at least zero.
- a
-
REAL for sgetc2 DOUBLE PRECISION for dgetc2 COMPLEX for cgetc2 DOUBLE COMPLEX for zgetc2 . Array a(lda,*) contains the n -by- n matrix A to be factored. The second dimension of a must be at least max(1, n) ;
- lda
-
INTEGER . The leading dimension of a ; at least max(1, n) .
Output Parameters
- a
-
On exit, the factors L and U from the factorization A = P*L*U*Q ; the unit diagonal elements of L are not stored. If U ( k , k ) appears to be less than smin , U ( k , k ) is given the value of smin , that is giving a nonsingular perturbed system.
- ipiv
-
INTEGER . Array, DIMENSION at least max(1,n) . The pivot indices: for 1 ≤ i ≤ n , row i of the matrix has been interchanged with row ipiv (i) .
- jpiv
-
INTEGER . Array, DIMENSION at least max(1,n) . The pivot indices: for 1 ≤ j ≤ n , column j of the matrix has been interchanged with column jpiv (j) .
info
INTEGER .
If info = 0 , the execution is successful.
If info = k>0 , U ( k , k ) is likely to produce overflow if we try to solve for x in A*x = b . So U is perturbed to avoid the overflow.