  Quick Navigator

 Search Site Miscellaneous Server Agreement Year 2038 Credits   zlar1v.f(3) LAPACK zlar1v.f(3)

zlar1v.f -

# SYNOPSIS

## Functions/Subroutines

subroutine zlar1v (N, B1, BN, LAMBDA, D, L, LD, LLD, PIVMIN, GAPTOL, Z, WANTNC, NEGCNT, ZTZ, MINGMA, R, ISUPPZ, NRMINV, RESID, RQCORR, WORK)

ZLAR1V computes the (scaled) r-th column of the inverse of the submatrix in rows b1 through bn of the tridiagonal matrix LDLT - λI.

# Function/Subroutine Documentation

## subroutine zlar1v (integerN, integerB1, integerBN, double precisionLAMBDA, double precision, dimension( * )D, double precision, dimension( * )L, double precision, dimension( * )LD, double precision, dimension( * )LLD, double precisionPIVMIN, double precisionGAPTOL, complex*16, dimension( * )Z, logicalWANTNC, integerNEGCNT, double precisionZTZ, double precisionMINGMA, integerR, integer, dimension( * )ISUPPZ, double precisionNRMINV, double precisionRESID, double precisionRQCORR, double precision, dimension( * )WORK)

ZLAR1V computes the (scaled) r-th column of the inverse of the submatrix in rows b1 through bn of the tridiagonal matrix LDLT - λI.
Purpose:
``` ZLAR1V computes the (scaled) r-th column of the inverse of
the sumbmatrix in rows B1 through BN of the tridiagonal matrix
L D L**T - sigma I. When sigma is close to an eigenvalue, the
computed vector is an accurate eigenvector. Usually, r corresponds
to the index where the eigenvector is largest in magnitude.
The following steps accomplish this computation :
(a) Stationary qd transform,  L D L**T - sigma I = L(+) D(+) L(+)**T,
(b) Progressive qd transform, L D L**T - sigma I = U(-) D(-) U(-)**T,
(c) Computation of the diagonal elements of the inverse of
L D L**T - sigma I by combining the above transforms, and choosing
r as the index where the diagonal of the inverse is (one of the)
largest in magnitude.
(d) Computation of the (scaled) r-th column of the inverse using the
twisted factorization obtained by combining the top part of the
the stationary and the bottom part of the progressive transform.
```
Parameters:
N
```          N is INTEGER
The order of the matrix L D L**T.
```
B1
```          B1 is INTEGER
First index of the submatrix of L D L**T.
```
BN
```          BN is INTEGER
Last index of the submatrix of L D L**T.
```
LAMBDA
```          LAMBDA is DOUBLE PRECISION
The shift. In order to compute an accurate eigenvector,
LAMBDA should be a good approximation to an eigenvalue
of L D L**T.
```
L
```          L is DOUBLE PRECISION array, dimension (N-1)
The (n-1) subdiagonal elements of the unit bidiagonal matrix
L, in elements 1 to N-1.
```
D
```          D is DOUBLE PRECISION array, dimension (N)
The n diagonal elements of the diagonal matrix D.
```
LD
```          LD is DOUBLE PRECISION array, dimension (N-1)
The n-1 elements L(i)*D(i).
```
LLD
```          LLD is DOUBLE PRECISION array, dimension (N-1)
The n-1 elements L(i)*L(i)*D(i).
```
PIVMIN
```          PIVMIN is DOUBLE PRECISION
The minimum pivot in the Sturm sequence.
```
GAPTOL
```          GAPTOL is DOUBLE PRECISION
Tolerance that indicates when eigenvector entries are negligible
w.r.t. their contribution to the residual.
```
Z
```          Z is COMPLEX*16 array, dimension (N)
On input, all entries of Z must be set to 0.
On output, Z contains the (scaled) r-th column of the
inverse. The scaling is such that Z(R) equals 1.
```
WANTNC
```          WANTNC is LOGICAL
Specifies whether NEGCNT has to be computed.
```
NEGCNT
```          NEGCNT is INTEGER
If WANTNC is .TRUE. then NEGCNT = the number of pivots < pivmin
in the  matrix factorization L D L**T, and NEGCNT = -1 otherwise.
```
ZTZ
```          ZTZ is DOUBLE PRECISION
The square of the 2-norm of Z.
```
MINGMA
```          MINGMA is DOUBLE PRECISION
The reciprocal of the largest (in magnitude) diagonal
element of the inverse of L D L**T - sigma I.
```
R
```          R is INTEGER
The twist index for the twisted factorization used to
compute Z.
On input, 0 <= R <= N. If R is input as 0, R is set to
the index where (L D L**T - sigma I)^{-1} is largest
in magnitude. If 1 <= R <= N, R is unchanged.
On output, R contains the twist index used to compute Z.
Ideally, R designates the position of the maximum entry in the
eigenvector.
```
ISUPPZ
```          ISUPPZ is INTEGER array, dimension (2)
The support of the vector in Z, i.e., the vector Z is
nonzero only in elements ISUPPZ(1) through ISUPPZ( 2 ).
```
NRMINV
```          NRMINV is DOUBLE PRECISION
NRMINV = 1/SQRT( ZTZ )
```
RESID
```          RESID is DOUBLE PRECISION
The residual of the FP vector.
RESID = ABS( MINGMA )/SQRT( ZTZ )
```
RQCORR
```          RQCORR is DOUBLE PRECISION
The Rayleigh Quotient correction to LAMBDA.
RQCORR = MINGMA*TMP
```
WORK
```          WORK is DOUBLE PRECISION array, dimension (4*N)
```
Author:
Univ. of Tennessee
Univ. of California Berkeley
NAG Ltd.
Date:
September 2012
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 229 of file zlar1v.f.

# Author

Generated automatically by Doxygen for LAPACK from the source code.
 Sat Nov 16 2013 Version 3.4.2

Search for    or go to Top of page |  Section 3 |  Main Index Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.