CLAHEF (3) Linux Manual Page
NAME
clahef.f –
SYNOPSIS
Functions/Subroutines
subroutine clahef (UPLO, N, NB, KB, A, LDA, IPIV, W, LDW, INFO)
CLAHEF computes a partial factorization of a complex Hermitian indefinite matrix using the Bunch-Kaufman diagonal pivoting method (blocked algorithm, calling Level 3 BLAS).
Function/Subroutine Documentation
subroutine clahef (characterUPLO, integerN, integerNB, integerKB, complex, dimension( lda, * )A, integerLDA, integer, dimension( * )IPIV, complex, dimension( ldw, * )W, integerLDW, integerINFO)
CLAHEF computes a partial factorization of a complex Hermitian indefinite matrix using the Bunch-Kaufman diagonal pivoting method (blocked algorithm, calling Level 3 BLAS).
Purpose:
-
CLAHEF computes a partial factorization of a complex Hermitian matrix A using the Bunch - Kaufman diagonal pivoting method.The partial factorization has the form : A = (I U12)(A11 0)(I 0) if UPLO = 'U', or : (0 U22)(0 D)(U12 **H U22 **H) A = (L11 0)(D 0)(L11 * *H L21 * *H) if UPLO = 'L'(L21 I)(0 A22)(0 I) where the order of D is at most NB.The actual order is returned in the argument KB, and is either NB or NB - 1, or N if N <= NB.Note that U **H denotes the conjugate transpose of U.CLAHEF is an auxiliary routine called by CHETRF.It uses blocked code(calling Level 3 BLAS) to update the submatrix A11(if UPLO = 'U') or A22(if UPLO = 'L').
Parameters:
- UPLO
UPLO is CHARACTER*1 Specifies whether the upper or lower triangular part of the Hermitian matrix A is stored: = 'U': Upper triangular = 'L': Lower triangularN
N is INTEGER The order of the matrix A. N >= 0.NB
NB is INTEGER The maximum number of columns of the matrix A that should be factored. NB should be at least 2 to allow for 2-by-2 pivot blocks.KB
KB is INTEGER The number of columns of A that were actually factored. KB is either NB-1 or NB, or N if N <= NB.A
A is COMPLEX array, dimension (LDA,N) On entry, the Hermitian matrix A. If UPLO = 'U', the leading n-by-n upper triangular part of A contains the upper triangular part of the matrix A, and the strictly lower triangular part of A is not referenced. If UPLO = 'L', the leading n-by-n lower triangular part of A contains the lower triangular part of the matrix A, and the strictly upper triangular part of A is not referenced. On exit, A contains details of the partial factorization.LDA
LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N).IPIV
IPIV is INTEGER array, dimension (N) Details of the interchanges and the block structure of D. If UPLO = 'U': Only the last KB elements of IPIV are set. If IPIV(k) > 0, then rows and columns k and IPIV(k) were interchanged and D(k,k) is a 1-by-1 diagonal block. If IPIV(k) = IPIV(k-1) < 0, then rows and columns k-1 and -IPIV(k) were interchanged and D(k-1:k,k-1:k) is a 2-by-2 diagonal block. If UPLO = 'L': Only the first KB elements of IPIV are set. If IPIV(k) > 0, then rows and columns k and IPIV(k) were interchanged and D(k,k) is a 1-by-1 diagonal block. If IPIV(k) = IPIV(k+1) < 0, then rows and columns k+1 and -IPIV(k) were interchanged and D(k:k+1,k:k+1) is a 2-by-2 diagonal block.W
W is COMPLEX array, dimension (LDW,NB)LDW
LDW is INTEGER The leading dimension of the array W. LDW >= max(1,N).INFO
INFO is INTEGER = 0: successful exit > 0: if INFO = k, D(k,k) is exactly zero. The factorization has been completed, but the block diagonal matrix D is exactly singular.
Author:
- Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Date:
- November 2013
Contributors:
-
November 2013, Igor Kozachenko, Computer Science Division, University of California, Berkeley
Definition at line 178 of file clahef.f.
Author
Generated automatically by Doxygen for LAPACK from the source code.
