NAME

cgeev - compute for an N-by-N complex nonsymmetric matrix A, the eigenvalues and, optionally, the left and/or right eigenvectors


SYNOPSIS

  SUBROUTINE CGEEV( JOBVL, JOBVR, N, A, LDA, W, VL, LDVL, VR, LDVR, 
 *      WORK, LDWORK, WORK2, INFO)
  CHARACTER * 1 JOBVL, JOBVR
  COMPLEX A(LDA,*), W(*), VL(LDVL,*), VR(LDVR,*), WORK(*)
  INTEGER N, LDA, LDVL, LDVR, LDWORK, INFO
  REAL WORK2(*)
  SUBROUTINE CGEEV_64( JOBVL, JOBVR, N, A, LDA, W, VL, LDVL, VR, LDVR, 
 *      WORK, LDWORK, WORK2, INFO)
  CHARACTER * 1 JOBVL, JOBVR
  COMPLEX A(LDA,*), W(*), VL(LDVL,*), VR(LDVR,*), WORK(*)
  INTEGER*8 N, LDA, LDVL, LDVR, LDWORK, INFO
  REAL WORK2(*)

F95 INTERFACE

  SUBROUTINE GEEV( JOBVL, JOBVR, [N], A, [LDA], W, VL, [LDVL], VR, 
 *       [LDVR], [WORK], [LDWORK], [WORK2], [INFO])
  CHARACTER(LEN=1) :: JOBVL, JOBVR
  COMPLEX, DIMENSION(:) :: W, WORK
  COMPLEX, DIMENSION(:,:) :: A, VL, VR
  INTEGER :: N, LDA, LDVL, LDVR, LDWORK, INFO
  REAL, DIMENSION(:) :: WORK2
  SUBROUTINE GEEV_64( JOBVL, JOBVR, [N], A, [LDA], W, VL, [LDVL], VR, 
 *       [LDVR], [WORK], [LDWORK], [WORK2], [INFO])
  CHARACTER(LEN=1) :: JOBVL, JOBVR
  COMPLEX, DIMENSION(:) :: W, WORK
  COMPLEX, DIMENSION(:,:) :: A, VL, VR
  INTEGER(8) :: N, LDA, LDVL, LDVR, LDWORK, INFO
  REAL, DIMENSION(:) :: WORK2

C INTERFACE

#include <sunperf.h>

void cgeev(char jobvl, char jobvr, int n, complex *a, int lda, complex *w, complex *vl, int ldvl, complex *vr, int ldvr, int *info);

void cgeev_64(char jobvl, char jobvr, long n, complex *a, long lda, complex *w, complex *vl, long ldvl, complex *vr, long ldvr, long *info);


PURPOSE

cgeev computes for an N-by-N complex nonsymmetric matrix A, the eigenvalues and, optionally, the left and/or right eigenvectors.

The right eigenvector v(j) of A satisfies

                 A * v(j) = lambda(j) * v(j)

where lambda(j) is its eigenvalue.

The left eigenvector u(j) of A satisfies

              u(j)**H * A = lambda(j) * u(j)**H

where u(j)**H denotes the conjugate transpose of u(j).

The computed eigenvectors are normalized to have Euclidean norm equal to 1 and largest component real.


ARGUMENTS