SRC/slasd4.f(3)

πŸŽ€ SRC/slasd4.f(3) πŸŽ€

bestie, this is the Library Functions Manual page for SRC/slasd4.f(3). It’s giving LAPACK subroutine energy, and the star of the show is slasd4. No cap. πŸ’…

πŸ’– NAME πŸ’–

SRC/slasd4.f

🌸 SYNOPSIS 🌸

✨ Functions/Subroutines ✨

subroutine slasd4 (n, i, d, z, delta, rho, sigma, work, info)

SLASD4 computes the square root of the i-th updated eigenvalue of a positive symmetric rank-one modification to a positive diagonal matrix. Used by sbdsdc.

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

subroutine slasd4 (integer n, integer i, real, dimension( * ) d, real,
    dimension( * ) z, real, dimension( * ) delta, real rho, real sigma,
    real, dimension( * ) work, integer info)

SLASD4 computes the square root of the i-th updated eigenvalue of a positive symmetric rank-one modification to a positive diagonal matrix. Used by sbdsdc.

πŸŽ€ Purpose: πŸŽ€

okay so this subroutine computes the square root of the I-th updated eigenvalue of a positive symmetric rank-one modification to a positive diagonal matrix whose entries are given as the squares of the corresponding entries in the array d, and it assumes:

0 <= D(i) < D(j)  for  i < j

and that RHO > 0. The calling routine arranges this, and it’s no loss in generality. The rank-one modified system is thus:

diag( D ) * diag( D ) +  RHO * Z * Z_transpose.

where we assume the Euclidean norm of Z is 1. The method consists of approximating the rational functions in the secular equation by simpler interpolating rational functions. Periodt. ✨

πŸ’… Parameters πŸ’…

  • N β€” INTEGER. The length of all arrays.
  • I β€” INTEGER. The index of the eigenvalue to be computed. 1 <= I <= N.
  • D β€” REAL array, dimension ( N ). The original eigenvalues. It is assumed that they are in order, 0 <= D(I) < D(J) for I < J.
  • Z β€” REAL array, dimension ( N ). The components of the updating vector.
  • DELTA β€” REAL array, dimension ( N ). If N .ne. 1, DELTA contains (D(j) - sigma_I) in its j-th component. If N = 1, then DELTA(1) = 1. The vector DELTA contains the information necessary to construct the (singular) eigenvectors.
  • RHO β€” REAL. The scalar in the symmetric updating formula.
  • SIGMA β€” REAL. The computed sigma_I, the I-th updated eigenvalue.
  • WORK β€” REAL array, dimension ( N ). If N .ne. 1, WORK contains (D(j) + sigma_I) in its j-th component. If N = 1, then WORK( 1 ) = 1.
  • INFO β€” INTEGER. = 0: successful exit. > 0: if INFO = 1, the updating process failed.

πŸ” Internal Parameters: πŸ”

  • Logical variable ORGATI (origin-at-i?) is used for distinguishing whether D(i) or D(i+1) is treated as the origin.
    • ORGATI = .true. β€” origin at i
    • ORGATI = .false. β€” origin at i+1
  • Logical variable SWTCH3 (switch-for-3-poles?) is for noting if we are working with THREE poles!
  • MAXIT is the maximum number of iterations allowed for each eigenvalue.

🫢 Author 🫢

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

🌟 Contributors: 🌟

Ren-Cang Li, Computer Science Division, University of California at Berkeley, USA

πŸ“ Definition at line πŸ“

Definition at line 152 of file slasd4.f.

🌸 Author 🌸

Generated automatically by Doxygen for LAPACK from the source code.


okay bestie, that’s the whole page πŸ’– The footer vibes are LAPACK, Version 3.12.0, and SRC/slasd4.f(3) β€” source/version/page all accounted for, and there’s no separate date line in the footer so I’m not inventing one πŸ™ˆ. Stay slay, and may your eigenvalues be updated with main character energy. πŸ‘‘βœ¨

πŸ“¦ where this page comes from