Previous: claesy Up: ../lapack-c.html Next: clags2


claev2


 NAME
      CLAEV2 - compute the eigendecomposition of a 2-by-2 Hermi-
      tian matrix  [ A B ]  [ CONJG(B) C ]

 SYNOPSIS
      SUBROUTINE CLAEV2( A, B, C, RT1, RT2, CS1, SN1 )

          REAL           CS1, RT1, RT2

          COMPLEX        A, B, C, SN1

 PURPOSE
      CLAEV2 computes the eigendecomposition of a 2-by-2 Hermitian
      matrix
         [  A         B  ]
         [  CONJG(B)  C  ].  On return, RT1 is the eigenvalue of
      larger absolute value, RT2 is the eigenvalue of smaller
      absolute value, and (CS1,SN1) is the unit right eigenvector
      for RT1, giving the decomposition

      [ CS1  CONJG(SN1) ] [    A     B ] [ CS1 -CONJG(SN1) ] = [
      RT1  0  ] [-SN1     CS1     ] [ CONJG(B) C ] [ SN1     CS1
      ]   [  0  RT2 ].

 ARGUMENTS
      A      (input) COMPLEX
             The (1,1) entry of the 2-by-2 matrix.

      B      (input) COMPLEX
             The (1,2) entry and the conjugate of the (2,1) entry
             of the 2-by-2 matrix.

      C      (input) COMPLEX
             The (2,2) entry of the 2-by-2 matrix.

      RT1    (output) REAL
             The eigenvalue of larger absolute value.

      RT2    (output) REAL
             The eigenvalue of smaller absolute value.

      CS1    (output) REAL
             SN1    (output) COMPLEX The vector (CS1, SN1) is a
             unit right eigenvector for RT1.

 FURTHER DETAILS
      RT1 is accurate to a few ulps barring over/underflow.

      RT2 may be inaccurate if there is massive cancellation in
      the determinant A*C-B*B; higher precision or correctly
      rounded or correctly truncated arithmetic would be needed to

      compute RT2 accurately in all cases.

      CS1 and SN1 are accurate to a few ulps barring
      over/underflow.

      Overflow is possible only if RT1 is within a factor of 5 of
      overflow.  Underflow is harmless if the input data is 0 or
      exceeds
         underflow_threshold / macheps.