## Developer Reference

• 2020.2
• 07/15/2020
• Public Content
Contents

# ?lahef

Computes a partial factorization of a complex Hermitian indefinite matrix, using the diagonal pivoting method.

## Syntax

Include Files
• mkl.fi
Description
The routine
?lahef
computes a partial factorization of a complex Hermitian matrix
A
, using the Bunch-Kaufman diagonal pivoting method. The partial factorization has the form:
If
uplo
= 'U'
: If
uplo
= 'U'
: 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
.
This is an auxiliary routine called by
?hetrf
. It uses blocked code (calling Level 3 BLAS) to update the submatrix
A
11
(if
uplo
=
'U'
) or
A
22
(if
uplo
=
'L'
).
Input Parameters
uplo
CHARACTER*1
.
Specifies whether the upper or lower triangular part of the Hermitian matrix
A
is stored:
=
'U'
: upper triangular
=
'L'
: lower triangular
n
INTEGER
. The order of the matrix
A
.
n
0
.
nb
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.
a
COMPLEX
for
clahef
DOUBLE COMPLEX
for
zlahef
.
Array,
DIMENSION
(
lda
,
n
).
On entry, the Hermitian matrix
A
.
If
uplo
=
'U'
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'
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.
lda
INTEGER
. The leading dimension of the array
a
.
lda
max(1,
n
)
.
w
COMPLEX
for
clahef
DOUBLE COMPLEX
for
zlahef
.
Workspace array,
DIMENSION
(
ldw
,
nb
).
ldw
INTEGER
. The leading dimension of the array
w
.
ldw
max(1,
n
)
.
Output Parameters
k