ger(3)
π ger(3) β general matrix rank-1 update π
okay so bestie, welcome to ger(3) from the Library Functions Manual. This is the general matrix rank-1 update page, and the whole squad is here to update your matrix with main character energy. π
β¨
πΈ NAME πΈ
ger β ger: general matrix rank-1 update
β¨ SYNOPSIS β¨
Functions π«Ά
subroutine cgerc (m, n, alpha, x, incx, y, incy, a, lda)βCGERCsubroutine cgeru (m, n, alpha, x, incx, y, incy, a, lda)βCGERUsubroutine dger (m, n, alpha, x, incx, y, incy, a, lda)βDGERsubroutine sger (m, n, alpha, x, incx, y, incy, a, lda)βSGERsubroutine zgerc (m, n, alpha, x, incx, y, incy, a, lda)βZGERCsubroutine zgeru (m, n, alpha, x, incx, y, incy, a, lda)βZGERU
π DETAILED DESCRIPTION π
okay bestie, this is the ger family: general matrix rank-1 update. The synopsis gives you six subroutines to pick from β cgerc, cgeru, dger, sger, zgerc, and zgeru β and then the Function Documentation section breaks down the ones in this part. No cap, the whole vibe is βupdate A with a rank 1 operationβ π
π₯
π FUNCTION DOCUMENTATION π
π¦ cgerc β CGERC π¦
subroutine cgerc (integer m, integer n, complex alpha, complex, dimension(*) x, integer incx, complex, dimension(*) y, integer incy, complex, dimension(lda,*) a, integer lda)
Purpose: π―
CGERC performs the rank 1 operation
A := alpha*x*y**H + A,
where alpha is a scalar, x is an m element vector, y is an n element vector and A is an m by n matrix. π
Parameters π
MβMisINTEGER. On entry,Mspecifies the number of rows of the matrixA.Mmust be at least zero. π«ΆNβNisINTEGER. On entry,Nspecifies the number of columns of the matrixA.Nmust be at least zero. πΈALPHAβALPHAisCOMPLEX. On entry,ALPHAspecifies the scalaralpha. β¨XβXisCOMPLEXarray, dimension at least( 1 + ( m - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain the m element vectorx. π¦INCXβINCXisINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. πYβYisCOMPLEXarray, dimension at least( 1 + ( n - 1 )*abs( INCY ) ). Before entry, the incremented arrayYmust contain the n element vectory. πINCYβINCYisINTEGER. On entry,INCYspecifies the increment for the elements ofY.INCYmust not be zero. πAβAisCOMPLEXarray, dimension( LDA, N ). Before entry, the leading m by n part of the arrayAmust contain the matrix of coefficients. On exit,Ais overwritten by the updated matrix. π₯LDAβLDAisINTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, m ). π
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 cgerc.f. π
π cgeru β CGERU π
subroutine cgeru (integer m, integer n, complex alpha, complex, dimension(*) x, integer incx, complex, dimension(*) y, integer incy, complex, dimension(lda,*) a, integer lda)
Purpose: π―
CGERU performs the rank 1 operation
A := alpha*x*y**T + A,
where alpha is a scalar, x is an m element vector, y is an n element vector and A is an m by n matrix. π
Parameters π
MβMisINTEGER. On entry,Mspecifies the number of rows of the matrixA.Mmust be at least zero. π«ΆNβNisINTEGER. On entry,Nspecifies the number of columns of the matrixA.Nmust be at least zero. πΈALPHAβALPHAisCOMPLEX. On entry,ALPHAspecifies the scalaralpha. β¨XβXisCOMPLEXarray, dimension at least( 1 + ( m - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain the m element vectorx. π¦INCXβINCXisINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. πYβYisCOMPLEXarray, dimension at least( 1 + ( n - 1 )*abs( INCY ) ). Before entry, the incremented arrayYmust contain the n element vectory. πINCYβINCYisINTEGER. On entry,INCYspecifies the increment for the elements ofY.INCYmust not be zero. πAβAisCOMPLEXarray, dimension( LDA, N ). Before entry, the leading m by n part of the arrayAmust contain the matrix of coefficients. On exit,Ais overwritten by the updated matrix. π₯LDAβLDAisINTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, m ). π
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 cgeru.f. π
π dger β DGER π
subroutine dger (integer m, integer n, double precision alpha, double precision, dimension(*) x, integer incx, double precision, dimension(*) y, integer incy, double precision, dimension(lda,*) a, integer lda)
Purpose: π―
DGER performs the rank 1 operation
A := alpha*x*y**T + A,
where alpha is a scalar, x is an m element vector, y is an n element vector and A is an m by n matrix. π
Parameters π
MβMisINTEGER. On entry,Mspecifies the number of rows of the matrixA.Mmust be at least zero. π«ΆNβNisINTEGER. On entry,Nspecifies the number of columns of the matrixA.Nmust be at least zero. πΈALPHAβALPHAisDOUBLE PRECISION.On entry,ALPHAspecifies the scalaralpha. β¨XβXisDOUBLE PRECISIONarray, dimension at least( 1 + ( m - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain the m element vectorx. π¦INCXβINCXisINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. πYβYisDOUBLE PRECISIONarray, dimension at least( 1 + ( n - 1 )*abs( INCY ) ). Before entry, the incremented arrayYmust contain the n element vectory. πINCYβINCYisINTEGER. On entry,INCYspecifies the increment for the elements ofY.INCYmust not be zero. πAβAisDOUBLE PRECISIONarray, dimension( LDA, N ). Before entry, the leading m by n part of the arrayAmust contain the matrix of coefficients. On exit,Ais overwritten by the updated matrix. π₯LDAβLDAisINTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, m ). π
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 dger.f. π
π§ sger β SGER π§
subroutine sger (integer m, integer n, real alpha, real, dimension(*) x, integer incx, real, dimension(*) y, integer incy, real, dimension(lda,*) a, integer lda)
Purpose: π―
SGER performs the rank 1 operation
A := alpha*x*y**T + A,
where alpha is a scalar, x is an m element vector, y is an n element vector and A is an m by n matrix. π
Parameters π
MβMisINTEGER. On entry,Mspecifies the number of rows of the matrixA.Mmust be at least zero. π«ΆNβNisINTEGER. On entry,Nspecifies the number of columns of the matrixA.Nmust be at least zero. πΈALPHAβALPHAisREAL. On entry,ALPHAspecifies the scalaralpha. β¨XβXisREALarray, dimension at least( 1 + ( m - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain the m element vectorx. π¦INCXβINCXisINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero. πYβYisREALarray, dimension at least( 1 + ( n - 1 )*abs( INCY ) ). Before entry, the incremented arrayYmust contain the n element vectory. π
INCY
INCYβINTEGER. On entry,INCYtells us the increment for the elements ofY. And bestie,INCYmust not be zero π« like fr fr, zero is not the vibe here.AβREAL array, dimension ( LDA, N ). Before entry, the leading m by n part of the arrayAhas to contain the matrix of coefficients. On exit,Agets overwritten by the updated matrix π (she's not preserving your originals, she's a rank-1-update machine).LDAβINTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, m )β¨ no negotiating on that one.
π Author π
The absolute legends behind this:
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
πΈ Further Details: πΈ
Level 2 Blas routine.
And the origin story, preserved exactly:
-- 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 sger.f π
π¦ subroutine zgerc (integer m, integer n, complex*16 alpha, complex*16, dimension() x, integer incx, complex16, dimension() y, integer incy, complex16, dimension(lda,*) a, integer lda) π¦
Okay so this one's called ZGERC, the complex flavour π§ β hold onto your brain because the math is coming:
π Purpose:
ZGERC performs the rank 1 operation
A := alpha*x*y**H + A,
where alpha is a scalar, x is an m element vector, y is an n element vector and A is an m by n matrix. Note the **H β that's the conjugate-transpose move, iykyk π
β¨ Parameters β¨
MβINTEGER. On entry,Mspecifies the number of rows of the matrixA.Mmust be at least zero.NβINTEGER. On entry,Nspecifies the number of columns of the matrixA.Nmust be at least zero.ALPHAβCOMPLEX*16. On entry,ALPHAspecifies the scalar alpha. That's the main character of the operation ngl π₯XβCOMPLEX*16 array, dimension at least ( 1 + ( m - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain the m element vector x.INCXβINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero β same rule as always, don't test me πYβCOMPLEX*16 array, dimension at least ( 1 + ( n - 1 )*abs( INCY ) ). Before entry, the incremented arrayYmust contain the n element vector y.INCYβINTEGER. On entry,INCYspecifies the increment for the elements ofY.INCYmust not be zero. Periodt π«ΆAβCOMPLEX*16 array, dimension ( LDA, N ). Before entry, the leading m by n part of the arrayAmust contain the matrix of coefficients. On exit,Ais overwritten by the updated matrix. She ate and left no crumbs πLDAβINTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, m ).
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π Further Details: π
Level 2 Blas routine.
The lore, verbatim, from way back:
-- 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 zgerc.f π
π subroutine zgeru (integer m, integer n, complex*16 alpha, complex*16, dimension() x, integer incx, complex16, dimension() y, integer incy, complex16, dimension(lda,*) a, integer lda) π
And last but never least, ZGERU β the unconjugated sibling π¦ lowkey the chill one of the family.
π Purpose:
ZGERU performs the rank 1 operation
A := alpha*x*y**T + A,
where alpha is a scalar, x is an m element vector, y is an n element vector and A is an m by n matrix. See the **T? Plain old transpose β no conjugate, that's the whole difference between her and ZGERC bestie, that's it π
β Parameters β
MβINTEGER. On entry,Mspecifies the number of rows of the matrixA.Mmust be at least zero.NβINTEGER. On entry,Nspecifies the number of columns of the matrixA.Nmust be at least zero.ALPHAβCOMPLEX*16. On entry,ALPHAspecifies the scalar alpha.XβCOMPLEX*16 array, dimension at least ( 1 + ( m - 1 )*abs( INCX ) ). Before entry, the incremented arrayXmust contain the m element vector x.INCXβINTEGER. On entry,INCXspecifies the increment for the elements ofX.INCXmust not be zero.YβCOMPLEX*16 array, dimension at least ( 1 + ( n - 1 )*abs( INCY ) ). Before entry, the incremented arrayYmust contain the n element vector y.INCYβINTEGER. On entry,INCYspecifies the increment for the elements ofY.INCYmust not be zero πAβCOMPLEX*16 array, dimension ( LDA, N ). Before entry, the leading m by n part of the arrayAmust contain the matrix of coefficients. On exit,Ais overwritten by the updated matrix.LDAβINTEGER. On entry,LDAspecifies the first dimension ofAas declared in the calling (sub) program.LDAmust be at leastmax( 1, m ).
π§ Author π§
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π Further Details: π
Level 2 Blas routine.
Once more, with feeling β the original credits, exactly:
-- 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 zgeru.f π
Okay that's the whole page bestie, you made it π«Άβ¨ This gorgeous thing was generated automatically by Doxygen for LAPACK from the source code β no human typed it out by hand, it's giving machine-made icon behaviour π
And the version? LAPACK Version 3.12.0, dated to that ger(3) footer, slay π Byeee, go update some matrices πΈ
π¦ 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