The OpenNET Project / Index page

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

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

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

dsyevx (3)
  • >> dsyevx (3) ( Solaris man: Библиотечные вызовы )
  • 
    NAME
         dsyevx  -  compute  selected  eigenvalues  and,  optionally,
         eigenvectors of a real symmetric matrix A
    
    SYNOPSIS
         SUBROUTINE DSYEVX( JOBZ, RANGE, UPLO, N, A, LDA, VL, VU, IL,
                   IU,  ABSTOL,  M,  W,  Z,  LDZ, WORK, LWORK, IWORK,
                   IFAIL, INFO )
    
         CHARACTER JOBZ, RANGE, UPLO
    
         INTEGER IL, INFO, IU, LDA, LDZ, LWORK, M, N
    
         DOUBLE PRECISION ABSTOL, VL, VU
    
         INTEGER IFAIL( * ), IWORK( * )
    
         DOUBLE PRECISION A( LDA, * ), W( * ), WORK( * ), Z( LDZ, * )
    
    
    
         #include <sunperf.h>
    
         void dsyevx(char jobz, char range, char uplo, int n,  double
                   *da,  int  lda,  double vl, double vu, int il, int
                   iu, double abstol, int *m, double *w, double  *dz,
                   int ldz,
                     int *ifail, int *info) ;
    
    PURPOSE
         DSYEVX computes selected eigenvalues and, optionally, eigen-
         vectors  of  a  real  symmetric  matrix  A.  Eigenvalues and
         eigenvectors can be selected by specifying either a range of
         values or a range of indices for the desired eigenvalues.
    
    
    ARGUMENTS
         JOBZ      (input) CHARACTER*1
                   = 'N':  Compute eigenvalues only;
                   = 'V':  Compute eigenvalues and eigenvectors.
    
         RANGE     (input) CHARACTER*1
                   = 'A': all eigenvalues will be found.
                   = 'V': all eigenvalues in the  half-open  interval
                   (VL,VU]  will  be found.  = 'I': the IL-th through
                   IU-th eigenvalues will be found.
    
         UPLO      (input) CHARACTER*1
                   = 'U':  Upper triangle of A is stored;
                   = 'L':  Lower triangle of A is stored.
    
         N         (input) INTEGER
                   The order of the matrix A.  N >= 0.
    
         A         (input/output) DOUBLE PRECISION  array,  dimension
                   (LDA, N)
                   On entry, the symmetric matrix A.  If UPLO =  'U',
                   the leading N-by-N upper triangular part of A con-
                   tains the upper triangular part of the  matrix  A.
                   If UPLO = 'L', the leading N-by-N lower triangular
                   part of A contains the lower  triangular  part  of
                   the  matrix  A.   On  exit, the lower triangle (if
                   UPLO='L') or the upper triangle (if  UPLO='U')  of
                   A, including the diagonal, is destroyed.
    
         LDA       (input) INTEGER
                   The leading dimension of  the  array  A.   LDA  >=
                   max(1,N).
    
         VL        (input) DOUBLE PRECISION
                   VU      (input) DOUBLE PRECISION If RANGE='V', the
                   lower  and  upper  bounds  of  the  interval to be
                   searched for eigenvalues. VL < VU.  Not referenced
                   if RANGE = 'A' or 'I'.
    
         IL        (input) INTEGER
                   IU      (input) INTEGER If RANGE='I', the  indices
                   (in  ascending  order) of the smallest and largest
                   eigenvalues to be returned.  1 <= IL <= IU  <=  N,
                   if  N > 0; IL = 1 and IU = 0 if N = 0.  Not refer-
                   enced if RANGE = 'A' or 'V'.
    
         ABSTOL    (input) DOUBLE PRECISION
                   The absolute error tolerance for the  eigenvalues.
                   An approximate eigenvalue is accepted as converged
                   when it is determined to lie in an interval  [a,b]
                   of width less than or equal to
    
                   ABSTOL + EPS *   max( |a|,|b| ) ,
    
                   where EPS is the machine precision.  If ABSTOL  is
                   less than or equal to zero, then  EPS*|T|  will be
                   used in its place, where |T| is the 1-norm of  the
                   tridiagonal  matrix obtained by reducing A to tri-
                   diagonal form.
    
                   Eigenvalues will be computed most accurately  when
                   ABSTOL  is  set  to  twice the underflow threshold
                   2*DLAMCH('S'), not zero.  If this routine  returns
                   with INFO>0, indicating that some eigenvectors did
                   not converge, try setting ABSTOL to 2*DLAMCH('S').
    
                   See "Computing Small Singular Values of Bidiagonal
                   Matrices  with Guaranteed High Relative Accuracy,"
                   by Demmel and Kahan, LAPACK Working Note #3.
    
         M         (output) INTEGER
                   The total number of eigenvalues found.  0 <= M  <=
                   N.  If RANGE = 'A', M = N, and if RANGE = 'I', M =
                   IU-IL+1.
    
         W         (output) DOUBLE PRECISION array, dimension (N)
                   On normal exit, the first M elements  contain  the
                   selected eigenvalues in ascending order.
    
         Z         (output) DOUBLE PRECISION array,  dimension  (LDZ,
                   max(1,M))
                   If JOBZ = 'V', then if  INFO  =  0,  the  first  M
                   columns  of Z contain the orthonormal eigenvectors
                   of the matrix  A  corresponding  to  the  selected
                   eigenvalues, with the i-th column of Z holding the
                   eigenvector associated with W(i).  If an eigenvec-
                   tor  fails to converge, then that column of Z con-
                   tains the latest approximation to the eigenvector,
                   and  the  index  of the eigenvector is returned in
                   IFAIL.  If JOBZ = 'N', then Z is  not  referenced.
                   Note:  the user must ensure that at least max(1,M)
                   columns are supplied in the array Z;  if  RANGE  =
                   'V',  the exact value of M is not known in advance
                   and an upper bound must be used.
    
         LDZ       (input) INTEGER
                   The leading dimension of the array Z.  LDZ  >=  1,
                   and if JOBZ = 'V', LDZ >= max(1,N).
    
         WORK      (workspace/output) DOUBLE PRECISION array,  dimen-
                   sion (LWORK)
                   On exit, if INFO = 0, WORK(1) returns the  optimal
                   LWORK.
    
         LWORK     (input) INTEGER
                   The  length  of  the   array   WORK.    LWORK   >=
                   max(1,8*N).   For  optimal  efficiency,  LWORK  >=
                   (NB+3)*N, where NB is  the  blocksize  for  DSYTRD
                   returned by ILAENV.
    
         IWORK     (workspace) INTEGER array, dimension (5*N)
    
         IFAIL     (output) INTEGER array, dimension (N)
                   If JOBZ = 'V', then if INFO = 0, the first M  ele-
                   ments  of IFAIL are zero.  If INFO > 0, then IFAIL
                   contains the  indices  of  the  eigenvectors  that
                   failed  to converge.  If JOBZ = 'N', then IFAIL is
                   not referenced.
    
         INFO      (output) INTEGER
                   = 0:  successful exit
                   < 0:  if INFO = -i, the i-th argument had an ille-
                   gal value
                   > 0:  if INFO = i, then i eigenvectors  failed  to
                   converge.   Their  indices  are  stored  in  array
                   IFAIL.
    
    
    
    


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




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

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