Subroutine */
| 32526 | } /* dlasy2_ */ |
| 32527 | |
| 32528 | /* Subroutine */ int dlatrd_(char *uplo, integer *n, integer *nb, doublereal * |
| 32529 | a, integer *lda, doublereal *e, doublereal *tau, doublereal *w, |
| 32530 | integer *ldw) |
| 32531 | { |
| 32532 | /* System generated locals */ |
| 32533 | integer a_dim1, a_offset, w_dim1, w_offset, i__1, i__2, i__3; |
| 32534 | |
| 32535 | /* Local variables */ |
| 32536 | static integer i__, iw; |
| 32537 | extern doublereal ddot_(integer *, doublereal *, integer *, doublereal *, |
| 32538 | integer *); |
| 32539 | static doublereal alpha; |
| 32540 | extern /* Subroutine */ int dscal_(integer *, doublereal *, doublereal *, |
| 32541 | integer *); |
| 32542 | extern logical lsame_(char *, char *); |
| 32543 | extern /* Subroutine */ int dgemv_(char *, integer *, integer *, |
| 32544 | doublereal *, doublereal *, integer *, doublereal *, integer *, |
| 32545 | doublereal *, doublereal *, integer *), daxpy_(integer *, |
| 32546 | doublereal *, doublereal *, integer *, doublereal *, integer *), |
| 32547 | dsymv_(char *, integer *, doublereal *, doublereal *, integer *, |
| 32548 | doublereal *, integer *, doublereal *, doublereal *, integer *), dlarfg_(integer *, doublereal *, doublereal *, integer *, |
| 32549 | doublereal *); |
| 32550 | |
| 32551 | |
| 32552 | /* |
| 32553 | -- LAPACK auxiliary routine (version 3.2) -- |
| 32554 | -- LAPACK is a software package provided by Univ. of Tennessee, -- |
| 32555 | -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
| 32556 | November 2006 |
| 32557 | |
| 32558 | |
| 32559 | Purpose |
| 32560 | ======= |
| 32561 | |
| 32562 | DLATRD reduces NB rows and columns of a real symmetric matrix A to |
| 32563 | symmetric tridiagonal form by an orthogonal similarity |
| 32564 | transformation Q' * A * Q, and returns the matrices V and W which are |
| 32565 | needed to apply the transformation to the unreduced part of A. |
| 32566 | |
| 32567 | If UPLO = 'U', DLATRD reduces the last NB rows and columns of a |
| 32568 | matrix, of which the upper triangle is supplied; |
| 32569 | if UPLO = 'L', DLATRD reduces the first NB rows and columns of a |
| 32570 | matrix, of which the lower triangle is supplied. |
| 32571 | |
| 32572 | This is an auxiliary routine called by DSYTRD. |
| 32573 | |
| 32574 | Arguments |
| 32575 | ========= |
| 32576 | |
| 32577 | UPLO (input) CHARACTER*1 |
| 32578 | Specifies whether the upper or lower triangular part of the |
| 32579 | symmetric matrix A is stored: |
| 32580 | = 'U': Upper triangular |
| 32581 | = 'L': Lower triangular |
| 32582 | |
| 32583 | N (input) INTEGER |
| 32584 | The order of the matrix A. |
| 32585 |