SRC/dlaeda.f(3)

๐Ÿ“ฆ
version 3.12.1 ยท 4 versions
, in arch rolling

okay so bestie, welcome to SRC/dlaeda.f(3) from the Library Functions Manual โ€” yes, we're doing Fortran LAPACK lore today and it's giving iconic ๐Ÿ’…โœจ

๐ŸŒธ NAME ๐ŸŒธ

SRC/dlaeda.f โ€” that's the name, no cap. This page is serving the dlaeda subroutine and its whole argument friend group ๐Ÿ’–.

โœจ SYNOPSIS โœจ

๐Ÿงš Functions/Subroutines ๐Ÿงš

       subroutine dlaeda (n, tlvls, curlvl, curpbm, prmptr, perm, givptr,
           givcol, givnum, q, qptr, z, ztemp, info)
           DLAEDA used by DSTEDC. Computes the Z vector determining the rank-
           one modification of the diagonal matrix. Used when the original
           matrix is dense.

Short version: this is the dlaeda subroutine and its entire argument roster. We're gonna meet every single one, don't worry ๐Ÿซถ.

๐ŸŒ€ Function/Subroutine Documentation ๐ŸŒ€

       subroutine dlaeda (integer n, integer tlvls, integer curlvl, integer curpbm,
           integer, dimension( * ) prmptr, integer, dimension( * ) perm, integer,
           dimension( * ) givptr, integer, dimension( 2, * ) givcol, double
           precision, dimension( 2, * ) givnum, double precision, dimension( * ) q,
           integer, dimension( * ) qptr, double precision, dimension( * ) z, double
           precision, dimension( * ) ztemp, integer info)

DLAEDA used by DSTEDC. Computes the Z vector determining the rank-one modification of the diagonal matrix. Used when the original matrix is dense. That's the whole vibe check ๐Ÿฆ‹.

๐ŸŽฏ Purpose ๐ŸŽฏ

DLAEDA computes the Z vector corresponding to the merge step in the CURLVLth step of the merge process with TLVLS steps for the CURPBMth problem. Merge-step Z-vector realness, periodt โœจ.

๐Ÿ’… Parameters ๐Ÿ’…

N

N is an INTEGER. It's the dimension of the symmetric tridiagonal matrix, and yes bestie: N >= 0. No negative-dimension nonsense here ๐Ÿ’€.

TLVLS

TLVLS is an INTEGER. The total number of merging levels in the overall divide and conquer tree. Very tree. Very merge. ๐ŸŒณ

CURLVL

CURLVL is an INTEGER. The current level in the overall merge routine, with 0 <= curlvl <= tlvls. Stay in range, queen ๐Ÿ‘‘.

CURPBM

CURPBM is an INTEGER. The current problem in the current level in the overall merge routine (counting from upper left to lower right). iykyk ๐Ÿงญ.

PRMPTR

PRMPTR is an INTEGER array, dimension (N lg N). It contains a list of pointers which indicate where in PERM a level's permutation is stored. PRMPTR(i+1) - PRMPTR(i) indicates the size of the permutation and incidentally the size of the full, non-deflated problem. Math girlie behavior โœจ.

PERM

PERM is an INTEGER array, dimension (N lg N). It contains the permutations (from deflation and sorting) to be applied to each eigenblock. Slay those blocks into place ๐ŸŽ€.

GIVPTR

GIVPTR is an INTEGER array, dimension (N lg N). It contains a list of pointers which indicate where in GIVCOL a level's Givens rotations are stored. GIVPTR(i+1) - GIVPTR(i) indicates the number of Givens rotations. Rotations? Givens? We love a pointer situation ๐Ÿ’….

GIVCOL

GIVCOL is an INTEGER array, dimension (2, N lg N). Each pair of numbers indicates a pair of columns to take place in a Givens rotation. That's the original wording, bestie โ€” take place, periodt. ๐ŸŒ€

GIVNUM

GIVNUM is a DOUBLE PRECISION array, dimension (2, N lg N). Each number indicates the S value to be used in the corresponding Givens rotation. S for slay, obviously ๐ŸŒŸ.

Q

Q is a DOUBLE PRECISION array, dimension (N**2). It contains the square eigenblocks from previous levels, the starting positions for blocks are given by QPTR. Block party ๐ŸŽ‰.

QPTR

QPTR is an INTEGER array, dimension (N+2). It contains a list of pointers which indicate where in Q an eigenblock is stored. SQRT( QPTR(i+1) - QPTR(i) ) indicates the size of the block. Square root math, but make it cute ๐Ÿงฎ.

Z

Z is a DOUBLE PRECISION array, dimension (N). On output this vector contains the updating vector (the last row of the first sub-eigenvector matrix and the first row of the second sub-eigenvector matrix). Main character output vector, honestly ๐Ÿ‘‘.

ZTEMP

ZTEMP is a DOUBLE PRECISION array, dimension (N). That's it. That's the description. A mysterious little temp with no extra lore ๐Ÿ™ˆ.

INFO

INFO is an INTEGER.

  • = 0: successful exit.
  • < 0: if INFO = -i, the i-th argument had an illegal value. So if it's negative, something in the argument list said "not today" ๐Ÿ˜ญ.

๐Ÿซถ Author ๐Ÿซถ

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

๐ŸŽ€ Contributors: ๐ŸŽ€

Jeff Rutter, Computer Science Division, University of California at Berkeley, USA. Thank you Jeff, icon behavior ๐Ÿซก.

Definition at line 164 of file dlaeda.f. ๐Ÿ’–

๐Ÿ’ป Author ๐Ÿ’ป

Generated automatically by Doxygen for LAPACK from the source code.


okay bestie, that's the whole page. This was LAPACK Version 3.12.0, page SRC/dlaeda.f(3) โ€” love you, bye ๐Ÿ’‹โœจ

๐Ÿ“ฆ where this page comes from