her(3)
her(3) β Library Functions Manual β her(3) π
part 1 of 3 β bestie, weβre in BLAS territory and itβs honestly kind of iconic. β¨
πΈ NAME πΈ
her - {he,sy}r: Hermitian/symmetric rank-1 update
β¨ SYNOPSIS β¨
Functions
Okay so hereβs the whole squad, no cap:
subroutine cher (uplo, n, alpha, x, incx, a, lda)
CHER
subroutine dsyr (uplo, n, alpha, x, incx, a, lda)
DSYR
subroutine ssyr (uplo, n, alpha, x, incx, a, lda)
SSYR
subroutine zher (uplo, n, alpha, x, incx, a, lda)
ZHER
subroutine csyr (uplo, n, alpha, x, incx, a, lda)
CSYR performs the symmetric rank-1 update of a complex symmetric
matrix.
subroutine zsyr (uplo, n, alpha, x, incx, a, lda)
ZSYR performs the symmetric rank-1 update of a complex symmetric
matrix.
π« Detailed Description π«
No extra prose here, bestie β it just rolls straight into the function docs. π«Ά
π§ Function Documentation π§
π subroutine cher π
subroutine cher (character uplo, integer n, real alpha, complex,
dimension(*) x, integer incx, complex, dimension(lda,*) a, integer lda)
π Purpose π
CHER performs the hermitian rank 1 operation:
A := alpha*x*x**H + A,
where alpha is a real scalar, x is an n element vector and A is an n by n hermitian matrix. Periodt. π
π Parameters π
UPLOβUPLO is CHARACTER*1. On entry,UPLOsays whether the upper or lower triangular part of the arrayAis referenced, like this:UPLO = 'U' or 'u'β only the upper triangular part ofAis to be referenced.UPLO = 'L' or 'l'β only the lower triangular part ofAis to be referenced.
NβN is INTEGER. On entry,Nspecifies the order of the matrixA.Nmust be at least zero. βALPHAβALPHA is REAL. On entry,ALPHAspecifies the scalaralpha. πXβX is COMPLEX array, dimension at least ( 1 + ( n - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain thenelement vectorx. π¦INCXβINCX is INTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. π«AβA is COMPLEX array, dimension ( LDA, N ).- Before entry with
UPLO = 'U' or 'u', the leadingnbynupper triangular part of the arrayAmust contain the upper triangular part of the hermitian matrix, and the strictly lower triangular part ofAis not referenced. On exit, the upper triangular part of the arrayAis overwritten by the upper triangular part of the updated matrix. π« - Before entry with
UPLO = 'L' or 'l', the leadingnbynlower triangular part of the arrayAmust contain the lower triangular part of the hermitian matrix, and the strictly upper triangular part ofAis not referenced. On exit, the lower triangular part of the arrayAis overwritten by the lower triangular part of the updated matrix. π« - Note that the imaginary parts of the diagonal elements need not be set, they are assumed to be zero, and on exit they are set to zero. Important lil detail, bestie. π«Ά
- Before entry with
LDAβLDA is INTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, n ). π
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
β Further Details: β
- Level 2 Blas routine.
- -- Written on 22-October-1986.
- Jack Dongarra, Argonne National Lab.
- Jeremy Du Croz, Nag Central Office.
- Sven Hammarling, Nag Central Office.
- Richard Hanson, Sandia National Labs.
Definition at line 134 of file cher.f.
π¦ subroutine csyr π¦
subroutine csyr (character uplo, integer n, complex alpha, complex,
dimension( * ) x, integer incx, complex, dimension( lda, * ) a, integer
lda)
CSYR performs the symmetric rank-1 update of a complex symmetric matrix. iykyk π
π Purpose π
CSYR performs the symmetric rank 1 operation:
A := alpha*x*x**H + A,
where alpha is a complex scalar, x is an n element vector and A is an n by n symmetric matrix. β¨
π Parameters π
UPLOβUPLO is CHARACTER*1. On entry,UPLOspecifies whether the upper or lower triangular part of the arrayAis to be referenced as follows:UPLO = 'U' or 'u'β only the upper triangular part ofAis to be referenced.UPLO = 'L' or 'l'β only the lower triangular part ofAis to be referenced.- Unchanged on exit. β
NβN is INTEGER. On entry,Nspecifies the order of the matrixA.Nmust be at least zero. Unchanged on exit. πΈALPHAβALPHA is COMPLEX. On entry,ALPHAspecifies the scalaralpha. Unchanged on exit. πXβX is COMPLEX array, dimension at least ( 1 + ( N - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain theN-element vectorx. Unchanged on exit. π¦INCXβINCX is INTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. Unchanged on exit. π«AβA is COMPLEX array, dimension ( LDA, N ).- Before entry, with
UPLO = 'U' or 'u', the leadingnbynupper triangular part of the arrayAmust contain the upper triangular part of the symmetric matrix, and the strictly lower triangular part ofAis not referenced. On exit, the upper triangular part of the arrayAis overwritten by the upper triangular part of the updated matrix. π« - Before entry, with
UPLO = 'L' or 'l', the leadingnbynlower triangular part of the arrayAmust contain the lower triangular part of the symmetric matrix, and the strictly upper triangular part ofAis not referenced. On exit, the lower triangular part of the arrayAis overwritten by the lower triangular part of the updated matrix. π«
- Before entry, with
LDAβLDA is INTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, N ). Unchanged on exit. π
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 134 of file csyr.f.
π§ subroutine dsyr π§
subroutine dsyr (character uplo, integer n, double precision alpha, double
precision, dimension(*) x, integer incx, double precision,
dimension(lda,*) a, integer lda)
π Purpose π
DSYR performs the symmetric rank 1 operation:
A := alpha*x*x**T + A,
where alpha is a real scalar, x is an n element vector and A is an n by n symmetric matrix. slay. π₯
π Parameters π
UPLOβUPLO is CHARACTER*1. On entry,UPLOspecifies whether the upper or lower triangular part of the arrayAis to be referenced as follows:UPLO = 'U' or 'u'β only the upper triangular part ofAis to be referenced.UPLO = 'L' or 'l'β only the lower triangular part ofAis to be referenced.
NβN is INTEGER. On entry,Nspecifies the order of the matrixA.Nmust be at least zero. πΈALPHAβALPHA is DOUBLE PRECISION.On entry,ALPHAspecifies the scalaralpha. πXβX is DOUBLE PRECISION array, dimension at least ( 1 + ( n - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain thenelement vectorx. π¦INCXβINCX is INTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. π«AβA is DOUBLE PRECISION array, dimension ( LDA, N ).- Before entry with
UPLO = 'U' or 'u', the leadingnbynupper triangular part of the arrayAmust contain the upper triangular part of the symmetric matrix, and the strictly lower triangular part ofAis not referenced. On exit, the upper triangular part of the arrayAis overwritten by the upper triangular part of the updated matrix. π« - Before entry with
UPLO = 'L' or 'l', the leadingnbynlower triangular part of the arrayAmust contain the lower triangular part of the symmetric matrix, and the strictly upper triangular part ofAis not referenced. On exit, the lower triangular part of the arrayAis overwritten by the lower triangular part of the updated matrix. π«
- Before entry with
LDAβLDA is INTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, n ). π
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
β Further Details: β
okay so weβre literally still mid-dsyr, and its Further Details block is giving old-school BLAS lore:
Level 2 Blas routine. -- Written on 22-October-1986. Jack Dongarra, Argonne National Lab. Jeremy Du Croz, Nag Central Office. Sven Hammarling, Nag Central Office. Richard Hanson, Sandia National Labs.
and then it wraps with Definition at line 131 of file dsyr.f. β periodt π
πΈ ssyr β real symmetric rank-1, no cap πΈ
subroutine ssyr (character uplo, integer n, real alpha, real, dimension(*) x, integer incx, real, dimension(lda,*) a, integer lda)
SSYR
Purpose: bestie, SSYR performs the symmetric rank 1 operation
A := alpha*x*x**T + A,
where alpha is a real scalar, x is an n element vector and A is an n by n symmetric matrix. iconic behavior β¨
Parameters
UPLOβCHARACTER*1. On entry,UPLOspecifies whether the upper or lower triangular part of the arrayAis to be referenced, like this:UPLO = 'U' or 'u'β only the upper triangular part ofAis to be referenced.UPLO = 'L' or 'l'β only the lower triangular part ofAis to be referenced.
NβINTEGER. On entry,Nspecifies the order of the matrixA.Nmust be at least zero.ALPHAβREAL. On entry,ALPHAspecifies the scalaralpha.XβREAL array, dimension at least( 1 + ( n - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain the n element vectorx.INCXβINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero.AβREAL array, dimension( LDA, N ).- Before entry with
UPLO = 'U' or 'u', the leading n by n upper triangular part of the arrayAmust contain the upper triangular part of the symmetric matrix and the strictly lower triangular part ofAis not referenced. On exit, the upper triangular part of the arrayAis overwritten by the upper triangular part of the updated matrix. - Before entry with
UPLO = 'L' or 'l', the leading n by n lower triangular part of the arrayAmust contain the lower triangular part of the symmetric matrix and the strictly upper triangular part ofAis not referenced. On exit, the lower triangular part of the arrayAis overwritten by the lower triangular part of the updated matrix.
- Before entry with
LDAβINTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, n ).
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Further Details:
Level 2 Blas routine. -- Written on 22-October-1986. Jack Dongarra, Argonne National Lab. Jeremy Du Croz, Nag Central Office. Sven Hammarling, Nag Central Office. Richard Hanson, Sandia National Labs.
Definition at line 131 of file ssyr.f.
π¦ zher β hermitian rank-1, complex girlie edition π¦
subroutine zher (character uplo, integer n, double precision alpha, complex*16, dimension(*) x, integer incx, complex*16, dimension(lda,*) a, integer lda)
ZHER
Purpose: ZHER performs the hermitian rank 1 operation
A := alpha*x*x**H + A,
where alpha is a real scalar, x is an n element vector and A is an n by n hermitian matrix. sheβs giving conjugate-transpose main character energy π
Parameters
UPLOβCHARACTER*1. On entry,UPLOspecifies whether the upper or lower triangular part of the arrayAis to be referenced as follows:UPLO = 'U' or 'u'β only the upper triangular part ofAis to be referenced.UPLO = 'L' or 'l'β only the lower triangular part ofAis to be referenced.
NβINTEGER. On entry,Nspecifies the order of the matrixA.Nmust be at least zero.ALPHAβDOUBLE PRECISION.On entry,ALPHAspecifies the scalaralpha.XβCOMPLEX*16 array, dimension at least( 1 + ( n - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain the n element vectorx.INCXβINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero.AβCOMPLEX*16 array, dimension( LDA, N ).- Before entry with
UPLO = 'U' or 'u', the leading n by n upper triangular part of the arrayAmust contain the upper triangular part of the hermitian matrix and the strictly lower triangular part ofAis not referenced. On exit, the upper triangular part of the arrayAis overwritten by the upper triangular part of the updated matrix. - Before entry with
UPLO = 'L' or 'l', the leading n by n lower triangular part of the arrayAmust contain the lower triangular part of the hermitian matrix and the strictly upper triangular part ofAis not referenced. On exit, the lower triangular part of the arrayAis overwritten by the lower triangular part of the updated matrix. - Note that the imaginary parts of the diagonal elements need not be set, they are assumed to be zero, and on exit they are set to zero. yes bestie, they get zeroed out π
- Before entry with
LDAβINTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, n ).
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Further Details:
Level 2 Blas routine. -- Written on 22-October-1986. Jack Dongarra, Argonne National Lab. Jeremy Du Croz, Nag Central Office. Sven Hammarling, Nag Central Office. Richard Hanson, Sandia National Labs.
Definition at line 134 of file zher.f.
π zsyr β complex symmetric rank-1 update, periodt π
subroutine zsyr (character uplo, integer n, complex*16 alpha, complex*16, dimension( * ) x, integer incx, complex*16, dimension( lda, * ) a, integer lda)
ZSYR performs the symmetric rank-1 update of a complex symmetric matrix.
Purpose: ZSYR performs the symmetric rank 1 operation
A := alpha*x*x**H + A,
where alpha is a complex scalar, x is an n element vector and A is an n by n symmetric matrix. lowkey obsessed with how clean this is β¨
Parameters
UPLOβCHARACTER*1. On entry,UPLOspecifies whether the upper or lower triangular part of the arrayAis to be referenced as follows:UPLO = 'U' or 'u'β only the upper triangular part ofAis to be referenced.UPLO = 'L' or 'l'β only the lower triangular part ofAis to be referenced.- Unchanged on exit.
NβINTEGER. On entry,Nspecifies the order of the matrixA.Nmust be at least zero. Unchanged on exit.ALPHAβCOMPLEX*16. On entry,ALPHAspecifies the scalaralpha. Unchanged on exit.XβCOMPLEX*16 array, dimension at least( 1 + ( N - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain the N-element vectorx. Unchanged on exit.INCXβINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. Unchanged on exit.AβCOMPLEX*16 array, dimension( LDA, N ).- Before entry, with
UPLO = 'U' or 'u', the leading n by n upper triangular part of the arrayAmust contain the upper triangular part of the symmetric matrix and the strictly lower triangular part ofAis not referenced. On exit, the upper triangular part of the arrayAis overwritten by the upper triangular part of the updated matrix. - Before entry, with
UPLO = 'L' or 'l', the leading n by n lower triangular part of the arrayAmust contain the lower triangular part of the symmetric matrix and the strictly upper triangular part ofAis not referenced. On exit, the lower triangular part of the arrayAis overwritten by the lower triangular part of the updated matrix.
- Before entry, with
LDAβINTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, N ). Unchanged on exit.
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 134 of file zsyr.f.
π AUTHOR π
Okay so plot twist bestie β nobody actually sat down and wrote this page by hand π . It's the OG automation slay:
Generated automatically by Doxygen for LAPACK from the source code.
That's it, that's the whole author section π«Ά. Doxygen did the typing, LAPACK supplied the brains, and the source code is the real main character here β¨. So if you were hoping to @ somebody about a typoβ¦ it's giving the source code, iykyk π.
And that's a wrap on her(3), bestie π β you made it all the way to the end, which is honestly iconic of you π. This whole page shipped as part of LAPACK, Version 3.12.0 β so go forth, conjugate that Hermitian matrix, and remember: no cap, that diagonal was real the whole time πβ¨πΈ
byeeee π
π¦ 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