Go to main content
Oracle Developer Studio 12.5 Man Pages

Exit Print View

Updated: June 2017
 
 

zlaed0 (3p)

Name

zlaed0 - is used by sstedc. Compute all eigenvalues and corresponding eigenvectors of an unreduced symmetric tridiagonal matrix using the divide and conquer method

Synopsis

SUBROUTINE  ZLAED0(  QSIZ, N, D, E, Q, LDQ, QSTORE, LDQS, RWORK, IWORK,
INFO )


INTEGER INFO, LDQ, LDQS, N, QSIZ

INTEGER IWORK(*)

DOUBLE PRECISION D(*),E(*), RWORK(*)

DOUBLE COMPLEX Q(LDQ,*), QSTORE(LDQS,*)


SUBROUTINE ZLAED0_64( QSIZ, N, D,  E,  Q,  LDQ,  QSTORE,  LDQS,  RWORK,
IWORK, INFO )


INTEGER*8 INFO, LDQ, LDQS, N, QSIZ

INTEGER*8 IWORK(*)

DOUBLE PRECISION D(*),E(*), RWORK(*)

DOUBLE COMPLEX Q(LDQ,*), QSTORE(LDQS,*)


F95 INTERFACE
SUBROUTINE  LAED0(  QSIZ,  N, D, E, Q, LDQ, QSTORE, LDQS, RWORK, IWORK,
INFO )


INTEGER :: QSIZ, N, LDQ, LDQS, INFO

INTEGER, DIMENSION(:) :: IWORK

COMPLEX(8), DIMENSION(:,:) :: Q, QSTORE

REAL(8), DIMENSION(:) :: D, E, RWORK


SUBROUTINE LAED0_64( QSIZ, N, D, E, Q, LDQ, QSTORE, LDQS, RWORK, IWORK,
INFO )


INTEGER(8) :: QSIZ, N, LDQ, LDQS, INFO

INTEGER(8), DIMENSION(:) :: IWORK

COMPLEX(8), DIMENSION(:,:) :: Q, QSTORE

REAL(8), DIMENSION(:) :: D, E, RWORK


C INTERFACE
#include <sunperf.h>

void  zlaed0  (int qsiz, int n, double *d, double *e, doublecomplex *q,
int ldq, doublecomplex *qstore, int ldqs, int *info);


void zlaed0_64 (long qsiz, long n, double *d, double *e,  doublecomplex
*q, long ldq, doublecomplex *qstore, long ldqs, long *info);

Description

Oracle Solaris Studio Performance Library                           zlaed0(3P)



NAME
       zlaed0  -  is used by sstedc. Compute all eigenvalues and corresponding
       eigenvectors of an unreduced symmetric  tridiagonal  matrix  using  the
       divide and conquer method


SYNOPSIS
       SUBROUTINE  ZLAED0(  QSIZ, N, D, E, Q, LDQ, QSTORE, LDQS, RWORK, IWORK,
                 INFO )


       INTEGER INFO, LDQ, LDQS, N, QSIZ

       INTEGER IWORK(*)

       DOUBLE PRECISION D(*),E(*), RWORK(*)

       DOUBLE COMPLEX Q(LDQ,*), QSTORE(LDQS,*)


       SUBROUTINE ZLAED0_64( QSIZ, N, D,  E,  Q,  LDQ,  QSTORE,  LDQS,  RWORK,
                 IWORK, INFO )


       INTEGER*8 INFO, LDQ, LDQS, N, QSIZ

       INTEGER*8 IWORK(*)

       DOUBLE PRECISION D(*),E(*), RWORK(*)

       DOUBLE COMPLEX Q(LDQ,*), QSTORE(LDQS,*)


   F95 INTERFACE
       SUBROUTINE  LAED0(  QSIZ,  N, D, E, Q, LDQ, QSTORE, LDQS, RWORK, IWORK,
                 INFO )


       INTEGER :: QSIZ, N, LDQ, LDQS, INFO

       INTEGER, DIMENSION(:) :: IWORK

       COMPLEX(8), DIMENSION(:,:) :: Q, QSTORE

       REAL(8), DIMENSION(:) :: D, E, RWORK


       SUBROUTINE LAED0_64( QSIZ, N, D, E, Q, LDQ, QSTORE, LDQS, RWORK, IWORK,
                 INFO )


       INTEGER(8) :: QSIZ, N, LDQ, LDQS, INFO

       INTEGER(8), DIMENSION(:) :: IWORK

       COMPLEX(8), DIMENSION(:,:) :: Q, QSTORE

       REAL(8), DIMENSION(:) :: D, E, RWORK


   C INTERFACE
       #include <sunperf.h>

       void  zlaed0  (int qsiz, int n, double *d, double *e, doublecomplex *q,
                 int ldq, doublecomplex *qstore, int ldqs, int *info);


       void zlaed0_64 (long qsiz, long n, double *d, double *e,  doublecomplex
                 *q, long ldq, doublecomplex *qstore, long ldqs, long *info);


PURPOSE
       Using the divide and conquer method, zlaed0 computes all eigenvalues of
       a symmetric tridiagonal matrix which is one  diagonal  block  of  those
       from reducing a dense or band Hermitian matrix and corresponding eigen-
       vectors of the dense or band matrix.


ARGUMENTS
       QSIZ (input)
                 QSIZ is INTEGER
                 The dimension of the unitary matrix used to reduce
                 the full matrix to tridiagonal form.  QSIZ >= N if  ICOMPQ  =
                 1.


       N (input)
                 N is INTEGER
                 The dimension of the symmetric tridiagonal matrix.  N >= 0.


       D (input/output)
                 D is DOUBLE PRECISION array, dimension (N)
                 On entry, the diagonal elements of the tridiagonal matrix.
                 On exit, the eigenvalues in ascending order.


       E (input/output)
                 E is DOUBLE PRECISION array, dimension (N-1)
                 On  entry,  the  off-diagonal  elements  of  the  tridiagonal
                 matrix.
                 On exit, E has been destroyed.


       Q (input/output)
                 Q is COMPLEX*16 array, dimension (LDQ,N)
                 On entry, Q must contain an QSIZ x N matrix whose columns
                 unitarily orthonormal. It is a part of the unitary matrix
                 that reduces the full dense Hermitian matrix to a
                 (reducible) symmetric tridiagonal matrix.


       LDQ (input)
                 LDQ is INTEGER
                 The leading dimension of the array Q.  LDQ >= max(1,N).


       IWORK (output)
                 IWORK is INTEGER array,
                 the dimension of IWORK must be at least
                 6 + 6*N + 5*N*lg N
                 ( lg( N ) = smallest integer k
                 such that 2^k >= N )


       RWORK (output)
                 RWORK is DOUBLE PRECISION array,
                 dimension (1 + 3*N + 2*N*lg N + 3*N**2)
                 ( lg( N ) = smallest integer k
                 such that 2^k >= N )


       QSTORE (output)
                 QSTORE is COMPLEX*16 array, dimension (LDQS, N)
                 Used to store parts of
                 the eigenvector matrix when the updating matrix multiplies
                 take place.


       LDQS (input)
                 LDQS is INTEGER
                 The leading dimension of the array QSTORE.
                 LDQS >= max(1,N).


       INFO (output)
                 INFO is INTEGER
                 = 0:  successful exit.
                 < 0:  if INFO = -i, the i-th argument had an illegal value.
                 > 0:  The algorithm failed to compute an eigenvalue while
                 working on the submatrix lying in rows and columns
                 INFO/(N+1) through mod(INFO,N+1).




                                  7 Nov 2015                        zlaed0(3P)