SRC/dlaeda.f(3)
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: ifINFO = -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
- 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