SLATB4(3)

πŸ“¦ version 3.12.0, in opensuse-leap 16.0

πŸ’… SLATB4(3) β€” bestie's guide to the LAPACK matrix-vibe setter ✨

Okay so real talk, this page lives in the Library Functions Manual and it's all about the file /home/abui...IN/slatb4.f(3) β€” that's the whole address, yes it's long, no we're not shortening it, iykyk 🫢. Grab a snack and let's get into it.


🌸 SYNOPSIS 🌸

Functions/Subroutines πŸ’«

  • subroutine SLATB4 (path, imat, m, n, type, kl, ku, anorm, mode, cndnum, dist) β€” the whole cast list, and yes that trailing dist is doing main character energy at the very end πŸ’…
  • SLATB4 β€” that's it, that's the name, slay

πŸ¦‹ Function/Subroutine Documentation πŸ¦‹

Here's the full glow-up of the signature, character for character, no edits no cap:

subroutine SLATB4 (character*3 path, integer imat, integer m, integer n,
    character type, integer kl, integer ku, real anorm, integer mode, real
    cndnum, character dist)

And again, shorter, iconic:

SLATB4

✨ Purpose ✨

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

So like β€” it's the little subroutine that literally decides the vibes of the matrix you're about to generate. Type goes in, parameters come out. It's giving matchmaker but for matrices, and honestly? obsessed. πŸ”₯

πŸŽ€ Parameters πŸŽ€

Every single one, in order, nothing skipped, we don't do that here:

  • PATH β€” !> PATH is CHARACTER*3, !> the LAPACK path name. πŸ›€οΈ Three characters of pure identity.
  • IMAT β€” !> IMAT is INTEGER, !> an integer key describing which matrix to generate for this PATH. Think of it as the menu number at your fave restaurant, except the meal is a matrix πŸ“
  • M β€” !> M is INTEGER, !> the number of rows in the matrix to be generated. Rows. The horizontal girlies.
  • N β€” !> N is INTEGER, !> the number of columns in the matrix to be generated. Columns. The vertical girlies. 🌈
  • 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 πŸ™ˆ
  • KL β€” !> KL is INTEGER, !> the lower band width of the matrix to be generated. Lowkey the lower bound, literally.
  • KU β€” !> KU is INTEGER, !> the upper band width of the matrix to be generated. Highkey the upper bound, literally. ⬆️
  • ANORM β€” !> ANORM is REAL, !> the desired norm of the matrix to be generated. The diagonal matrix of singular values or eigenvalues is scaled by this value. So it's not just a number, it's the number that scales the whole diagonal situation πŸ‘‘
  • MODE β€” !> MODE is INTEGER, !> a key indicating how to choose the vector of eigenvalues. A key! Another key! This subroutine is basically a keychain πŸ”‘
  • CNDNUM β€” !> CNDNUM is REAL, !> the desired condition number. Manifesting a good condition number for u ✨
  • DIST β€” !> DIST is CHARACTER*1, !> the type of distribution to be used by the random number generator. Randomness, but make it typed πŸ’«

🌟 Author 🌟

The absolute legends behind this:

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

A whole squad. Group project but they actually carried it πŸ«ΆπŸ‘‘

πŸ” Definition πŸ”

Defined at line 118 of file slatb4.f. Line 118! Not 117, not 119. Precision, periodt. πŸ’…


⭐ Author ⭐

This page was generated automatically by Doxygen for LAPACK from the source code. Robot-made, but make it cute πŸ€–πŸŽ€


And that's the whole thing bestie, hope it slayed πŸ’– β€” this page is from LAPACK, Version 3.12.0, and it points at /home/abui...IN/slatb4.f(3). Bye!! πŸŒΈπŸ¦‹πŸ’œ

πŸ“¦ where this page comes from