Previous: claein Up: ../lapack-c.html Next: claev2

# claesy

```
NAME
CLAESY - compute the eigendecomposition of a 2x2 symmetric
matrix  ( ( A, B );( B, C ) ) provided the norm of the
matrix of eigenvectors is larger than some threshold value

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

COMPLEX        A, B, C, CS1, EVSCAL, RT1, RT2, SN1

PURPOSE
CLAESY computes the eigendecomposition of a 2x2 symmetric
matrix
( ( A, B );( B, C ) ) provided the norm of the matrix of
eigenvectors is larger than some threshold value.

RT1 is the eigenvalue of larger absolute value, and RT2 of
smaller absolute value.  If the eigenvectors are computed,
then on return ( CS1, SN1 ) is the unit eigenvector for RT1,
hence

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

ARGUMENTS
A       (input) COMPLEX
The ( 1, 1 ) entry of input matrix.

B       (input) COMPLEX
The ( 1, 2 ) entry of input matrix.  The ( 2, 1 )
entry is also given by B, since the 2 x 2 matrix is
symmetric.

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

RT1     (output) COMPLEX
The eigenvalue of larger modulus.

RT2     (output) COMPLEX
The eigenvalue of smaller modulus.

EVSCAL  (output) COMPLEX
The complex value by which the eigenvector matrix
was scaled to make it orthonormal.  If EVSCAL is
zero, the eigenvectors were not computed.  This
means one of two things:  the 2 x 2 matrix could not
be diagonalized, or the norm of the matrix of eigen-
vectors before scaling was larger than the threshold
value THRESH (set below).

CS1     (output) COMPLEX
SN1     (output) COMPLEX If EVSCAL .NE. 0,  ( CS1,
SN1 ) is the unit right eigenvector for RT1.
```