1SSPTRD(1)                LAPACK routine (version 3.2)                SSPTRD(1)
2
3
4

NAME

6       SSPTRD  -  reduces  a  real symmetric matrix A stored in packed form to
7       symmetric tridiagonal form T by an orthogonal similarity transformation
8

SYNOPSIS

10       SUBROUTINE SSPTRD( UPLO, N, AP, D, E, TAU, INFO )
11
12           CHARACTER      UPLO
13
14           INTEGER        INFO, N
15
16           REAL           AP( * ), D( * ), E( * ), TAU( * )
17

PURPOSE

19       SSPTRD reduces a real symmetric matrix A stored in packed form to  sym‐
20       metric  tridiagonal  form T by an orthogonal similarity transformation:
21       Q**T * A * Q = T.
22

ARGUMENTS

24       UPLO    (input) CHARACTER*1
25               = 'U':  Upper triangle of A is stored;
26               = 'L':  Lower triangle of A is stored.
27
28       N       (input) INTEGER
29               The order of the matrix A.  N >= 0.
30
31       AP      (input/output) REAL array, dimension (N*(N+1)/2)
32               On entry, the upper or lower triangle of the  symmetric  matrix
33               A,  packed  columnwise in a linear array.  The j-th column of A
34               is stored in the array AP as follows: if UPLO  =  'U',  AP(i  +
35               (j-1)*j/2)  =  A(i,j)  for  1<=i<=j;  if  UPLO  =  'L',  AP(i +
36               (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.  On exit, if UPLO = 'U',
37               the  diagonal  and  first superdiagonal of A are overwritten by
38               the corresponding elements of the tridiagonal matrix T, and the
39               elements  above  the  first  superdiagonal, with the array TAU,
40               represent the orthogonal matrix Q as a  product  of  elementary
41               reflectors;  if  UPLO = 'L', the diagonal and first subdiagonal
42               of A are over- written by the  corresponding  elements  of  the
43               tridiagonal matrix T, and the elements below the first subdiag‐
44               onal, with the array TAU, represent the orthogonal matrix Q  as
45               a  product  of  elementary  reflectors. See Further Details.  D
46               (output) REAL array, dimension (N) The diagonal elements of the
47               tridiagonal matrix T: D(i) = A(i,i).
48
49       E       (output) REAL array, dimension (N-1)
50               The  off-diagonal  elements of the tridiagonal matrix T: E(i) =
51               A(i,i+1) if UPLO = 'U', E(i) = A(i+1,i) if UPLO = 'L'.
52
53       TAU     (output) REAL array, dimension (N-1)
54               The scalar factors of the elementary  reflectors  (see  Further
55               Details).
56
57       INFO    (output) INTEGER
58               = 0:  successful exit
59               < 0:  if INFO = -i, the i-th argument had an illegal value
60

FURTHER DETAILS

62       If  UPLO  = 'U', the matrix Q is represented as a product of elementary
63       reflectors
64          Q = H(n-1) . . . H(2) H(1).
65       Each H(i) has the form
66          H(i) = I - tau * v * v'
67       where tau is a real scalar, and v is a real vector with
68       v(i+1:n) = 0 and v(i) = 1; v(1:i-1) is stored on exit in AP,  overwrit‐
69       ing A(1:i-1,i+1), and tau is stored in TAU(i).
70       If  UPLO  = 'L', the matrix Q is represented as a product of elementary
71       reflectors
72          Q = H(1) H(2) . . . H(n-1).
73       Each H(i) has the form
74          H(i) = I - tau * v * v'
75       where tau is a real scalar, and v is a real vector with
76       v(1:i) = 0 and v(i+1) = 1; v(i+2:n) is stored on exit in AP,  overwrit‐
77       ing A(i+2:n,i), and tau is stored in TAU(i).
78
79
80
81 LAPACK routine (version 3.2)    November 2008                       SSPTRD(1)
Impressum