Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
?lauum
Computes the product U*U^{T} ( U*U^{H} ) or L^{T}*L ( L^{H}*L ), where U and L are upper or lower triangular matrices (blocked algorithm).
Syntax
call slauum(uplo, n, a, lda, info)
call dlauum(uplo, n, a, lda, info)
call clauum(uplo, n, a, lda, info)
call zlauum(uplo, n, a, lda, info)
Include Files
mkl.fi
Description
The routine ?lauum computes the product U*U^{T} or L^{T}*L for real flavors, and U*U^{H} or L^{H}*L for complex flavors. Here the triangular factor U or L is stored in the upper or lower triangular part of the array a .
If uplo = 'U' or ‘u’ , then the upper triangle of the result is stored, overwriting the factor U in A .
If uplo = 'L' or ‘l’ , then the lower triangle of the result is stored, overwriting the factor L in A .
This is the blocked form of the algorithm, calling BLAS Level 3 Routines .
Input Parameters
The data types are given for the Fortran interface.
- uplo
-
CHARACTER*1 . Specifies whether the triangular factor stored in the array a is upper or lower triangular: = ‘U’ : Upper triangular = ‘L’ : Lower triangular
n
INTEGER . The order of the triangular factor U or L . n≥ 0 .
- a
-
REAL for slauum DOUBLE PRECISION for dlauum COMPLEX for clauum DOUBLE COMPLEX for zlauum .
Array of size ( lda , n ) .
On entry, the triangular factor U or L .
lda
INTEGER . The leading dimension of the array a . lda≥ max(1,n) .
Output Parameters
- a
-
On exit, if uplo = 'U' , then the upper triangle of a is overwritten with the upper triangle of the product U*U^{T} ( U*U^{H} ); if uplo = 'L' , then the lower triangle of a is overwritten with the lower triangle of the product L^{T}*L ( L^{H}*L ).
info
INTEGER .
If info = 0 , the execution is successful.
If info = -k , the k -th parameter had an illegal value.
If info = -1011 , memory allocation error occurred.
Return Values
No return value, info is an Output Parameter.