The OpenNET Project / Index page

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

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

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

zhpevd (3)
  • >> zhpevd (3) ( Solaris man: Библиотечные вызовы )
  • 
    NAME
         zhpevd - compute all the eigenvalues and, optionally, eigen-
         vectors of a complex Hermitian matrix A in packed storage
    
    SYNOPSIS
         SUBROUTINE ZHPEVD( JOBZ, UPLO,  N,  AP,  W,  Z,  LDZ,  WORK,
                   LWORK, RWORK, LRWORK, IWORK, LIWORK, INFO )
    
         CHARACTER JOBZ, UPLO
    
         INTEGER INFO, LDZ, LIWORK, LRWORK, LWORK, N
    
         INTEGER IWORK( * )
    
         DOUBLE PRECISION RWORK( * ), W( * )
    
         COMPLEX*16 AP( * ), WORK( * ), Z( LDZ, * )
    
    
    
         #include <sunperf.h>
    
         void zhpevd(char jobz, char uplo, int n, doublecomplex *zap,
                   double *w, doublecomplex *zz, int ldz, int *info);
    
    PURPOSE
         ZHPEVD computes all the eigenvalues and, optionally,  eigen-
         vectors  of  a complex Hermitian matrix A in packed storage.
         If eigenvectors are desired, it uses a  divide  and  conquer
         algorithm.
    
         The divide and conquer algorithm makes very mild assumptions
         about  floating  point  arithmetic. It will work on machines
         with a guard digit  in  add/subtract,  or  on  those  binary
         machines  without  guard digits which subtract like the Cray
         X-MP, Cray Y-MP, Cray C-90, or Cray-2. It could  conceivably
         fail  on  hexadecimal  or  decimal  machines  without  guard
         digits, but we know of none.
    
    
    ARGUMENTS
         JOBZ      (input) CHARACTER*1
                   = 'N':  Compute eigenvalues only;
                   = 'V':  Compute eigenvalues and eigenvectors.
    
         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.
    
         AP        (input/output)   COMPLEX*16    array,    dimension
                   (N*(N+1)/2)
                   On entry, the upper or lower triangle of the  Her-
                   mitian  matrix  A,  packed  columnwise in a linear
                   array.  The j-th column of  A  is  stored  in  the
                   array  AP  as  follows:  if UPLO = 'U', AP(i + (j-
                   1)*j/2) = A(i,j) for 1<=i<=j; if UPLO = 'L',  AP(i
                   + (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.
    
                   On exit, AP is  overwritten  by  values  generated
                   during the reduction to tridiagonal form.  If UPLO
                   = 'U', the diagonal and first superdiagonal of the
                   tridiagonal  matrix  T overwrite the corresponding
                   elements of A, and if UPLO = 'L', the diagonal and
                   first subdiagonal of T overwrite the corresponding
                   elements of A.
    
         W         (output) DOUBLE PRECISION array, dimension (N)
                   If INFO = 0, the eigenvalues in ascending order.
    
         Z         (output) COMPLEX*16 array, dimension (LDZ, N)
                   If JOBZ = 'V', then if INFO = 0,  Z  contains  the
                   orthonormal eigenvectors of the matrix A, with the
                   i-th column of Z holding the  eigenvector  associ-
                   ated  with  W(i).   If  JOBZ  = 'N', then Z is not
                   referenced.
    
         LDZ       (input) INTEGER
                   The leading dimension of the array Z.  LDZ  >=  1,
                   and if JOBZ = 'V', LDZ >= max(1,N).
    
         WORK      (workspace/output)  COMPLEX*16  array,   dimension
                   (LWORK)
                   On exit, if LWORK > 0, WORK(1) returns the optimal
                   LWORK.
    
         LWORK     (input) INTEGER
                   The  dimension  of  array  WORK.   If  N   <=   1,
                   LWORK  must  be at least 1.  If JOBZ = 'N' and N >
                   1, LWORK must be at least N.  If JOBZ = 'V' and  N
                   > 1, LWORK must be at least 2*N.
    
         RWORK     (workspace/output) DOUBLE PRECISION array,
                   dimension  (LRWORK)  On  exit,  if  LRWORK  >   0,
                   RWORK(1) returns the optimal LRWORK.
    
         LRWORK    (input) INTEGER
                   The  dimension  of  array  RWORK.   If  N  <=   1,
                   LRWORK  must be at least 1.  If JOBZ = 'N' and N >
                   1, LRWORK must be at least N.  If JOBZ = 'V' and N
                   >  1, LRWORK must be at least 1 + 4*N + 2*N*lg N +
                   3*N**2 , where lg( N ) = smallest integer  k  such
                   that 2**k >= N.
    
         IWORK     (workspace/output)   INTEGER   array,    dimension
                   (LIWORK)
                   On exit, if  LIWORK  >  0,  IWORK(1)  returns  the
                   optimal LIWORK.
    
         LIWORK    (input) INTEGER
                   The dimension of array IWORK.  If JOBZ  = 'N' or N
                   <=  1,  LIWORK must be at least 1.  If JOBZ  = 'V'
                   and N > 1, LIWORK must be at least 2 + 5*N.
    
         INFO      (output) INTEGER
                   = 0:  successful exit
                   < 0:  if INFO = -i, the i-th argument had an ille-
                   gal value.
                   > 0:  if INFO = i, the algorithm  failed  to  con-
                   verge;  i off-diagonal elements of an intermediate
                   tridiagonal form did not converge to zero.
    
    
    
    


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




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

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