slarre.f man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

slarre.f(3)			    LAPACK			   slarre.f(3)

NAME
       slarre.f -

SYNOPSIS
   Functions/Subroutines
       subroutine slarre (RANGE, N, VL, VU, IL, IU, D, E, E2, RTOL1, RTOL2,
	   SPLTOL, NSPLIT, ISPLIT, M, W, WERR, WGAP, IBLOCK, INDEXW, GERS,
	   PIVMIN, WORK, IWORK, INFO)
	   SLARRE given the tridiagonal matrix T, sets small off-diagonal
	   elements to zero and for each unreduced block Ti, finds base
	   representations and eigenvalues.

Function/Subroutine Documentation
   subroutine slarre (characterRANGE, integerN, realVL, realVU, integerIL,
       integerIU, real, dimension( * )D, real, dimension( * )E, real,
       dimension( * )E2, realRTOL1, realRTOL2, realSPLTOL, integerNSPLIT,
       integer, dimension( * )ISPLIT, integerM, real, dimension( * )W, real,
       dimension( * )WERR, real, dimension( * )WGAP, integer, dimension( *
       )IBLOCK, integer, dimension( * )INDEXW, real, dimension( * )GERS,
       realPIVMIN, real, dimension( * )WORK, integer, dimension( * )IWORK,
       integerINFO)
       SLARRE given the tridiagonal matrix T, sets small off-diagonal elements
       to zero and for each unreduced block Ti, finds base representations and
       eigenvalues.

       Purpose:

	    To find the desired eigenvalues of a given real symmetric
	    tridiagonal matrix T, SLARRE sets any "small" off-diagonal
	    elements to zero, and for each unreduced block T_i, it finds
	    (a) a suitable shift at one end of the block's spectrum,
	    (b) the base representation, T_i - sigma_i I = L_i D_i L_i^T, and
	    (c) eigenvalues of each L_i D_i L_i^T.
	    The representations and eigenvalues found are then used by
	    SSTEMR to compute the eigenvectors of T.
	    The accuracy varies depending on whether bisection is used to
	    find a few eigenvalues or the dqds algorithm (subroutine SLASQ2) to
	    conpute all and then discard any unwanted one.
	    As an added benefit, SLARRE also outputs the n
	    Gerschgorin intervals for the matrices L_i D_i L_i^T.

       Parameters:
	   RANGE

		     RANGE is CHARACTER*1
		     = 'A': ("All")   all eigenvalues will be found.
		     = 'V': ("Value") all eigenvalues in the half-open interval
				      (VL, VU] will be found.
		     = 'I': ("Index") the IL-th through IU-th eigenvalues (of the
				      entire matrix) will be found.

	   N

		     N is INTEGER
		     The order of the matrix. N > 0.

	   VL

		     VL is REAL

	   VU

		     VU is REAL
		     If RANGE='V', the lower and upper bounds for the eigenvalues.
		     Eigenvalues less than or equal to VL, or greater than VU,
		     will not be returned.  VL < VU.
		     If RANGE='I' or ='A', SLARRE computes bounds on the desired
		     part of the spectrum.

	   IL

		     IL is INTEGER

	   IU

		     IU is INTEGER
		     If RANGE='I', the indices (in ascending order) of the
		     smallest and largest eigenvalues to be returned.
		     1 <= IL <= IU <= N.

	   D

		     D is REAL array, dimension (N)
		     On entry, the N diagonal elements of the tridiagonal
		     matrix T.
		     On exit, the N diagonal elements of the diagonal
		     matrices D_i.

	   E

		     E is REAL array, dimension (N)
		     On entry, the first (N-1) entries contain the subdiagonal
		     elements of the tridiagonal matrix T; E(N) need not be set.
		     On exit, E contains the subdiagonal elements of the unit
		     bidiagonal matrices L_i. The entries E( ISPLIT( I ) ),
		     1 <= I <= NSPLIT, contain the base points sigma_i on output.

	   E2

		     E2 is REAL array, dimension (N)
		     On entry, the first (N-1) entries contain the SQUARES of the
		     subdiagonal elements of the tridiagonal matrix T;
		     E2(N) need not be set.
		     On exit, the entries E2( ISPLIT( I ) ),
		     1 <= I <= NSPLIT, have been set to zero

	   RTOL1

		     RTOL1 is REAL

	   RTOL2

		     RTOL2 is REAL
		      Parameters for bisection.
		      An interval [LEFT,RIGHT] has converged if
		      RIGHT-LEFT.LT.MAX( RTOL1*GAP, RTOL2*MAX(|LEFT|,|RIGHT|) )

	   SPLTOL

		     SPLTOL is REAL
		     The threshold for splitting.

	   NSPLIT

		     NSPLIT is INTEGER
		     The number of blocks T splits into. 1 <= NSPLIT <= N.

	   ISPLIT

		     ISPLIT is INTEGER array, dimension (N)
		     The splitting points, at which T breaks up into blocks.
		     The first block consists of rows/columns 1 to ISPLIT(1),
		     the second of rows/columns ISPLIT(1)+1 through ISPLIT(2),
		     etc., and the NSPLIT-th consists of rows/columns
		     ISPLIT(NSPLIT-1)+1 through ISPLIT(NSPLIT)=N.

	   M

		     M is INTEGER
		     The total number of eigenvalues (of all L_i D_i L_i^T)
		     found.

	   W

		     W is REAL array, dimension (N)
		     The first M elements contain the eigenvalues. The
		     eigenvalues of each of the blocks, L_i D_i L_i^T, are
		     sorted in ascending order ( SLARRE may use the
		     remaining N-M elements as workspace).

	   WERR

		     WERR is REAL array, dimension (N)
		     The error bound on the corresponding eigenvalue in W.

	   WGAP

		     WGAP is REAL array, dimension (N)
		     The separation from the right neighbor eigenvalue in W.
		     The gap is only with respect to the eigenvalues of the same block
		     as each block has its own representation tree.
		     Exception: at the right end of a block we store the left gap

	   IBLOCK

		     IBLOCK is INTEGER array, dimension (N)
		     The indices of the blocks (submatrices) associated with the
		     corresponding eigenvalues in W; IBLOCK(i)=1 if eigenvalue
		     W(i) belongs to the first block from the top, =2 if W(i)
		     belongs to the second block, etc.

	   INDEXW

		     INDEXW is INTEGER array, dimension (N)
		     The indices of the eigenvalues within each block (submatrix);
		     for example, INDEXW(i)= 10 and IBLOCK(i)=2 imply that the
		     i-th eigenvalue W(i) is the 10-th eigenvalue in block 2

	   GERS

		     GERS is REAL array, dimension (2*N)
		     The N Gerschgorin intervals (the i-th Gerschgorin interval
		     is (GERS(2*i-1), GERS(2*i)).

	   PIVMIN

		     PIVMIN is REAL
		     The minimum pivot in the Sturm sequence for T.

	   WORK

		     WORK is REAL array, dimension (6*N)
		     Workspace.

	   IWORK

		     IWORK is INTEGER array, dimension (5*N)
		     Workspace.

	   INFO

		     INFO is INTEGER
		     = 0:  successful exit
		     > 0:  A problem occured in SLARRE.
		     < 0:  One of the called subroutines signaled an internal problem.
			   Needs inspection of the corresponding parameter IINFO
			   for further information.

		     =-1:  Problem in SLARRD.
		     = 2:  No base representation could be found in MAXTRY iterations.
			   Increasing MAXTRY and recompilation might be a remedy.
		     =-3:  Problem in SLARRB when computing the refined root
			   representation for SLASQ2.
		     =-4:  Problem in SLARRB when preforming bisection on the
			   desired part of the spectrum.
		     =-5:  Problem in SLASQ2.
		     =-6:  Problem in SLASQ2.

       Author:
	   Univ. of Tennessee

	   Univ. of California Berkeley

	   Univ. of Colorado Denver

	   NAG Ltd.

       Date:
	   September 2012

       Further Details:

	     The base representations are required to suffer very little
	     element growth and consequently define all their eigenvalues to
	     high relative accuracy.

       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 295 of file slarre.f.

Author
       Generated automatically by Doxygen for LAPACK from the source code.

Version 3.4.2			Sat Nov 16 2013			   slarre.f(3)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net