lapackfix - Man Page

Name

lapackfix — Fixed LAPACK routines

— Bugfix versions of LAPACK routines.  

Synopsis

Functions

subroutine cgetc2x (n, a, lda, ipiv, jpiv, info)
CGETC2X computes the LU factorization with complete pivoting of the general n-by-n matrix.
subroutine dgetc2x (n, a, lda, ipiv, jpiv, info)
DGETC2X computes the LU factorization with complete pivoting of the general n-by-n matrix.
subroutine sgetc2x (n, a, lda, ipiv, jpiv, info)
SGETC2 computes the LU factorization with complete pivoting of the general n-by-n matrix.
subroutine zgetc2 (n, a, lda, ipiv, jpiv, info)
ZGETC2 computes the LU factorization with complete pivoting of the general n-by-n matrix.

Detailed Description

Bugfix versions of LAPACK routines.

During the development of MEPACK, some LAPACK routines show some bugs since they are used differently in MEPACK than in LAPACK. Therefore, MEPACK comes with patched version of this routines in order to avoid bugs. Newer LAPACK versions include the bugfixes as well but we do not rely on this.

Function Documentation

subroutine cgetc2x (integer n, complex, dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, integer, dimension( * ) jpiv, integer info)

CGETC2X computes the LU factorization with complete pivoting of the general n-by-n matrix.  

Purpose:

!>
!> CGETC2 computes an LU factorization, using 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 routine contains a fixed version of the forward/backward substitution if
!> an old version of LAPACK is used.
!>
!> This is a level 1 BLAS version of the algorithm.
!>
Parameters

N

!>          N is INTEGER
!>          The order of the matrix A. N >= 0.
!>

A

!>          A is COMPLEX array, dimension (LDA, N)
!>          On entry, the n-by-n matrix 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, giving a non singular perturbed system.
!>

LDA

!>          LDA is INTEGER
!>          The leading dimension of the array A.  LDA >= max(1, N).
!>

IPIV

!>          IPIV is INTEGER array, dimension (N).
!>          The pivot indices; for 1 <= i <= N, row i of the
!>          matrix has been interchanged with row IPIV(i).
!>

JPIV

!>          JPIV is INTEGER array, dimension (N).
!>          The pivot indices; for 1 <= j <= N, column j of the
!>          matrix has been interchanged with column JPIV(j).
!>

INFO

!>          INFO is INTEGER
!>           == 0: successful exit
!>           > 0: if INFO = k, U(k, k) is likely to produce overflow if
!>                one tries to solve for x in Ax = b. So U is perturbed
!>                to avoid the overflow.
!>
Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Date

January 2024

Contributors:

Bo Kagstrom and Peter Poromaa, Department of Computing Science, Umea University, S-901 87 Umea, Sweden.

Definition at line 115 of file cgetc2x.f90.

subroutine dgetc2x (integer n, double precision, dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, integer, dimension( * ) jpiv, integer info)

DGETC2X computes the LU factorization with complete pivoting of the general n-by-n matrix.  

Purpose:

!>
!> 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 routine contains a fixed version of the forward/backward substitution if
!> an old version of LAPACK is used.
!>
!> This is the Level 2 BLAS algorithm.
!>
Parameters

N

!>          N is INTEGER
!>          The order of the matrix A. N >= 0.
!>

A

!>          A is DOUBLE PRECISION array, 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 non singular perturbed system.
!>

LDA

!>          LDA is INTEGER
!>          The leading dimension of the array A.  LDA >= max(1,N).
!>

IPIV

!>          IPIV is INTEGER array, dimension(N).
!>          The pivot indices; for 1 <= i <= N, row i of the
!>          matrix has been interchanged with row IPIV(i).
!>

JPIV

!>          JPIV is INTEGER array, dimension(N).
!>          The pivot indices; for 1 <= j <= N, column j of the
!>          matrix has been interchanged with column JPIV(j).
!>

INFO

!>          INFO is INTEGER
!>           == 0: successful exit
!>           > 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.
!>
Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Date

January 2024

Contributors:

Bo Kagstrom and Peter Poromaa, Department of Computing Science, Umea University, S-901 87 Umea, Sweden.

Definition at line 115 of file dgetc2x.f90.

subroutine sgetc2x (integer n, real, dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, integer, dimension( * ) jpiv, integer info)

SGETC2 computes the LU factorization with complete pivoting of the general n-by-n matrix.  

Purpose:

!>
!> 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 routine contains a fixed version of the forward/backward substitution if
!> an old version of LAPACK is used.
!>
!> This is the Level 2 BLAS algorithm.
!>
Parameters

N

!>          N is INTEGER
!>          The order of the matrix A. N >= 0.
!>

A

!>          A is REAL array, 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 non singular perturbed system.
!>

LDA

!>          LDA is INTEGER
!>          The leading dimension of the array A.  LDA >= max(1,N).
!>

IPIV

!>          IPIV is INTEGER array, dimension(N).
!>          The pivot indices; for 1 <= i <= N, row i of the
!>          matrix has been interchanged with row IPIV(i).
!>

JPIV

!>          JPIV is INTEGER array, dimension(N).
!>          The pivot indices; for 1 <= j <= N, column j of the
!>          matrix has been interchanged with column JPIV(j).
!>

INFO

!>          INFO is INTEGER
!>           == 0: successful exit
!>           > 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.
!>
Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Date

January 2024

Contributors:

Bo Kagstrom and Peter Poromaa, Department of Computing Science, Umea University, S-901 87 Umea, Sweden.

Definition at line 115 of file sgetc2x.f90.

subroutine zgetc2 (integer n, complex(kind=kind(1.0d0)), dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, integer, dimension( * ) jpiv, integer info)

ZGETC2 computes the LU factorization with complete pivoting of the general n-by-n matrix.  

Purpose:

!>
!> ZGETC2 computes an LU factorization, using 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 routine contains a fixed version of the forward/backward substitution if
!> an old version of LAPACK is used.
!>
!> This is a level 1 BLAS version of the algorithm.
!>
Parameters

N

!>          N is INTEGER
!>          The order of the matrix A. N >= 0.
!>

A

!>          A is COMPLEX*16 array, dimension (LDA, N)
!>          On entry, the n-by-n matrix 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, giving a non singular perturbed system.
!>

LDA

!>          LDA is INTEGER
!>          The leading dimension of the array A.  LDA >= max(1, N).
!>

IPIV

!>          IPIV is INTEGER array, dimension (N).
!>          The pivot indices; for 1 <= i <= N, row i of the
!>          matrix has been interchanged with row IPIV(i).
!>

JPIV

!>          JPIV is INTEGER array, dimension (N).
!>          The pivot indices; for 1 <= j <= N, column j of the
!>          matrix has been interchanged with column JPIV(j).
!>

INFO

!>          INFO is INTEGER
!>           == 0: successful exit
!>           > 0: if INFO = k, U(k, k) is likely to produce overflow if
!>                one tries to solve for x in Ax = b. So U is perturbed
!>                to avoid the overflow.
!>
Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Date

January 2024

Contributors:

Bo Kagstrom and Peter Poromaa, Department of Computing Science, Umea University, S-901 87 Umea, Sweden.

Definition at line 115 of file zgetc2x.f90.

Author

Generated automatically by Doxygen for MEPACK from the source code.

Info

Fri Oct 25 2024 00:00:00 Version 1.1.1 MEPACK