# claev2.f - Man Page

SRC/claev2.f

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

**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 **120** 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 28 2023 12:08:41 Version 3.12.0 LAPACK