Loading...
Searching...
No Matches

## claein()

subroutine claein | ( | logical | rightv,
|  | logical | noinit,
|  | integer | n,
|  | complex, dimension( ldh, * ) | h,
|  | integer | ldh,
|  | complex | w,
|  | complex, dimension( * ) | v,
|  | complex, dimension( ldb, * ) | b,
|  | integer | ldb,
|  | real, dimension( * ) | rwork,
|  | real | eps3,
|  | real | smlnum,
|  | integer | info )

CLAEIN computes a specified right or left eigenvector of an upper Hessenberg matrix by inverse iteration.

Download CLAEIN + dependencies [TGZ] [ZIP] [TXT]

Purpose:

      !>
      !> CLAEIN uses inverse iteration to find a right or left eigenvector
      !> corresponding to the eigenvalue W of a complex upper Hessenberg
      !> matrix H.
      !>

Parameters

  [in]

  RIGHTV

      !>          RIGHTV is LOGICAL
      !>          = .TRUE. : compute right eigenvector;
      !>          = .FALSE.: compute left eigenvector.
      !>

  [in]

  NOINIT

      !>          NOINIT is LOGICAL
      !>          = .TRUE. : no initial vector supplied in V
      !>          = .FALSE.: initial vector supplied in V.
      !>

  [in]

  N

      !>          N is INTEGER
      !>          The order of the matrix H.  N >= 0.
      !>

  [in]

  H

      !>          H is COMPLEX array, dimension (LDH,N)
      !>          The upper Hessenberg matrix H.
      !>

  [in]

  LDH

      !>          LDH is INTEGER
      !>          The leading dimension of the array H.  LDH >= max(1,N).
      !>

  [in]

  W

      !>          W is COMPLEX
      !>          The eigenvalue of H whose corresponding right or left
      !>          eigenvector is to be computed.
      !>

  [in,out]

  V

      !>          V is COMPLEX array, dimension (N)
      !>          On entry, if NOINIT = .FALSE., V must contain a starting
      !>          vector for inverse iteration; otherwise V need not be set.
      !>          On exit, V contains the computed eigenvector, normalized so
      !>          that the component of largest magnitude has magnitude 1; here
      !>          the magnitude of a complex number (x,y) is taken to be
      !>          |x| + |y|.
      !>

  [out]

  B

      !>          B is COMPLEX array, dimension (LDB,N)
      !>

  [in]

  LDB

      !>          LDB is INTEGER
      !>          The leading dimension of the array B.  LDB >= max(1,N).
      !>

  [out]

  RWORK

      !>          RWORK is REAL array, dimension (N)
      !>

  [in]

  EPS3

      !>          EPS3 is REAL
      !>          A small machine-dependent value which is used to perturb
      !>          close eigenvalues, and to replace zero pivots.
      !>

  [in]

  SMLNUM

      !>          SMLNUM is REAL
      !>          A machine-dependent value close to the underflow threshold.
      !>

  [out]

  INFO

      !>          INFO is INTEGER
      !>          = 0:  successful exit
      !>          = 1:  inverse iteration did not converge; V is set to the
      !>                last iterate.
      !>

Author
  Univ. of Tennessee
  Univ. of California Berkeley
  Univ. of Colorado Denver
  NAG Ltd.