larrf(3)

larrf(3) πŸ’…βœ¨

okay so this is the larrf(3) page from the Library Functions Manual, and it's literally the dopest little LAPACK corner you've ever seen. no cap. πŸ¦‹


✨ NAME ✨

larrf β€” larrf: step in stemr, find relative robust representation (RRR) πŸŽ€


πŸŽ€ SYNOPSIS πŸŽ€

Functions 🌸

  • subroutine dlarrf β€” DLARRF finds a new relatively robust representation such that at least one of the eigenvalues is relatively isolated. πŸ’–
  • subroutine slarrf β€” SLARRF finds a new relatively robust representation such that at least one of the eigenvalues is relatively isolated. πŸ’–
subroutine dlarrf (n, d, l, ld, clstrt, clend, w, wgap, werr, spdiam,
    clgapl, clgapr, pivmin, sigma, dplus, lplus, work, info)
subroutine slarrf (n, d, l, ld, clstrt, clend, w, wgap, werr, spdiam,
    clgapl, clgapr, pivmin, sigma, dplus, lplus, work, info)

πŸ¦‹ DETAILED DESCRIPTION πŸ¦‹

yeah so there's a detailed description section, and honestly the details live down in the function docs below πŸ‘‡ (that's where all the tea is, bestie πŸ“)


πŸ”₯ FUNCTION DOCUMENTATION πŸ”₯

subroutine dlarrf πŸ‘‘

subroutine dlarrf (integer n, double precision, dimension( * ) d, double
    precision, dimension( * ) l, double precision, dimension( * ) ld,
    integer clstrt, integer clend, double precision, dimension( * ) w,
    double precision, dimension( * ) wgap, double precision, dimension( * )
    werr, double precision spdiam, double precision clgapl, double precision
    clgapr, double precision pivmin, double precision sigma, double
    precision, dimension( * ) dplus, double precision, dimension( * ) lplus,
    double precision, dimension( * ) work, integer info)

DLARRF finds a new relatively robust representation such that at least one of the eigenvalues is relatively isolated. periodt. πŸ’…

Purpose:

Given the initial representation L D L^T and its cluster of close eigenvalues (in a relative measure), W( CLSTRT ), W( CLSTRT+1 ), ... W( CLEND ), DLARRF finds a new relatively robust representation

L D L^T - SIGMA I = L(+) D(+) L(+)^T

such that at least one of the eigenvalues of L(+) D(+) L(+)^T is relatively isolated. like, that's the whole mission bestie 🫢

Parameters πŸ’œ

  • N β€” N is INTEGER. The order of the matrix (subblock, if the matrix split).
  • D β€” D is DOUBLE PRECISION array, dimension (N). The N diagonal elements of the diagonal matrix D.
  • L β€” L is DOUBLE PRECISION array, dimension (N-1). The (N-1) subdiagonal elements of the unit bidiagonal matrix L.
  • LD β€” LD is DOUBLE PRECISION array, dimension (N-1). The (N-1) elements L(i)*D(i).
  • CLSTRT β€” CLSTRT is INTEGER. The index of the first eigenvalue in the cluster.
  • CLEND β€” CLEND is INTEGER. The index of the last eigenvalue in the cluster.
  • W β€” W is DOUBLE PRECISION array, dimension dimension is >= (CLEND-CLSTRT+1). The eigenvalue APPROXIMATIONS of L D L^T in ascending order. W( CLSTRT ) through W( CLEND ) form the cluster of relatively close eigenalues.
  • WGAP β€” WGAP is DOUBLE PRECISION array, dimension dimension is >= (CLEND-CLSTRT+1). The separation from the right neighbor eigenvalue in W.
  • WERR β€” WERR is DOUBLE PRECISION array, dimension dimension is >= (CLEND-CLSTRT+1). WERR contain the semiwidth of the uncertainty interval of the corresponding eigenvalue APPROXIMATION in W.
  • SPDIAM β€” SPDIAM is DOUBLE PRECISION. estimate of the spectral diameter obtained from the Gerschgorin intervals.
  • CLGAPL β€” CLGAPL is DOUBLE PRECISION. (that's it, that's the whole description 😭 the docs really left us on read here)
  • CLGAPR β€” CLGAPR is DOUBLE PRECISION. absolute gap on each end of the cluster. Set by the calling routine to protect against shifts too close to eigenvalues outside the cluster.
  • PIVMIN β€” PIVMIN is DOUBLE PRECISION. The minimum pivot allowed in the Sturm sequence.
  • SIGMA β€” SIGMA is DOUBLE PRECISION. The shift used to form L(+) D(+) L(+)^T.
  • DPLUS β€” DPLUS is DOUBLE PRECISION array, dimension (N). The N diagonal elements of the diagonal matrix D(+).
  • LPLUS β€” LPLUS is DOUBLE PRECISION array, dimension (N-1). The first (N-1) elements of LPLUS contain the subdiagonal elements of the unit bidiagonal matrix L(+).
  • WORK β€” WORK is DOUBLE PRECISION array, dimension (2*N). Workspace.
  • INFO β€” INFO is INTEGER. Signals processing OK (=0) or failure (=1).

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 189 of file dlarrf.f.


subroutine slarrf πŸ‘‘

subroutine slarrf (integer n, real, dimension( * ) d, real, dimension( * )
    l, real, dimension( * ) ld, integer clstrt, integer clend, real,
    dimension( * ) w, real, dimension( * ) wgap, real, dimension( * ) werr,
    real spdiam, real clgapl, real clgapr, real pivmin, real sigma, real,
    dimension( * ) dplus, real, dimension( * ) lplus, real, dimension( * )
    work, integer info)

SLARRF finds a new relatively robust representation such that at least one of the eigenvalues is relatively isolated. same energy, single-precision edition ⭐

Purpose:

Given the initial representation L D L^T and its cluster of close eigenvalues (in a relative measure), W( CLSTRT ), W( CLSTRT+1 ), ... W( CLEND ), SLARRF finds a new relatively robust representation

L D L^T - SIGMA I = L(+) D(+) L(+)^T

such that at least one of the eigenvalues of L(+) D(+) L(+)^T is relatively isolated. iconic behaviour, honestly πŸ‘‘

Parameters πŸ’œ

  • N β€” N is INTEGER. The order of the matrix (subblock, if the matrix split).
  • D β€” D is REAL array, dimension (N). The N diagonal elements of the diagonal matrix D.
  • L β€” L is REAL array, dimension (N-1). The (N-1) subdiagonal elements of the unit bidiagonal matrix L.
  • LD β€” LD is REAL array, dimension (N-1). The (N-1) elements L(i)*D(i).
  • CLSTRT β€” CLSTRT is INTEGER. The index of the first eigenvalue in the cluster.
  • CLEND β€” CLEND is INTEGER. The index of the last eigenvalue in the cluster.
  • W β€” W is REAL array, dimension dimension is >= (CLEND-CLSTRT+1). The eigenvalue APPROXIMATIONS of L D L^T in ascending order. W( CLSTRT ) through W( CLEND ) form the cluster of relatively close eigenalues.
  • WGAP β€” WGAP is REAL array, dimension dimension is >= (CLEND-CLSTRT+1). The separation from the right neighbor eigenvalue in W.
  • WERR β€” WERR is REAL array, dimension dimension is >= (CLEND-CLSTRT+1). WERR contain the semiwidth of the uncertainty interval of the corresponding eigenvalue APPROXIMATION in W.
  • SPDIAM β€” SPDIAM is REAL. estimate of the spectral diameter obtained from the Gerschgorin intervals.
  • CLGAPL β€” CLGAPL is REAL. (again, no elaboration, and we respect the mystery πŸ™ˆ)
  • CLGAPR β€” CLGAPR is REAL. absolute gap on each end of the cluster. Set by the calling routine to protect against shifts too close to eigenvalues outside the cluster.
  • PIVMIN β€” PIVMIN is REAL. The minimum pivot allowed in the Sturm sequence.
  • SIGMA β€” SIGMA is REAL. The shift used to form L(+) D(+) L(+)^T.
  • DPLUS β€” DPLUS is REAL array, dimension (N). The N diagonal elements of the diagonal matrix D(+).
  • LPLUS β€” LPLUS is REAL array, dimension (N-1). The first (N-1) elements of LPLUS contain the subdiagonal elements of the unit bidiagonal matrix L(+).
  • WORK β€” WORK is REAL array, dimension (2*N). Workspace.
  • INFO β€” INFO is INTEGER. Signals processing OK (=0) or failure (=1).

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 189 of file slarrf.f.


πŸ‘‘ AUTHOR πŸ‘‘

Generated automatically by Doxygen for LAPACK from the source code. (the bot ate, honestly πŸ€–πŸ’…)


okay that's genuinely the whole page bestie, no gatekeeping 🫢 this was LAPACK Version 3.12.0, page larrf(3), and yeah β€” that's the footer, we said it, we're done πŸ’œβœ¨

πŸ“¦ where this page comes from