The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

dlaed7 (3)
  • >> dlaed7 (3) ( Solaris man: Библиотечные вызовы )
  • 
    NAME
         dlaed7 - compute  the  updated  eigensystem  of  a  diagonal
         matrix after modification by a rank-one symmetric matrix
    
    SYNOPSIS
         SUBROUTINE DLAED7( ICOMPQ, N, QSIZ, TLVLS,  CURLVL,  CURPBM,
                   D,  Q,  LDQ,  INDXQ,  RHO,  CUTPNT,  QSTORE, QPTR,
                   PRMPTR, PERM, GIVPTR, GIVCOL, GIVNUM, WORK, IWORK,
                   INFO )
    
         INTEGER CURLVL, CURPBM, CUTPNT, ICOMPQ, INFO, LDQ, N,  QSIZ,
                   TLVLS
    
         DOUBLE PRECISION RHO
    
         INTEGER GIVCOL( 2, * ), GIVPTR( * ), INDXQ( * ), IWORK( * ),
                   PERM( * ), PRMPTR( * ), QPTR( * )
    
         DOUBLE PRECISION D( * ), GIVNUM(  2,  *  ),  Q(  LDQ,  *  ),
                   QSTORE( * ), WORK( * )
    
    
    
         #include <sunperf.h>
    
         void dlaed7(int icompq, int n,  int  qsiz,  int  tlvls,  int
                   curlvl, int curpbm, double *d, double *q, int ldq,
                   int  *indxq,  double  drho,  int  cutpnt,   double
                   *qstore,  int  *qptr,  int *prmptr, int *perm, int
                   *givptr, int *givcol, double *givnum, int *info);
    
    PURPOSE
         DLAED7 computes the updated eigensystem of a diagonal matrix
         after modification by a rank-one symmetric matrix. This rou-
         tine is used only for the eigenproblem  which  requires  all
         eigenvalues and optionally eigenvectors of a dense symmetric
         matrix that has been reduced to  tridiagonal  form.   DLAED1
         handles  the  case in which all eigenvalues and eigenvectors
         of a symmetric tridiagonal matrix are desired.
    
         T = Q(in)(D(in)+RHO*Z*Z')Q'(in) = Q(out)*D(out)*Q'(out)
    
         where Z = Q'u, u is a vector of length N with  ones  in  the
         CUTPNT and CUTPNT + 1 th elements and zeros elsewhere.
    
         The eigenvectors of the original matrix are stored in Q, and
         the  eigenvalues  are in D.  The algorithm consists of three
         stages:
    
         The first stage consists of deflating the size of the  prob-
         lem  when  there  are  multiple eigenvalues or if there is a
         zero in the Z vector.  For each such occurence the dimension
         of  the  secular  equation  problem is reduced by one.  This
         stage is performed by the routine DLAED8.
    
         The second stage consists of calculating the updated  eigen-
         values.  This  is  done  by finding the roots of the secular
         equation via the routine DLAED4 (as called by SLAED9).  This
         routine  also  calculates  the  eigenvectors  of the current
         problem.
    
         The final stage consists of computing the updated  eigenvec-
         tors  directly using the updated eigenvalues.  The eigenvec-
         tors for the current problem are multiplied with the  eigen-
         vectors from the overall problem.
    
    
    ARGUMENTS
         ICOMPQ    (input) INTEGER
                   = 0:  Compute eigenvalues only.
                   = 1:  Compute eigenvectors of original dense  sym-
                   metric  matrix  also.   On  entry,  Q contains the
                   orthogonal matrix  used  to  reduce  the  original
                   matrix to tridiagonal form.
    
         N         (input) INTEGER
                   The dimension of the symmetric tridiagonal matrix.
                   N >= 0.
    
         QSIZ      (input) INTEGER
                   The dimension of the  orthogonal  matrix  used  to
                   reduce  the full matrix to tridiagonal form.  QSIZ
                   >= N if ICOMPQ = 1.
    
         TLVLS     (input) INTEGER
                   The total number of merging levels in the  overall
                   divide and conquer tree.
    
                   CURLVL (input) INTEGER The current  level  in  the
                   overall merge routine, 0 <= CURLVL <= TLVLS.
    
                   CURPBM (input) INTEGER The current problem in  the
                   current level in the overall merge routine (count-
                   ing from upper left to lower right).
    
         D         (input/output) DOUBLE PRECISION  array,  dimension
                   (N)
                   On entry, the eigenvalues of the  rank-1-perturbed
                   matrix.   On exit, the eigenvalues of the repaired
                   matrix.
    
         Q         (input/output) DOUBLE PRECISION  array,  dimension
                   (LDQ, N)
                   On entry, the eigenvectors of the rank-1-perturbed
                   matrix.  On exit, the eigenvectors of the repaired
                   tridiagonal matrix.
    
         LDQ       (input) INTEGER
                   The leading dimension of  the  array  Q.   LDQ  >=
                   max(1,N).
    
         INDXQ     (output) INTEGER array, dimension (N)
                   The permutation which will  reintegrate  the  sub-
                   problem  just solved back into sorted order, i.e.,
                   D( INDXQ( I = 1, N ) ) will be in ascending order.
    
         RHO       (input) DOUBLE PRECISION
                   The subdiagonal element used to create the  rank-1
                   modification.
    
                   CUTPNT (input) INTEGER Contains  the  location  of
                   the  last  eigenvalue  in  the leading sub-matrix.
                   min(1,N) <= CUTPNT <= N.
    
                   QSTORE  (input/output)  DOUBLE  PRECISION   array,
                   dimension  (N**2+1)  Stores eigenvectors of subma-
                   trices  encountered  during  divide  and  conquer,
                   packed  together.  QPTR points to beginning of the
                   submatrices.
    
         QPTR      (input/output) INTEGER array, dimension (N+2)
                   List of indices pointing to  beginning  of  subma-
                   trices  stored in QSTORE. The submatrices are num-
                   bered starting at the bottom left  of  the  divide
                   and conquer tree, from left to right and bottom to
                   top.
    
                   PRMPTR (input) INTEGER array, dimension (N  lg  N)
                   Contains  a  list of pointers which indicate where
                   in  PERM  a   level's   permutation   is   stored.
                   PRMPTR(i+1)  - PRMPTR(i) indicates the size of the
                   permutation and also the size of  the  full,  non-
                   deflated problem.
    
         PERM      (input) INTEGER array, dimension (N lg N)
                   Contains  the  permutations  (from  deflation  and
                   sorting) to be applied to each eigenblock.
    
                   GIVPTR (input) INTEGER array, dimension (N  lg  N)
                   Contains  a  list of pointers which indicate where
                   in GIVCOL a level's Givens rotations  are  stored.
                   GIVPTR(i+1)  -  GIVPTR(i)  indicates the number of
                   Givens rotations.
    
                   GIVCOL (input) INTEGER array, dimension (2,  N  lg
                   N)  Each  pair  of  numbers  indicates  a  pair of
                   columns to take place in a Givens rotation.
    
                   GIVNUM (input) DOUBLE PRECISION  array,  dimension
                   (2,  N  lg N) Each number indicates the S value to
                   be used in the corresponding Givens rotation.
    
         WORK      (workspace)  DOUBLE  PRECISION  array,   dimension
                   (3*N+QSIZ*N)
    
         IWORK     (workspace) INTEGER array, dimension (4*N)
    
         INFO      (output) INTEGER
                   = 0:  successful exit.
                   < 0:  if INFO = -i, the i-th argument had an ille-
                   gal value.
                   > 0:  if INFO = 1, an eigenvalue did not converge
    
    
    
    


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру