/home/abui...sytrf_aa.f(3)

πŸ“¦ version 3.12.0, in opensuse-leap 16.0

Okay bestie, welcome to the Library Functions Manual page for /home/abui...sytrf_aa.f(3) β€” yes, that's the header energy, and we're rolling with it. πŸ’…

NAME πŸŽ€

The name is literally the whole path, no cap:

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/dsytrf_aa.f

It's giving very specific file-location realness. πŸ¦‹


SYNOPSIS ✨

Functions/Subroutines πŸ’–

Here's the roster, and it's a one-baddie situation:

subroutine DSYTRF_AA (uplo, n, a, lda, ipiv, work, lwork, info)

DSYTRF_AA is the subroutine, and she is the main character of this page. πŸ‘‘


Function/Subroutine Documentation 🌸

The full signature, copied exactly because we do not play with code:

subroutine DSYTRF_AA (character uplo, integer n, double precision,
     dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, double
     precision, dimension( * ) work, integer lwork, integer info)

DSYTRF_AA πŸ’«

Purpose πŸ’«

Okay so DSYTRF_AA computes the factorization of a real symmetric matrix A using the Aasen's algorithm. The factorization has these two iconic forms:

A = U**T*T*U  or  A = L*T*L**T

where U (or L) is a product of permutation and unit upper (lower) triangular matrices, and T is a symmetric tridiagonal matrix.

This is the blocked version of the algorithm, calling Level 3 BLAS. Periodt. πŸ”₯

Parameters 🧚

Every parameter, no skipping, because we respect the interface in this group chat:

  • UPLO β€” is CHARACTER*1. It tells us which triangle of A is stored: = 'U': upper triangle of A is stored; = 'L': lower triangle of A is stored. πŸ’…
  • N β€” is INTEGER. It's the order of the matrix A. N >= 0. She can be zero, no drama. 🌸
  • A β€” is DOUBLE PRECISION array, dimension (LDA,N).
    • On entry, it's the symmetric 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, 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').
  • LDA β€” is INTEGER. It's the leading dimension of the array A. LDA >= max(1,N). 🫢
  • IPIV β€” is INTEGER array, dimension (N). On exit, it contains the details of the interchanges, i.e., the row and column k of A were interchanged with the row and column IPIV(k). πŸ”
  • WORK β€” is DOUBLE PRECISION array, dimension (MAX(1,LWORK)). On exit, if INFO = 0, WORK(1) returns the optimal LWORK. ✨
  • LWORK β€” is INTEGER. It's the length of WORK. LWORK >= MAX(1,2*N). For optimum performance LWORK >= N*(1+NB), where NB is the optimal blocksize.
    • If LWORK = -1, then a workspace query is assumed; the routine only calculates the optimal size of the WORK array, returns this value as the first entry of the WORK array, and no error message related to LWORK is issued by XERBLA. πŸ’€
  • INFO β€” is INTEGER.
    • = 0: successful exit.
    • < 0: if INFO = -i, the i-th argument had an illegal value. 🚨

Author 🌈

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

Definition at line 131 of file dsytrf_aa.f. πŸŽ€

Author ✨

This page was generated automatically by Doxygen for LAPACK from the source code. No cap. 🫢


Signed off with LAPACK Version 3.12.0, footer path /home/abui...sytrf_aa.f(3), and all the sparkle energy. Byeee πŸ’…βœ¨

πŸ“¦ where this page comes from