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

?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 to compute a contribution to the reciprocal Dif-estimate.

Input Parameters

n

INTEGER. The order of the matrix A (n 0).

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.