SRC/dsyev.f(3)

πŸ’– SRC/dsyev.f(3) β€” Library Functions Manual πŸ’–

Bestie, welcome to the manual page for SRC/dsyev.f(3). It's giving LAPACK, it's giving linear algebra, and it's literally about to make eigenvalues make sense. Buckle up πŸŽ€


NAME

SRC/dsyev.f

That's it. Short, iconic, no notes. πŸ’…


SYNOPSIS

Functions/Subroutines

  • subroutine dsyev (jobz, uplo, n, a, lda, w, work, lwork, info) β€” DSYEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY matrices
subroutine dsyev (jobz, uplo, n, a, lda, w, work, lwork, info)

Function/Subroutine Documentation

subroutine dsyev (character jobz, character uplo, integer n, double precision, dimension( lda, * ) a, integer lda, double precision, dimension( * ) w, double precision, dimension( * ) work, integer lwork, integer info)

DSYEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY matrices

Purpose

Okay so the whole point, bestie: DSYEV computes all eigenvalues and, optionally, eigenvectors of a real symmetric matrix A. That's the vibe. ✨

Parameters

  • JOBZ β€” JOBZ is CHARACTER*1
    • = 'N': Compute eigenvalues only;
    • = 'V': Compute eigenvalues and eigenvectors.
  • UPLO β€” UPLO is CHARACTER*1
    • = 'U': Upper triangle of A is stored;
    • = 'L': Lower triangle of A is stored.
  • N β€” N is INTEGER
    • The order of the matrix A. N >= 0.
  • A β€” A is DOUBLE PRECISION array, dimension (LDA, N)
    • On entry, 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. If UPLO = 'L', the leading N-by-N lower triangular part of A contains the lower triangular part of the matrix A.
    • On exit, if JOBZ = 'V', then if INFO = 0, A contains the orthonormal eigenvectors of the matrix A.
    • If JOBZ = 'N', then on exit the lower triangle (if UPLO='L') or the upper triangle (if UPLO='U') of A, including the diagonal, is destroyed.
🫢 Yes bestie, "destroyed" is the actual word. Your triangle is gone. Do not come for me, come for the LAPACK authors.
  • LDA β€” LDA is INTEGER
    • The leading dimension of the array A. LDA >= max(1,N).
  • W β€” W is DOUBLE PRECISION array, dimension (N)
    • If INFO = 0, the eigenvalues in ascending order.
  • WORK β€” WORK is DOUBLE PRECISION array, dimension (MAX(1,LWORK))
    • On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
  • LWORK β€” LWORK is INTEGER
    • The length of the array WORK. LWORK >= max(1,3*N-1).
    • For optimal efficiency, LWORK >= (NB+2)*N, where NB is the blocksize for DSYTRD returned by ILAENV.
    • 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.
⚠️ Bestie, do not ignore the LWORK = -1 workspace-query behavior. It is not a drill, it is a whole mode.
  • INFO β€” INFO is INTEGER
    • = 0: successful exit
    • < 0: if INFO = -i, the i-th argument had an illegal value
    • > 0: if INFO = i, the algorithm failed to converge; i off-diagonal elements of an intermediate tridiagonal form did not converge to zero.

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.


Definition at line 131 of file dsyev.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.


Later, bestie! πŸ’– This was SRC/dsyev.f(3) from LAPACK Version 3.12.0 β€” eigenvalues found, triangles possibly destroyed, vibes immaculate. Mwah πŸ’‹βœ¨

πŸ“¦ where this page comes from