# claev2.f - Man Page

## Synopsis

### Functions/Subroutines

subroutine **claev2** (A, B, C, RT1, RT2, CS1, SN1)**CLAEV2** computes the eigenvalues and eigenvectors of a 2-by-2 symmetric/Hermitian matrix.

## Function/Subroutine Documentation

### subroutine claev2 (complex A, complex B, complex C, real RT1, real RT2, real CS1, complex SN1)

**CLAEV2** computes the eigenvalues and eigenvectors of a 2-by-2 symmetric/Hermitian matrix.

**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 ].

**Parameters:***A*A is COMPLEX The (1,1) element of the 2-by-2 matrix.

*B*B is COMPLEX The (1,2) element and the conjugate of the (2,1) element of the 2-by-2 matrix.

*C*C is COMPLEX The (2,2) element of the 2-by-2 matrix.

*RT1*RT1 is REAL The eigenvalue of larger absolute value.

*RT2*RT2 is REAL The eigenvalue of smaller absolute value.

*CS1*CS1 is REAL

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

**Author:**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

**Date:**December 2016

**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.

Definition at line 123 of file claev2.f.

## Author

Generated automatically by Doxygen for LAPACK from the source code.

## Referenced By

The man page claev2(3) is an alias of claev2.f(3).

Tue Nov 14 2017 Version 3.8.0 LAPACK