SRC/chpev.f(3)
β¨ SRC/chpev.f β¨
okay so bestie, this is a page from the LAPACK manual β that's the Library Functions Manual, iykyk β and it's literally all about one little subroutine. buckle up π
πΈ SYNOPSIS πΈ
π Functions/Subroutines
subroutine chpev (jobz, uplo, n, ap, w, z, ldz, work, rwork, info)β CHPEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrices β¨
π Function/Subroutine Documentation π
subroutine chpev (character jobz, character uplo, integer n, complex,
dimension( * ) ap, real, dimension( * ) w, complex, dimension( ldz, * )
z, integer ldz, complex, dimension( * ) work, real, dimension( * )
rwork, integer info)
CHPEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrices π
π¦ Purpose
!>
!> CHPEV computes all the eigenvalues and, optionally, eigenvectors of a
!> complex Hermitian matrix in packed storage.
!>
so yeah β all the eigenvalues, and eigenvectors too if you ask nicely, of a complex Hermitian matrix in packed storage. that's the whole gig π«Ά
β 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.
!>
π AP
!> AP is COMPLEX array, dimension (N*(N+1)/2)
!> On entry, the upper or lower triangle of the Hermitian matrix
!> A, packed columnwise in a linear array. The j-th column of A
!> is stored in the array AP as follows:
!> if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
!> if UPLO = 'L', AP(i + (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.
!>
!> On exit, AP is overwritten by values generated during the
!> reduction to tridiagonal form. If UPLO = 'U', the diagonal
!> and first superdiagonal of the tridiagonal matrix T overwrite
!> the corresponding elements of A, and if UPLO = 'L', the
!> diagonal and first subdiagonal of T overwrite the
!> corresponding elements of A.
!>
β οΈ heads up bestie:APgets overwritten on exit β the reduction to tridiagonal formTjust moves right on in and takes over those elements. no cap, your input triangle is gone π
π W
!> W is REAL array, dimension (N)
!> If INFO = 0, the eigenvalues in ascending order.
!>
π Z
!> Z is COMPLEX array, dimension (LDZ, N)
!> If JOBZ = 'V', then if INFO = 0, Z contains the orthonormal
!> eigenvectors of the matrix A, with the i-th column of Z
!> holding the eigenvector associated with W(i).
!> If JOBZ = 'N', then Z is not referenced.
!>
π LDZ
!> LDZ is INTEGER
!> The leading dimension of the array Z. LDZ >= 1, and if
!> JOBZ = 'V', LDZ >= max(1,N).
!>
π WORK
!> WORK is COMPLEX array, dimension (max(1, 2*N-1))
!>
π RWORK
!> RWORK is REAL array, dimension (max(1, 3*N-2))
!>
π 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.
!>
πINFO > 0means the algorithm failed to converge β specifically,ioff-diagonal elements of an intermediate tridiagonal form did not converge to zero. not the slay you wanted, but at least you know exactly what went down.
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 136 of file chpev.f. π
π Author
Generated automatically by Doxygen for LAPACK from the source code. (yes bestie, a robot wrote this and it still ate π€β¨)
LAPACK Β· Version 3.12.0 Β· SRC/chpev.f(3)
that's the page, fr fr β go forth and diagonalize π§ββοΈπ
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms