Developer Reference for Intel® oneAPI Math Kernel Library for C
?sytri2x
Computes the inverse of a symmetric indefinite matrix after ?sytri2 sets the leading dimension of the workspace allocates memory .
Syntax
lapack_intLAPACKE_ssytri2x ( intmatrix_layout , charuplo , lapack_intn , float*a , lapack_intlda , constlapack_int*ipiv , lapack_intnb );
lapack_intLAPACKE_dsytri2x ( intmatrix_layout , charuplo , lapack_intn , double*a , lapack_intlda , constlapack_int*ipiv , lapack_intnb );
lapack_intLAPACKE_csytri2x ( intmatrix_layout , charuplo , lapack_intn , lapack_complex_float*a , lapack_intlda , constlapack_int*ipiv , lapack_intnb );
lapack_intLAPACKE_zsytri2x ( intmatrix_layout , charuplo , lapack_intn , lapack_complex_double*a , lapack_intlda , constlapack_int*ipiv , lapack_intnb );
Include Files
mkl.h
Description
The routine computes the inverse inv(A) of a symmetric indefinite matrix A using the factorization A = U*D*U^{T} or A = L*D*L^{T} computed by ?sytrf .
The ?sytri2x actually computes the inverse after the ?sytri2 routine sets the leading dimension of the workspace allocates memory before calling ?sytri2x .
Input Parameters
matrix_layout
Specifies whether matrix storage layout is row major ( LAPACK_ROW_MAJOR ) or column major ( LAPACK_COL_MAJOR ).
uplo
Must be ‘U’ or ‘L’ .
Indicates how the input matrix A has been factored:
If uplo = 'U' , the array a stores the factorization A = U*D*U^{T} .
If uplo = 'L' , the array a stores the factorization A = L*D*L^{T} .
n
The order of the matrix A ; n≥ 0 .
a , work
REAL for ssytri2x
Arrays:
a ( lda ,*) contains the nb (block size) diagonal matrix D and the multipliers used to obtain the factor U or L as returned by ?sytrf .
work is a workspace array of dimension (n+nb+1)*(nb+3)
where
nb is the block size as set by ?sytrf .
a
Array a (size max(1, lda * n )) contains the nb (block size) diagonal matrix D and the multipliers used to obtain the factor U or L as returned by ?sytrf . The second dimension of a must be at least max(1,n) .
lda
The leading dimension of a ; lda≥ max(1, n) .
ipiv
Array, size at least max(1, n) .
Details of the interchanges and the nb structure of D as returned by ?sytrf .
nb
Block size.
Output Parameters
a
If info = 0 , the symmetric inverse of the original matrix.
If info = 'U' , the upper triangular part of the inverse is formed and the part of A below the diagonal is not referenced.
If info = 'L' , the lower triangular part of the inverse is formed and the part of A above the diagonal is not referenced.
Return Values
This function returns a value info .
If info = 0, the execution is successful.
If info = -i , parameter i had an illegal value.
If info = i , D_{ii} = 0; D is singular and its inversion could not be computed.
LAPACK 95 Interface Notes
There exist FORTRAN 77 and FORTRAN 95 interfaces for this routine. See the Intel® oneMKL Fortran Developer Reference for details.