114 SUBROUTINE zlaesy( A, B, C, RT1, RT2, EVSCAL, CS1, SN1 )
121 COMPLEX*16 A, B, C, CS1, EVSCAL, RT1, RT2, SN1
127 DOUBLE PRECISION ZERO
128 parameter( zero = 0.0d0 )
130 parameter( one = 1.0d0 )
132 parameter( cone = ( 1.0d0, 0.0d0 ) )
133 DOUBLE PRECISION HALF
134 parameter( half = 0.5d0 )
135 DOUBLE PRECISION THRESH
136 parameter( thresh = 0.1d0 )
139 DOUBLE PRECISION BABS, EVNORM, TABS, Z
143 INTRINSIC abs, max, sqrt
151 IF( abs( b ).EQ.zero )
THEN
154 IF( abs( rt1 ).LT.abs( rt2 ) )
THEN
178 z = max( babs, tabs )
180 $ t = z*sqrt( ( t / z )**2+( b / z )**2 )
187 IF( abs( rt1 ).LT.abs( rt2 ) )
THEN
200 IF( tabs.GT.one )
THEN
201 t = tabs*sqrt( ( one / tabs )**2+( sn1 / tabs )**2 )
203 t = sqrt( cone+sn1*sn1 )
206 IF( evnorm.GE.thresh )
THEN
subroutine zlaesy(a, b, c, rt1, rt2, evscal, cs1, sn1)
ZLAESY computes the eigenvalues and eigenvectors of a 2-by-2 complex symmetric matrix.