complexHEauxiliary(3) LAPACK complexHEauxiliary(3)

# NAME

complexHEauxiliary - complex

# SYNOPSIS

## Functions

subroutine cheswapr (UPLO, N, A, LDA, I1, I2)
CHESWAPR applies an elementary permutation on the rows and columns of a Hermitian matrix. real function clanhe (NORM, UPLO, N, A, LDA, WORK)
CLANHE returns the value of the 1-norm, or the Frobenius norm, or the infinity norm, or the element of largest absolute value of a complex Hermitian matrix. subroutine claqhe (UPLO, N, A, LDA, S, SCOND, AMAX, EQUED)
CLAQHE scales a Hermitian matrix.

# Detailed Description

This is the group of complex auxiliary functions for HE matrices

# Function Documentation

## subroutine cheswapr (character UPLO, integer N, complex, dimension( lda, n ) A, integer LDA, integer I1, integer I2)

CHESWAPR applies an elementary permutation on the rows and columns of a Hermitian matrix.

Purpose:

```CHESWAPR applies an elementary permutation on the rows and the columns of
a hermitian matrix.```

Parameters

UPLO
```UPLO is CHARACTER*1
Specifies whether the details of the factorization are stored
as an upper or lower triangular matrix.
= 'U':  Upper triangular, form is A = U*D*U**T;
= 'L':  Lower triangular, form is A = L*D*L**T.```

N

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

A

```A is COMPLEX array, dimension (LDA,N)
On entry, the NB diagonal matrix D and the multipliers
used to obtain the factor U or L as computed by CSYTRF.
On exit, if INFO = 0, the (symmetric) inverse of the original
matrix.  If UPLO = 'U', the upper triangular part of the
inverse is formed and the part of A below the diagonal is not
referenced; if UPLO = 'L' the lower triangular part of the
inverse is formed and the part of A above the diagonal is
not referenced.```

LDA

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

I1

```I1 is INTEGER
Index of the first row to swap```

I2

```I2 is INTEGER
Index of the second row to swap```

Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 101 of file cheswapr.f.

## real function clanhe (character NORM, character UPLO, integer N, complex, dimension( lda, * ) A, integer LDA, real, dimension( * ) WORK)

CLANHE returns the value of the 1-norm, or the Frobenius norm, or the infinity norm, or the element of largest absolute value of a complex Hermitian matrix.

Purpose:

```CLANHE  returns the value of the one norm,  or the Frobenius norm, or
the  infinity norm,  or the  element of  largest absolute value  of a
complex hermitian matrix A.```

Returns

CLANHE
```   CLANHE = ( max(abs(A(i,j))), NORM = 'M' or 'm'
(
( norm1(A),         NORM = '1', 'O' or 'o'
(
( normI(A),         NORM = 'I' or 'i'
(
( normF(A),         NORM = 'F', 'f', 'E' or 'e'
where  norm1  denotes the  one norm of a matrix (maximum column sum),
normI  denotes the  infinity norm  of a matrix  (maximum row sum) and
normF  denotes the  Frobenius norm of a matrix (square root of sum of
squares).  Note that  max(abs(A(i,j)))  is not a consistent matrix norm.```

Parameters

NORM
```NORM is CHARACTER*1
Specifies the value to be returned in CLANHE as described
above.```

UPLO

```UPLO is CHARACTER*1
Specifies whether the upper or lower triangular part of the
hermitian matrix A is to be referenced.
= 'U':  Upper triangular part of A is referenced
= 'L':  Lower triangular part of A is referenced```

N

```N is INTEGER
The order of the matrix A.  N >= 0.  When N = 0, CLANHE is
set to zero.```

A

```A is COMPLEX array, dimension (LDA,N)
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. Note that the imaginary parts of the diagonal
elements need not be set and are assumed to be zero.```

LDA

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

WORK

```WORK is REAL array, dimension (MAX(1,LWORK)),
where LWORK >= N when NORM = 'I' or '1' or 'O'; otherwise,
WORK is not referenced.```

Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 123 of file clanhe.f.

## subroutine claqhe (character UPLO, integer N, complex, dimension( lda, * ) A, integer LDA, real, dimension( * ) S, real SCOND, real AMAX, character EQUED)

CLAQHE scales a Hermitian matrix.

Purpose:

```CLAQHE equilibrates a Hermitian matrix A using the scaling factors
in the vector S.```

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 triangular```

N

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

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, if EQUED = 'Y', the equilibrated matrix:
diag(S) * A * diag(S).```

LDA

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

S

```S is REAL array, dimension (N)
The scale factors for A.```

SCOND

```SCOND is REAL
Ratio of the smallest S(i) to the largest S(i).```

AMAX

```AMAX is REAL
Absolute value of largest matrix entry.```

EQUED

```EQUED is CHARACTER*1
Specifies whether or not equilibration was done.
= 'N':  No equilibration.
= 'Y':  Equilibration was done, i.e., A has been replaced by
diag(S) * A * diag(S).```

Internal Parameters:

```THRESH is a threshold value used to decide if scaling should be done
based on the ratio of the scaling factors.  If SCOND < THRESH,
scaling is done.
LARGE and SMALL are threshold values used to decide if scaling should
be done based on the absolute size of the largest matrix element.
If AMAX > LARGE or AMAX < SMALL, scaling is done.```

Author

Univ. of Tennessee

Univ. of California Berkeley