lahef_rk Interface

public interface lahef_rk

LAHEF_RK computes a partial factorization of a complex Hermitian matrix A using the bounded Bunch-Kaufman (rook) diagonal pivoting method. The partial factorization has the form: A = ( I U12 ) ( A11 0 ) ( I 0 ) if UPLO = 'U', or: ( 0 U22 ) ( 0 D ) ( U12H U22H ) A = ( L11 0 ) ( D 0 ) ( L11H L21H ) 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. LAHEF_RK is an auxiliary routine called by CHETRF_RK. It uses blocked code (calling Level 3 BLAS) to update the submatrix A11 (if UPLO = 'U') or A22 (if UPLO = 'L').


Subroutines

public pure subroutine clahef_rk(uplo, n, nb, kb, a, lda, e, ipiv, w, ldw, info)

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: uplo
integer(kind=ilp), intent(in) :: n
integer(kind=ilp), intent(in) :: nb
integer(kind=ilp), intent(out) :: kb
complex(kind=sp), intent(inout) :: a(lda,*)
integer(kind=ilp), intent(in) :: lda
complex(kind=sp), intent(out) :: e(*)
integer(kind=ilp), intent(out) :: ipiv(*)
complex(kind=sp), intent(out) :: w(ldw,*)
integer(kind=ilp), intent(in) :: ldw
integer(kind=ilp), intent(out) :: info

public pure subroutine zlahef_rk(uplo, n, nb, kb, a, lda, e, ipiv, w, ldw, info)

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: uplo
integer(kind=ilp), intent(in) :: n
integer(kind=ilp), intent(in) :: nb
integer(kind=ilp), intent(out) :: kb
complex(kind=dp), intent(inout) :: a(lda,*)
integer(kind=ilp), intent(in) :: lda
complex(kind=dp), intent(out) :: e(*)
integer(kind=ilp), intent(out) :: ipiv(*)
complex(kind=dp), intent(out) :: w(ldw,*)
integer(kind=ilp), intent(in) :: ldw
integer(kind=ilp), intent(out) :: info

Module Procedures

public interface stdlib_clahef_rk()

Arguments

None

public interface stdlib_zlahef_rk()

Arguments

None