Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 10/31/2024
Public
Document Table of Contents

?lauu2

Computes the product U*UT(U*UH) or LT*L (LH*L), where U and L are upper or lower triangular matrices (unblocked algorithm).

Syntax

call slauu2( uplo, n, a, lda, info )

call dlauu2( uplo, n, a, lda, info )

call clauu2( uplo, n, a, lda, info )

call zlauu2( uplo, n, a, lda, info )

Include Files

  • mkl.fi

Description

The routine ?lauu2 computes the product U*UT or LT*L for real flavors, and U*UH or LH*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 unblocked form of the algorithm, calling BLAS Level 2 Routines.

Input Parameters

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 slauu2

DOUBLE PRECISION for dlauu2

COMPLEX for clauu2

DOUBLE COMPLEX for zlauu2.

Array, DIMENSION (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*UT (U*UH);

if uplo = 'L', then the lower triangle of a is overwritten with the lower triangle of the product LT*L (LH*L).

info

INTEGER.

= 0: successful exit

< 0: if info = -k, the k-th argument had an illegal value