larra(3)

✨ NAME ✨

larra β€” bestie, this is literally the step in stemr πŸŽ€ like it's the splitting-points girlie of the LAPACK universe, and no cap, she eats.


🌸 SYNOPSIS 🌸

πŸ’œ Functions

  • subroutine dlarra (n, d, e, e2, spltol, tnrm, nsplit, isplit, info) β€” DLARRA computes the splitting points with the specified threshold. (double precision version, she's giving precision πŸ’…)
  • subroutine slarra (n, d, e, e2, spltol, tnrm, nsplit, isplit, info) β€” SLARRA computes the splitting points with the specified threshold. (single precision twin, same energy fr fr)

πŸ¦‹ Detailed Description πŸ¦‹

okay so real talk: this page is the full documentation dump, and below you'll find every single function doc in all its glory. no skips, no cuts, we're reading the whole thing together bestie 🫢


πŸ‘‘ Function Documentation πŸ‘‘

⭐ subroutine dlarra (integer n, double precision, dimension( * ) d, double precision, dimension( * ) e, double precision, dimension( * ) e2, double precision spltol, double precision tnrm, integer nsplit, integer, dimension( * ) isplit, integer info)

subroutine dlarra (integer n, double precision, dimension( * ) d, double precision, dimension( * ) e, double precision, dimension( * ) e2, double precision spltol, double precision tnrm, integer nsplit, integer, dimension( * ) isplit, integer info)

DLARRA computes the splitting points with the specified threshold. she's the main character of this page ngl πŸ’…

πŸ”₯ Purpose:

Compute the splitting points with threshold SPLTOL. DLARRA sets any off-diagonal elements to zero. like, literally zero. gone. periodt ✨

🌈 Parameters

  • N

N is INTEGER. The order of the matrix. N > 0. (no zero-sized matrix shenanigans, she said positive only πŸ™ˆ)

  • D

D is DOUBLE PRECISION array, dimension (N). On entry, the N diagonal elements of the tridiagonal matrix T. the main-character diagonal, yup πŸŽ€

  • E

E is DOUBLE PRECISION array, dimension (N). On entry, the first (N-1) entries contain the subdiagonal elements of the tridiagonal matrix T; E(N) need not be set. On exit, the entries E( ISPLIT( I ) ), 1 <= I <= NSPLIT, are set to zero, the other entries of E are untouched. so she only zeroes her chosen spots, the rest stay exactly as they were β€” respectful queen 🫢

  • E2

E2 is DOUBLE PRECISION array, dimension (N). On entry, the first (N-1) entries contain the SQUARES of the subdiagonal elements of the tridiagonal matrix T; E2(N) need not be set. On exit, the entries E2( ISPLIT( I ) ), 1 <= I <= NSPLIT, have been set to zero. yes bestie, SQUARES β€” like the subdiagonal but pre-squared, iykyk πŸ”₯

  • SPLTOL

SPLTOL is DOUBLE PRECISION. The threshold for splitting. Two criteria can be used: SPLTOL<0 : criterion based on absolute off-diagonal value; SPLTOL>0 : criterion that preserves relative accuracy. so like, negative means absolute-value vibes, positive means relative-accuracy vibes β€” pick your fighter πŸ’€

  • TNRM

TNRM is DOUBLE PRECISION. The norm of the matrix. that's it, that's the whole parameter, she's just the norm 🌸

  • NSPLIT

NSPLIT is INTEGER. The number of blocks T splits into. 1 <= NSPLIT <= N. the block count, bounded and beautiful ⭐

  • ISPLIT

ISPLIT is INTEGER array, dimension (N). The splitting points, at which T breaks up into blocks. The first block consists of rows/columns 1 to ISPLIT(1), the second of rows/columns ISPLIT(1)+1 through ISPLIT(2), etc., and the NSPLIT-th consists of rows/columns ISPLIT(NSPLIT-1)+1 through ISPLIT(NSPLIT)=N. it's giving "cut here, cut here, cut here" and honestly? obsessed with the indexing πŸ’…

  • INFO

INFO is INTEGER. = 0: successful exit. that's the only value listed, and it's the one we like 😭✨

πŸ’– Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

πŸ“ Contributors:

Beresford Parlett, University of California, Berkeley, USA

Jim Demmel, University of California, Berkeley, USA

Inderjit Dhillon, University of Texas, Austin, USA

Osni Marques, LBNL/NERSC, USA

Christof Voemel, University of California, Berkeley, USA

Definition at line 134 of file dlarra.f.


🌟 subroutine slarra (integer n, real, dimension( * ) d, real, dimension( * ) e, real, dimension( * ) e2, real spltol, real tnrm, integer nsplit, integer, dimension( * ) isplit, integer info)

subroutine slarra (integer n, real, dimension( * ) d, real, dimension( * ) e, real, dimension( * ) e2, real spltol, real tnrm, integer nsplit, integer, dimension( * ) isplit, integer info)

SLARRA computes the splitting points with the specified threshold. same job, single precision, still iconic πŸ¦‹

πŸ”₯ Purpose:

Compute the splitting points with threshold SPLTOL. SLARRA sets any off-diagonal elements to zero. zeroed. deleted. bye πŸ’€

🌈 Parameters

  • N

N is INTEGER. The order of the matrix. N > 0. (again: positive only, she does not do zero πŸ™ˆ)

  • D

D is REAL array, dimension (N). On entry, the N diagonal elements of the tridiagonal matrix T. the diagonal, but make it REAL πŸŽ€

  • E

E is REAL array, dimension (N). On entry, the first (N-1) entries contain the subdiagonal elements of the tridiagonal matrix T; E(N) need not be set. On exit, the entries E( ISPLIT( I ) ), 1 <= I <= NSPLIT, are set to zero, the other entries of E are untouched. selective zeroing only, we love a considerate algorithm 🫢

  • E2

E2 is REAL array, dimension (N). On entry, the first (N-1) entries contain the SQUARES of the subdiagonal elements of the tridiagonal matrix T; E2(N) need not be set. On exit, the entries E2( ISPLIT( I ) ), 1 <= I <= NSPLIT, have been set to zero. SQUARES again, don't forget the squares bestie πŸ”₯

  • SPLTOL

SPLTOL is REAL. The threshold for splitting. Two criteria can be used: SPLTOL<0 : criterion based on absolute off-diagonal value; SPLTOL>0 : criterion that preserves relative accuracy. same two modes, same drama, pick wisely πŸ’…

  • TNRM

TNRM is REAL. The norm of the matrix. still just vibing as the norm 🌸

  • NSPLIT

NSPLIT is INTEGER. The number of blocks T splits into. 1 <= NSPLIT <= N. bounded block baddie ⭐

  • ISPLIT

ISPLIT is INTEGER array, dimension (N). The splitting points, at which T breaks up into blocks. The first block consists of rows/columns 1 to ISPLIT(1), the second of rows/columns ISPLIT(1)+1 through ISPLIT(2), etc., and the NSPLIT-th consists of rows/columns ISPLIT(NSPLIT-1)+1 through ISPLIT(NSPLIT)=N. literally the same slicing scheme, and it still slays πŸ’–

  • INFO

INFO is INTEGER. = 0: successful exit. success only, we don't know her otherwise 😭✨

πŸ’– Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

πŸ“ Contributors:

Beresford Parlett, University of California, Berkeley, USA

Jim Demmel, University of California, Berkeley, USA

Inderjit Dhillon, University of Texas, Austin, USA

Osni Marques, LBNL/NERSC, USA

Christof Voemel, University of California, Berkeley, USA

Definition at line 134 of file slarra.f.


🧚 Author 🧚

Generated automatically by Doxygen for LAPACK from the source code. (yes, the robots wrote the docs, we just gave them a glow-up ✨)


ok that's the whole page bestie, every flag, every parameter, every contributor β€” nothing dropped, nothing guessed πŸ’…

LAPACK, Version 3.12.0, and this little larra(3) page β€” written by Doxygen, narrated by me, delivered with love πŸŽ€ mwah, go split some matrices responsibly πŸ«ΆπŸ’–

πŸ“¦ where this page comes from