hpr(3)
okay so bestie, this is hpr(3) from the Library Functions Manual, and sheβs serving {hp,sp}r: Hermitian/symmetric rank-1 update realness π
β¨ like if youβve ever needed a rank-1 update on a packed Hermitian or symmetric matrix, this is literally your girl. no cap, sheβs iconic.
π NAME π
hpr β {hp,sp}r: Hermitian/symmetric rank-1 update π«Ά
π SYNOPSIS π
π Functions π
chprβsubroutine chpr (uplo, n, alpha, x, incx, ap)β CHPR πdsprβsubroutine dspr (uplo, n, alpha, x, incx, ap)β DSPR β¨ssprβsubroutine sspr (uplo, n, alpha, x, incx, ap)β SSPR πΈzhprβsubroutine zhpr (uplo, n, alpha, x, incx, ap)β ZHPR π¦csprβsubroutine cspr (uplo, n, alpha, x, incx, ap)β CSPR performs the symmetrical rank-1 update of a complex symmetric packed matrix. πzsprβsubroutine zspr (uplo, n, alpha, x, incx, ap)β ZSPR performs the symmetrical rank-1 update of a complex symmetric packed matrix. π§
π¦ Detailed Description π¦
like, the actual documentation section, bestie β buckle up π
π Function Documentation π
πΈ subroutine chpr πΈ
subroutine chpr (character uplo, integer n, real alpha, complex, dimension(*) x, integer incx, complex, dimension(*) ap)
CHPR
Purpose:
okay so CHPR 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, supplied in packed form. periodt. π
Parameters
UPLOβUPLO is CHARACTER*1. On entry,UPLOspecifies whether the upper or lower triangular part of the matrixAis supplied in the packed arrayAPas follows:UPLO = 'U' or 'u'β the upper triangular part ofAis supplied inAP.UPLO = 'L' or 'l'β the lower triangular part ofAis supplied inAP.
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.APβAP is COMPLEX array, dimension at least ( ( n*( n + 1 ) )/2 ). Before entry withUPLO = 'U' or 'u', the arrayAPmust contain the upper triangular part of the hermitian matrix packed sequentially, column by column, so thatAP( 1 )containsa( 1, 1 ),AP( 2 )andAP( 3 )containa( 1, 2 )anda( 2, 2 )respectively, and so on. On exit, the arrayAPis overwritten by the upper triangular part of the updated matrix. Before entry withUPLO = 'L' or 'l', the arrayAPmust contain the lower triangular part of the hermitian matrix packed sequentially, column by column, so thatAP( 1 )containsa( 1, 1 ),AP( 2 )andAP( 3 )containa( 2, 1 )anda( 3, 1 )respectively, and so on. On exit, the arrayAPis 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 tea.
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 129 of file chpr.f. β¨
π¦ subroutine cspr π¦
subroutine cspr (character uplo, integer n, complex alpha, complex, dimension( * ) x, integer incx, complex, dimension( * ) ap)
CSPR performs the symmetrical rank-1 update of a complex symmetric packed matrix. π
Purpose:
CSPR 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, supplied in packed form.
Parameters
UPLOβUPLO is CHARACTER*1. On entry,UPLOspecifies whether the upper or lower triangular part of the matrixAis supplied in the packed arrayAPas follows:UPLO = 'U' or 'u'β the upper triangular part ofAis supplied inAP.UPLO = 'L' or 'l'β the lower triangular part ofAis supplied inAP. 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.APβAP is COMPLEX array, dimension at least ( ( N*( N + 1 ) )/2 ). Before entry, withUPLO = 'U' or 'u', the arrayAPmust contain the upper triangular part of the symmetric matrix packed sequentially, column by column, so thatAP( 1 )containsa( 1, 1 ),AP( 2 )andAP( 3 )containa( 1, 2 )anda( 2, 2 )respectively, and so on. On exit, the arrayAPis overwritten by the upper triangular part of the updated matrix. Before entry, withUPLO = 'L' or 'l', the arrayAPmust contain the lower triangular part of the symmetric matrix packed sequentially, column by column, so thatAP( 1 )containsa( 1, 1 ),AP( 2 )andAP( 3 )containa( 2, 1 )anda( 3, 1 )respectively, and so on. On exit, the arrayAPis 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. π
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 131 of file cspr.f. π₯
π subroutine dspr π
subroutine dspr (character uplo, integer n, double precision alpha, double precision, dimension(*) x, integer incx, double precision, dimension(*) ap)
DSPR
Purpose:
DSPR 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, supplied in packed form. π
Parameters
UPLOβUPLO is CHARACTER*1. On entry,UPLOspecifies whether the upper or lower triangular part of the matrixAis supplied in the packed arrayAPas follows:UPLO = 'U' or 'u'β the upper triangular part ofAis supplied inAP.UPLO = 'L' or 'l'β the lower triangular part ofAis supplied inAP.
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.APβAP is DOUBLE PRECISION array, dimension at least ( ( n*( n + 1 ) )/2 ). Before entry withUPLO = 'U' or 'u', the arrayAPmust contain the upper triangular part of the symmetric matrix packed sequentially, column by column, so thatAP( 1 )containsa( 1, 1 ),AP( 2 )andAP( 3 )containa( 1, 2 )anda( 2, 2 )respectively, and so on. On exit, the arrayAPis overwritten by the upper triangular part of the updated matrix. Before entry withUPLO = 'L' or 'l', the arrayAPmust contain the lower triangular part of the symmetric matrix packed sequentially, column by column, so thatAP( 1 )containsa( 1, 1 ),AP( 2 )andAP( 3 )containa( 2, 1 )anda( 3, 1 )respectively, and so on. On exit, the arrayAPis overwritten by the lower triangular part of the updated matrix. π
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Further Details:
(part 2 picks up right here, bestie π¦)
!>
!> 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 126 of file dspr.f.
β¨ subroutine sspr β¨
subroutine sspr (character uplo, integer n, real alpha, real, dimension(*) x, integer incx, real, dimension(*) ap)
πΈ Purpose πΈ
Okay so SSPR 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, supplied in packed form. Slay, thatβs the whole vibe. β¨
π Parameters π
UPLOβCHARACTER*1. On entry,UPLOspecifies whether the upper or lower triangular part of the matrixAis supplied in the packed arrayAPas follows:UPLO = 'U'or'u'β the upper triangular part ofAis supplied inAP.UPLO = 'L'or'l'β the lower triangular part ofAis supplied inAP.
NβINTEGER. On entry,Nspecifies the order of the matrixA.Nmust be at least zero. No cap. π«ΆALPHAβREAL. On entry,ALPHAspecifies the scalaralpha.XβREAL array, dimension at least ( 1 + ( n - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain thenelement vectorx.INCXβINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. π¨APβREAL array, dimension at least ( ( n*( n + 1 ) )/2 ). Before entry withUPLO = 'U'or'u', the arrayAPmust contain the upper triangular part of the symmetric matrix packed sequentially, column by column, so thatAP( 1 )containsa( 1, 1 ),AP( 2 )andAP( 3 )containa( 1, 2 )anda( 2, 2 )respectively, and so on. On exit, the arrayAPis overwritten by the upper triangular part of the updated matrix. π
Before entry with UPLO = 'L' or 'l', the array AP must contain the lower triangular part of the symmetric matrix packed sequentially, column by column, so that AP( 1 ) contains a( 1, 1 ), AP( 2 ) and AP( 3 ) contain a( 2, 1 ) and a( 3, 1 ) respectively, and so on. On exit, the array AP is overwritten by the lower triangular part of the updated matrix. π¦
π 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 126 of file sspr.f.
β¨ subroutine zhpr β¨
subroutine zhpr (character uplo, integer n, double precision alpha, complex*16, dimension(*) x, integer incx, complex*16, dimension(*) ap)
πΈ Purpose πΈ
ZHPR 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, supplied in packed form. Iconic. π
π Parameters π
UPLOβCHARACTER*1. On entry,UPLOspecifies whether the upper or lower triangular part of the matrixAis supplied in the packed arrayAPas follows:UPLO = 'U'or'u'β the upper triangular part ofAis supplied inAP.UPLO = 'L'or'l'β the lower triangular part ofAis supplied inAP.
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 thenelement vectorx.INCXβINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero.APβCOMPLEX*16 array, dimension at least ( ( n*( n + 1 ) )/2 ). Before entry withUPLO = 'U'or'u', the arrayAPmust contain the upper triangular part of the hermitian matrix packed sequentially, column by column, so thatAP( 1 )containsa( 1, 1 ),AP( 2 )andAP( 3 )containa( 1, 2 )anda( 2, 2 )respectively, and so on. On exit, the arrayAPis overwritten by the upper triangular part of the updated matrix. β¨
Before entry with UPLO = 'L' or 'l', the array AP must contain the lower triangular part of the hermitian matrix packed sequentially, column by column, so that AP( 1 ) contains a( 1, 1 ), AP( 2 ) and AP( 3 ) contain a( 2, 1 ) and a( 3, 1 ) respectively, and so on. On exit, the array AP is 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. π
π 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 129 of file zhpr.f.
β¨ subroutine zspr β¨
subroutine zspr (character uplo, integer n, complex*16 alpha, complex*16, dimension( * ) x, integer incx, complex*16, dimension( * ) ap)
ZSPR performs the symmetrical rank-1 update of a complex symmetric packed matrix. Main character energy fr fr. π
πΈ Purpose πΈ
ZSPR 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, supplied in packed form. Periodt. β¨
π Parameters π
UPLOβCHARACTER*1. On entry,UPLOspecifies whether the upper or lower triangular part of the matrixAis supplied in the packed arrayAPas follows:UPLO = 'U'or'u'β the upper triangular part ofAis supplied inAP.UPLO = 'L'or'l'β the lower triangular part ofAis supplied inAP.
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 theN-element vectorx. Unchanged on exit.INCXβINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. Unchanged on exit. π¨APβCOMPLEX*16 array, dimension at least ( ( N*( N + 1 ) )/2 ). Before entry, withUPLO = 'U'or'u', the arrayAPmust contain the upper triangular part of the symmetric matrix packed sequentially, column by column, so thatAP( 1 )containsa( 1, 1 ),AP( 2 )andAP( 3 )containa( 1, 2 )anda( 2, 2 )respectively, and so on. On exit, the arrayAPis overwritten by the upper triangular part of the updated matrix. πΈ
Before entry, with UPLO = 'L' or 'l', the array AP must contain the lower triangular part of the symmetric matrix packed sequentially, column by column, so that AP( 1 ) contains a( 1, 1 ), AP( 2 ) and AP( 3 ) contain a( 2, 1 ) and a( 3, 1 ) respectively, and so on. On exit, the array AP is 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. π«Ά
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 131 of file zspr.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
Okay bestie, thatβs the whole hpr(3) situation! π
The footer vibes are LAPACK Version 3.12.0, page hpr(3) β mwah πβ¨
π¦ 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