fortran-lapack
Loading...
Searching...
No Matches
la_lapack::larrd Interface Reference

LARRD: computes the eigenvalues of a symmetric tridiagonal matrix T to suitable accuracy. This is an auxiliary code to be called from DSTEMR. The user may ask for all eigenvalues, all eigenvalues in the half-open interval (VL, VU], or the IL-th through IU-th eigenvalues. To avoid overflow, the matrix must be scaled so that its largest element is no greater than overflow**(1/2) * underflow**(1/4) in absolute value, and for greatest accuracy, it should not be much smaller than that. See W. Kahan "Accurate Eigenvalues of a Symmetric Tridiagonal Matrix", Report CS41, Computer Science Dept., Stanford University, July 21, 1966. More...

Public Member Functions

pure subroutine dlarrd (range, order, n, vl, vu, il, iu, gers, reltol, d, e, e2, pivmin, nsplit, isplit, m, w, werr, wl, wu, iblock, indexw, work, iwork, info)
 
 la_dlarrd
 
 la_qlarrd
 
pure subroutine slarrd (range, order, n, vl, vu, il, iu, gers, reltol, d, e, e2, pivmin, nsplit, isplit, m, w, werr, wl, wu, iblock, indexw, work, iwork, info)
 
 la_slarrd
 

Detailed Description

LARRD: computes the eigenvalues of a symmetric tridiagonal matrix T to suitable accuracy. This is an auxiliary code to be called from DSTEMR. The user may ask for all eigenvalues, all eigenvalues in the half-open interval (VL, VU], or the IL-th through IU-th eigenvalues. To avoid overflow, the matrix must be scaled so that its largest element is no greater than overflow**(1/2) * underflow**(1/4) in absolute value, and for greatest accuracy, it should not be much smaller than that. See W. Kahan "Accurate Eigenvalues of a Symmetric Tridiagonal Matrix", Report CS41, Computer Science Dept., Stanford University, July 21, 1966.

Member Function/Subroutine Documentation

◆ dlarrd()

pure subroutine la_lapack::larrd::dlarrd ( character, intent(in)  range,
character, intent(in)  order,
integer(ilp), intent(in)  n,
real(dp), intent(in)  vl,
real(dp), intent(in)  vu,
integer(ilp), intent(in)  il,
integer(ilp), intent(in)  iu,
real(dp), dimension(*), intent(in)  gers,
real(dp), intent(in)  reltol,
real(dp), dimension(*), intent(in)  d,
real(dp), dimension(*), intent(in)  e,
real(dp), dimension(*), intent(in)  e2,
real(dp), intent(in)  pivmin,
integer(ilp), intent(in)  nsplit,
integer(ilp), dimension(*), intent(in)  isplit,
integer(ilp), intent(out)  m,
real(dp), dimension(*), intent(out)  w,
real(dp), dimension(*), intent(out)  werr,
real(dp), intent(out)  wl,
real(dp), intent(out)  wu,
integer(ilp), dimension(*), intent(out)  iblock,
integer(ilp), dimension(*), intent(out)  indexw,
real(dp), dimension(*), intent(out)  work,
integer(ilp), dimension(*), intent(out)  iwork,
integer(ilp), intent(out)  info 
)

◆ la_dlarrd()

la_lapack::larrd::la_dlarrd

◆ la_qlarrd()

la_lapack::larrd::la_qlarrd

◆ la_slarrd()

la_lapack::larrd::la_slarrd

◆ slarrd()

pure subroutine la_lapack::larrd::slarrd ( character, intent(in)  range,
character, intent(in)  order,
integer(ilp), intent(in)  n,
real(sp), intent(in)  vl,
real(sp), intent(in)  vu,
integer(ilp), intent(in)  il,
integer(ilp), intent(in)  iu,
real(sp), dimension(*), intent(in)  gers,
real(sp), intent(in)  reltol,
real(sp), dimension(*), intent(in)  d,
real(sp), dimension(*), intent(in)  e,
real(sp), dimension(*), intent(in)  e2,
real(sp), intent(in)  pivmin,
integer(ilp), intent(in)  nsplit,
integer(ilp), dimension(*), intent(in)  isplit,
integer(ilp), intent(out)  m,
real(sp), dimension(*), intent(out)  w,
real(sp), dimension(*), intent(out)  werr,
real(sp), intent(out)  wl,
real(sp), intent(out)  wu,
integer(ilp), dimension(*), intent(out)  iblock,
integer(ilp), dimension(*), intent(out)  indexw,
real(sp), dimension(*), intent(out)  work,
integer(ilp), dimension(*), intent(out)  iwork,
integer(ilp), intent(out)  info 
)

The documentation for this interface was generated from the following file: