TESTING/EIG/dlatb9.f(3)

πŸ“¦
version 3.12.1 Β· 2 versions
, in arch rolling

πŸ’… TESTING/EIG/dlatb9.f(3)

okay so this is a page from the Library Functions Manual for TESTING/EIG/dlatb9.f β€” yes bestie, the .f is right there in the name, it's Fortran, we love her ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

Functions/Subroutines

subroutine dlatb9 (path, imat, m, p, n, type, kla, kua, klb, kub, anorm,
    bnorm, modea, modeb, cndnma, cndnmb, dista, distb)

DLATB9 β€” that's the whole vibe, she's a subroutine and she's got a lot of arguments, periodt πŸŽ€


🌸 Function/Subroutine Documentation 🌸

subroutine dlatb9 (character*3 path, integer imat, integer m, integer p,
    integer n, character type, integer kla, integer kua, integer klb,
    integer kub, double precision anorm, double precision bnorm, integer
    modea, integer modeb, double precision cndnma, double precision cndnmb,
    character dista, character distb)

DLATB9

✨ Purpose: ✨

!> !> DLATB9 sets parameters for the matrix generator based on the type of !> matrix to be generated. !>

no cap, that's literally her whole job 🫢 she picks the parameters for the matrix generator depending on which kind of matrix you're gonna make. iconic behaviour honestly.


🧚 Parameters 🧚

  • PATH
!> PATH is CHARACTER*3 !> The LAPACK path name. !>

it's a CHARACTER*3 and it's the LAPACK path name, iykyk πŸ’œ

  • IMAT
!> IMAT is INTEGER !> An integer key describing which matrix to generate for this !> path. !> = 1: A: diagonal, B: upper triangular !> = 2: A: upper triangular, B: upper triangular !> = 3: A: lower triangular, B: upper triangular !> Else: A: general dense, B: general dense !>

integer key, tells us which matrix to generate for this path:

  • = 1: A: diagonal, B: upper triangular
  • = 2: A: upper triangular, B: upper triangular
  • = 3: A: lower triangular, B: upper triangular
  • Else: A: general dense, B: general dense

the way that Else is just catching everything else 😭 main character energy fr

  • M
!> M is INTEGER !> The number of rows in the matrix to be generated. !>

rows. that's it, that's the vibe. πŸ“

  • P
!> P is INTEGER !>

that's all she wrote bestie β€” P is INTEGER, no further notes, we respect the mystery πŸ™ˆ

  • N
!> N is INTEGER !> The number of columns in the matrix to be generated. !>

columns, slay 🌈

  • TYPE
!> TYPE is CHARACTER*1 !> The type of the matrix to be generated: !> = 'S': symmetric matrix; !> = 'P': symmetric positive (semi)definite matrix; !> = 'N': nonsymmetric matrix. !>

CHARACTER*1, and it says what kind of matrix we're making:

  • = 'S': symmetric matrix;
  • = 'P': symmetric positive (semi)definite matrix;
  • = 'N': nonsymmetric matrix.
  • KLA
!> KLA is INTEGER !> The lower band width of the matrix to be generated. !>

lower band width πŸ’–

  • KUA
!> KUA is INTEGER !> The upper band width of the matrix to be generated. !>

upper band width πŸ’–

  • KLB
!> KLB is INTEGER !> The lower band width of the matrix to be generated. !>

lower band width again (different matrix, bestie, keep up πŸ’€)

  • KUB
!> KUA is INTEGER !> The upper band width of the matrix to be generated. !>

upper band width β€” and yes, the docs literally say KUA in the KUB block, i'm not fixing it, i don't make the rules, i just report them 😭✨

  • ANORM
!> ANORM is DOUBLE PRECISION !> The desired norm of the matrix to be generated. The diagonal !> matrix of singular values or eigenvalues is scaled by this !> value. !>

DOUBLE PRECISION, the norm you want β€” the diagonal matrix of singular values or eigenvalues gets scaled by this value. highkey important πŸ”₯

  • BNORM
!> BNORM is DOUBLE PRECISION !> The desired norm of the matrix to be generated. The diagonal !> matrix of singular values or eigenvalues is scaled by this !> value. !>

same deal, DOUBLE PRECISION, the desired norm, that diagonal matrix of singular values or eigenvalues scaled by this value. she and ANORM are matching 🫢

  • MODEA
!> MODEA is INTEGER !> A key indicating how to choose the vector of eigenvalues. !>

integer key for choosing the vector of eigenvalues πŸ‘‘

  • MODEB
!> MODEB is INTEGER !> A key indicating how to choose the vector of eigenvalues. !>

integer key for choosing the vector of eigenvalues, but make it B ✨

  • CNDNMA
!> CNDNMA is DOUBLE PRECISION !> The desired condition number. !>

DOUBLE PRECISION, the desired condition number πŸŽ€

  • CNDNMB
!> CNDNMB is DOUBLE PRECISION !> The desired condition number. !>

DOUBLE PRECISION, the desired condition number, part two πŸŽ€

  • DISTA
!> DISTA is CHARACTER*1 !> The type of distribution to be used by the random number !> generator. !>

CHARACTER*1 β€” which distribution the random number generator should use πŸ¦‹

  • DISTB
!> DISTB is CHARACTER*1 !> The type of distribution to be used by the random number !> generator. !>

CHARACTER*1 β€” again, the type of distribution used by the random number generator 🌸


πŸ‘‘ Author πŸ‘‘

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

the whole squad ate, no crumbs πŸ’…

Definition at line 167 of file dlatb9.f.


πŸ’œ Author πŸ’œ

Generated automatically by Doxygen for LAPACK from the source code.


heads up bestie: this page was auto-generated, so if something reads weird, blame Doxygen, not me 🫢

LAPACK β€” Version 3.12.0 β€” ok that's the whole page, mwah, go read dlatb9.f at line 167 and slay πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from