getc2#

Functions

void sgetc2(
    const INT           n,
          f32* restrict A,
    const INT           lda,
          INT* restrict ipiv,
          INT* restrict jpiv,
          INT*          info
);
void sgetc2(const INT n, f32 *restrict A, const INT lda, INT *restrict ipiv, INT *restrict jpiv, INT *info)#

SGETC2 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.

This is the Level 2 BLAS algorithm.

Parameters

in
n

The order of the matrix A. n>=0.

inout
A

Array of dimension (lda, n). On entry, the n-by-n matrix A to be factored. 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, i.e., giving a nonsingular perturbed system.

in
lda

The leading dimension of the array A. lda>=max(1,n).

out
ipiv

Array of dimension n. The pivot indices; for 0<=i<n, row i of the matrix has been interchanged with row ipiv[i].

out
jpiv

Array of dimension n. The pivot indices; for 0<=j<n, column j of the matrix has been interchanged with column jpiv[j].

out
info

  • info=0: successful exit

  • info>0: if info=k, U(k,k) is likely to produce overflow if we try to solve for x in Ax = b. So U is perturbed to avoid the overflow.

Functions

void dgetc2(
    const INT           n,
          f64* restrict A,
    const INT           lda,
          INT* restrict ipiv,
          INT* restrict jpiv,
          INT*          info
);
void dgetc2(const INT n, f64 *restrict A, const INT lda, INT *restrict ipiv, INT *restrict jpiv, INT *info)#

DGETC2 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.

This is the Level 2 BLAS algorithm.

Parameters

in
n

The order of the matrix A. n>=0.

inout
A

Array of dimension (lda, n). On entry, the n-by-n matrix A to be factored. 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, i.e., giving a nonsingular perturbed system.

in
lda

The leading dimension of the array A. lda>=max(1,n).

out
ipiv

Array of dimension n. The pivot indices; for 0<=i<n, row i of the matrix has been interchanged with row ipiv[i].

out
jpiv

Array of dimension n. The pivot indices; for 0<=j<n, column j of the matrix has been interchanged with column jpiv[j].

out
info

  • info=0: successful exit

  • info>0: if info=k, U(k,k) is likely to produce overflow if we try to solve for x in Ax = b. So U is perturbed to avoid the overflow.

Functions

void cgetc2(
    const INT           n,
          c64* restrict A,
    const INT           lda,
          INT* restrict ipiv,
          INT* restrict jpiv,
          INT*          info
);
void cgetc2(const INT n, c64 *restrict A, const INT lda, INT *restrict ipiv, INT *restrict jpiv, INT *info)#

CGETC2 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.

This is the Level 2 BLAS algorithm.

Parameters

in
n

The order of the matrix A. n>=0.

inout
A

Array of dimension (lda, n). On entry, the n-by-n matrix A to be factored. 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, i.e., giving a nonsingular perturbed system.

in
lda

The leading dimension of the array A. lda>=max(1,n).

out
ipiv

Array of dimension n. The pivot indices; for 0<=i<n, row i of the matrix has been interchanged with row ipiv[i].

out
jpiv

Array of dimension n. The pivot indices; for 0<=j<n, column j of the matrix has been interchanged with column jpiv[j].

out
info

  • info=0: successful exit

  • info>0: if info=k, U(k,k) is likely to produce overflow if we try to solve for x in Ax = b. So U is perturbed to avoid the overflow.

Functions

void zgetc2(
    const INT            n,
          c128* restrict A,
    const INT            lda,
          INT*  restrict ipiv,
          INT*  restrict jpiv,
          INT*           info
);
void zgetc2(const INT n, c128 *restrict A, const INT lda, INT *restrict ipiv, INT *restrict jpiv, INT *info)#

ZGETC2 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.

This is the Level 2 BLAS algorithm.

Parameters

in
n

The order of the matrix A. n>=0.

inout
A

Array of dimension (lda, n). On entry, the n-by-n matrix A to be factored. 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, i.e., giving a nonsingular perturbed system.

in
lda

The leading dimension of the array A. lda>=max(1,n).

out
ipiv

Array of dimension n. The pivot indices; for 0<=i<n, row i of the matrix has been interchanged with row ipiv[i].

out
jpiv

Array of dimension n. The pivot indices; for 0<=j<n, column j of the matrix has been interchanged with column jpiv[j].

out
info

  • info=0: successful exit

  • info>0: if info=k, U(k,k) is likely to produce overflow if we try to solve for x in Ax = b. So U is perturbed to avoid the overflow.