Visible to Intel only — GUID: GUID-35B3D213-C161-4CD1-9F0A-591FC1790D19
Visible to Intel only — GUID: GUID-35B3D213-C161-4CD1-9F0A-591FC1790D19
?sytrf_aa
Computes the factorization of a symmetric matrix using Aasen's algorithm.
lapack_int LAPACKE_ssytrf_aa (int matrix_layout, char uplo, lapack_int n, float * A, lapack_int lda, lapack_int * ipiv);
lapack_int LAPACKE_dsytrf_aa (int matrix_layout, char uplo, lapack_int n, double * A, lapack_int lda, lapack_int * ipiv);
lapack_int LAPACKE_csytrf_aa (int matrix_layout, char uplo, lapack_int n, lapack_complex_float * A, lapack_int lda, lapack_int * ipiv);
lapack_int LAPACKE_zsytrf_aa (int matrix_layout, char uplo, lapack_int n, lapack_complex_double * A, lapack_int lda, lapack_int * ipiv);
Description
?sytrf_aa computes the factorization of a symmetric matrix A using Aasen's algorithm. The form of the factorization is A = U*T*UT or A = L*T*LT where U (or L) is a product of permutation and unit upper (lower) triangular matrices, and T is a complex symmetric tridiagonal matrix.
This is the blocked version of the algorithm, calling Level 3 BLAS.
Input Parameters
- matrix_layout
-
Specifies whether matrix storage layout is row major (LAPACK_ROW_MAJOR) or column major (LAPACK_COL_MAJOR).
- uplo
-
- = 'U': The upper triangle of A is stored.
- = 'L': The lower triangle of A is stored.
- n
-
The order of the matrix A. n ≥ 0.
- A
-
Array of size max(1, lda*n). The array A contains either the upper or the lower triangular part of the matrix A (see uplo).
- lda
-
The leading dimension of the array A.
Output Parameters
- A
-
On exit, the tridiagonal matrix is stored in the diagonals and the subdiagonals of A just below (or above) the diagonals, and L is stored below (or above) the subdiagonals, when uplo is 'L' (or 'U').
- ipiv
-
Array of size n. On exit, it contains the details of the interchanges; that is, the row and column k of A were interchanged with the row and column ipiv(k).
Return Values
This function returns a value info.
= 0: Successful exit.
< 0: If info = -i, the ith argument had an illegal value.
> 0: If info = i, D(i,i) is exactly zero. The factorization has been completed, but the block diagonal matrix D is exactly singular, and division by zero will occur if it is used to solve a system of equations.