Scroll to navigation

getrf2(3) LAPACK getrf2(3)

NAME

getrf2 - getrf2: triangular factor panel, recursive?

SYNOPSIS

Functions


recursive subroutine cgetrf2 (m, n, a, lda, ipiv, info)
CGETRF2 recursive subroutine dgetrf2 (m, n, a, lda, ipiv, info)
DGETRF2 recursive subroutine sgetrf2 (m, n, a, lda, ipiv, info)
SGETRF2 recursive subroutine zgetrf2 (m, n, a, lda, ipiv, info)
ZGETRF2

Detailed Description

Function Documentation

recursive subroutine cgetrf2 (integer m, integer n, complex, dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, integer info)

CGETRF2

Purpose:


CGETRF2 computes an LU factorization of a general M-by-N matrix A
using partial pivoting with row interchanges.
The factorization has the form
A = P * L * U
where P is a permutation matrix, L is lower triangular with unit
diagonal elements (lower trapezoidal if m > n), and U is upper
triangular (upper trapezoidal if m < n).
This is the recursive version of the algorithm. It divides
the matrix into four submatrices:
[ A11 | A12 ] where A11 is n1 by n1 and A22 is n2 by n2
A = [ -----|----- ] with n1 = min(m,n)/2
[ A21 | A22 ] n2 = n-n1
[ A11 ]
The subroutine calls itself to factor [ --- ],
[ A12 ]
[ A12 ]
do the swaps on [ --- ], solve A12, update A22,
[ A22 ]
then calls itself to factor A22 and do the swaps on A21.

Parameters

M


M is INTEGER
The number of rows of the matrix A. M >= 0.

N


N is INTEGER
The number of columns of the matrix A. N >= 0.

A


A is COMPLEX array, dimension (LDA,N)
On entry, the M-by-N matrix to be factored.
On exit, the factors L and U from the factorization
A = P*L*U; the unit diagonal elements of L are not stored.

LDA


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

IPIV


IPIV is INTEGER array, dimension (min(M,N))
The pivot indices; for 1 <= i <= min(M,N), row i of the
matrix was interchanged with row IPIV(i).

INFO


INFO is INTEGER
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an illegal value
> 0: if INFO = i, U(i,i) is exactly zero. The factorization
has been completed, but the factor U is exactly
singular, and division by zero will occur if it is used
to solve a system of equations.

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

recursive subroutine dgetrf2 (integer m, integer n, double precision, dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, integer info)

DGETRF2

Purpose:


DGETRF2 computes an LU factorization of a general M-by-N matrix A
using partial pivoting with row interchanges.
The factorization has the form
A = P * L * U
where P is a permutation matrix, L is lower triangular with unit
diagonal elements (lower trapezoidal if m > n), and U is upper
triangular (upper trapezoidal if m < n).
This is the recursive version of the algorithm. It divides
the matrix into four submatrices:
[ A11 | A12 ] where A11 is n1 by n1 and A22 is n2 by n2
A = [ -----|----- ] with n1 = min(m,n)/2
[ A21 | A22 ] n2 = n-n1
[ A11 ]
The subroutine calls itself to factor [ --- ],
[ A12 ]
[ A12 ]
do the swaps on [ --- ], solve A12, update A22,
[ A22 ]
then calls itself to factor A22 and do the swaps on A21.

Parameters

M


M is INTEGER
The number of rows of the matrix A. M >= 0.

N


N is INTEGER
The number of columns of the matrix A. N >= 0.

A


A is DOUBLE PRECISION array, dimension (LDA,N)
On entry, the M-by-N matrix to be factored.
On exit, the factors L and U from the factorization
A = P*L*U; the unit diagonal elements of L are not stored.

LDA


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

IPIV


IPIV is INTEGER array, dimension (min(M,N))
The pivot indices; for 1 <= i <= min(M,N), row i of the
matrix was interchanged with row IPIV(i).

INFO


INFO is INTEGER
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an illegal value
> 0: if INFO = i, U(i,i) is exactly zero. The factorization
has been completed, but the factor U is exactly
singular, and division by zero will occur if it is used
to solve a system of equations.

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

recursive subroutine sgetrf2 (integer m, integer n, real, dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, integer info)

SGETRF2

Purpose:


SGETRF2 computes an LU factorization of a general M-by-N matrix A
using partial pivoting with row interchanges.
The factorization has the form
A = P * L * U
where P is a permutation matrix, L is lower triangular with unit
diagonal elements (lower trapezoidal if m > n), and U is upper
triangular (upper trapezoidal if m < n).
This is the recursive version of the algorithm. It divides
the matrix into four submatrices:
[ A11 | A12 ] where A11 is n1 by n1 and A22 is n2 by n2
A = [ -----|----- ] with n1 = min(m,n)/2
[ A21 | A22 ] n2 = n-n1
[ A11 ]
The subroutine calls itself to factor [ --- ],
[ A12 ]
[ A12 ]
do the swaps on [ --- ], solve A12, update A22,
[ A22 ]
then calls itself to factor A22 and do the swaps on A21.

Parameters

M


M is INTEGER
The number of rows of the matrix A. M >= 0.

N


N is INTEGER
The number of columns of the matrix A. N >= 0.

A


A is REAL array, dimension (LDA,N)
On entry, the M-by-N matrix to be factored.
On exit, the factors L and U from the factorization
A = P*L*U; the unit diagonal elements of L are not stored.

LDA


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

IPIV


IPIV is INTEGER array, dimension (min(M,N))
The pivot indices; for 1 <= i <= min(M,N), row i of the
matrix was interchanged with row IPIV(i).

INFO


INFO is INTEGER
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an illegal value
> 0: if INFO = i, U(i,i) is exactly zero. The factorization
has been completed, but the factor U is exactly
singular, and division by zero will occur if it is used
to solve a system of equations.

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

recursive subroutine zgetrf2 (integer m, integer n, complex*16, dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, integer info)

ZGETRF2

Purpose:


ZGETRF2 computes an LU factorization of a general M-by-N matrix A
using partial pivoting with row interchanges.
The factorization has the form
A = P * L * U
where P is a permutation matrix, L is lower triangular with unit
diagonal elements (lower trapezoidal if m > n), and U is upper
triangular (upper trapezoidal if m < n).
This is the recursive version of the algorithm. It divides
the matrix into four submatrices:
[ A11 | A12 ] where A11 is n1 by n1 and A22 is n2 by n2
A = [ -----|----- ] with n1 = min(m,n)/2
[ A21 | A22 ] n2 = n-n1
[ A11 ]
The subroutine calls itself to factor [ --- ],
[ A12 ]
[ A12 ]
do the swaps on [ --- ], solve A12, update A22,
[ A22 ]
then calls itself to factor A22 and do the swaps on A21.

Parameters

M


M is INTEGER
The number of rows of the matrix A. M >= 0.

N


N is INTEGER
The number of columns of the matrix A. N >= 0.

A


A is COMPLEX*16 array, dimension (LDA,N)
On entry, the M-by-N matrix to be factored.
On exit, the factors L and U from the factorization
A = P*L*U; the unit diagonal elements of L are not stored.

LDA


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

IPIV


IPIV is INTEGER array, dimension (min(M,N))
The pivot indices; for 1 <= i <= min(M,N), row i of the
matrix was interchanged with row IPIV(i).

INFO


INFO is INTEGER
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an illegal value
> 0: if INFO = i, U(i,i) is exactly zero. The factorization
has been completed, but the factor U is exactly
singular, and division by zero will occur if it is used
to solve a system of equations.

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Author

Generated automatically by Doxygen for LAPACK from the source code.

Wed Feb 7 2024 11:30:40 Version 3.12.0