## table of contents

complex16HEauxiliary(3) | LAPACK | complex16HEauxiliary(3) |

# NAME¶

complex16HEauxiliary# SYNOPSIS¶

## Functions¶

subroutine

**zheswapr**(UPLO, N, A, LDA, I1, I2)

**ZHESWAPR**applies an elementary permutation on the rows and columns of a Hermitian matrix. double precision function

**zlanhe**(NORM, UPLO, N, A, LDA, WORK)

**ZLANHE**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

**zlaqhe**(UPLO, N, A, LDA, S, SCOND, AMAX, EQUED)

**ZLAQHE**scales a Hermitian matrix.

# Detailed Description¶

This is the group of complex16 auxiliary functions for HE matrices# Function Documentation¶

## subroutine zheswapr (character UPLO, integer N, complex*16, dimension( lda, n ) A, integer LDA, integer I1, integer I2)¶

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

**Purpose: **

ZHESWAPR 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*16 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

Univ. of Colorado Denver

NAG Ltd.

**Date:**

December 2016

## double precision function zlanhe (character NORM, character UPLO, integer N, complex*16, dimension( lda, * ) A, integer LDA, double precision, dimension( * ) WORK)¶

**ZLANHE**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: **

ZLANHE 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:**

ZLANHE

ZLANHE = ( 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 ZLANHE 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, ZLANHE is set to zero.

*A*

A is COMPLEX*16 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 DOUBLE PRECISION 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

Univ. of Colorado Denver

NAG Ltd.

**Date:**

December 2016

## subroutine zlaqhe (character UPLO, integer N, complex*16, dimension( lda, * ) A, integer LDA, double precision, dimension( * ) S, double precision SCOND, double precision AMAX, character EQUED)¶

**ZLAQHE**scales a Hermitian matrix.

**Purpose: **

ZLAQHE 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*16 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 DOUBLE PRECISION array, dimension (N) The scale factors for A.

*SCOND*

SCOND is DOUBLE PRECISION Ratio of the smallest S(i) to the largest S(i).

*AMAX*

AMAX is DOUBLE PRECISION 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

Univ. of Colorado Denver

NAG Ltd.

**Date:**

December 2016

# Author¶

Generated automatically by Doxygen for LAPACK from the source code.Tue Dec 4 2018 | Version 3.8.0 |