SRC/zlacrm.f(3)
β¨ SRC/zlacrm.f β¨
okay bestie, so this is a page out of the LAPACK manual (that's the Library Functions Manual, in case you were wondering π
) and today's main character is a lil Fortran file called zlacrm.f. it's giving "quiet overachiever" and honestly? we're obsessed.
π¦ SYNOPSIS π¦
Functions/Subroutines
subroutine zlacrm (m, n, a, lda, b, ldb, c, ldc, rwork)β ZLACRM multiplies a complex matrix by a square real matrix. that's it, that's the girl π
πΈ Function/Subroutine Documentation πΈ
subroutine zlacrm (integer m, integer n, complex*16, dimension( lda, * ) a, integer lda, double precision, dimension( ldb, * ) b, integer ldb, complex*16, dimension( ldc, * ) c, integer ldc, double precision, dimension( * ) rwork)
okay so picture this: ZLACRM multiplies a complex matrix by a square real matrix. no cap, that's the whole job description π₯
π Purpose:
!>
!> ZLACRM performs a very simple matrix-matrix multiplication:
!> C := A * B,
!> where A is M by N and complex; B is N by N and real;
!> C is M by N and complex.
!>
literally just C := A * B. simple queen behavior. A is M by N and complex π, B is N by N and real π, C is M by N and complex π. that's the whole lore.
π Parameters π
Mβ!> M is INTEGER,!> The number of rows of the matrix A and of the matrix C.,!> M >= 0.so like, how many rows A and C are serving. and bestie,M >= 0β no negative row counts allowed, we don't do that here πNβ!> N is INTEGER,!> The number of columns and rows of the matrix B and,!> the number of columns of the matrix C.,!> N >= 0.so N is doing double duty: it's how many columns AND rows B has (she's square, iconic π) and how many columns C has.N >= 0too, keep it legal β¨Aβ!> A is COMPLEX*16 array, dimension (LDA, N),!> On entry, A contains the M by N matrix A.on entry! so this is the input era, she's incoming complex and ready to slay πLDAβ!> LDA is INTEGER,!> The leading dimension of the array A. LDA >=max(1,M).leading dimension of A. note the constraint exactly as written:LDA >=max(1,M)βBβ!> B is DOUBLE PRECISION array, dimension (LDB, N),!> On entry, B contains the N by N matrix B.on entry, and she'sDOUBLE PRECISIONβ real numbers only, no imaginary drama πLDBβ!> LDB is INTEGER,!> The leading dimension of the array B. LDB >=max(1,N).leading dimension of B, and yes:LDB >=max(1,N)π¦Cβ!> C is COMPLEX*16 array, dimension (LDC, N),!> On exit, C contains the M by N matrix C.on exit β this is the glow-up moment, C comes back with the answer πLDCβ!> LDC is INTEGER,!> The leading dimension of the array C. LDC >=max(1,N).leading dimension of C. and here's the tea: the source literally saysLDC >=max(1,N)β we're reporting it exactly as it appears, don't come for me πRWORKβ!> RWORK is DOUBLE PRECISION array, dimension (2*M*N)that's the workspace, dimension(2*M*N), doing the behind-the-scenes heavy lifting so A, B and C can have their main character moment β¨
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
the whole squad gets credit, as they should π«Ά
Definition at line 113 of file zlacrm.f. β yes, line 113, go look if you don't believe me π
π Author (the meta one) π
Generated automatically by Doxygen for LAPACK from the source code. not a human, just vibes and a doc generator doing its thing π€β¨
lowkey reminder bestie: all those array dimension constraints and >= bounds up there are load-bearing β they're not decoration, so respect them fr fr π
and that's the page! π brought to you by LAPACK, Version 3.12.0, dated on that LAPACK footer energy β mwah, go multiply something complex by something real, you've got this πΈβ¨
π¦ 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