113 SUBROUTINE slasd5( I, D, Z, DELTA, RHO, DSIGMA, WORK )
124 REAL D( 2 ), DELTA( 2 ), WORK( 2 ), Z( 2 )
130 REAL ZERO, ONE, TWO, THREE, FOUR
131 parameter( zero = 0.0e+0, one = 1.0e+0, two = 2.0e+0,
132 $ three = 3.0e+0, four = 4.0e+0 )
135 REAL B, C, DEL, DELSQ, TAU, W
142 del = d( 2 ) - d( 1 )
143 delsq = del*( d( 2 )+d( 1 ) )
145 w = one + four*rho*( z( 2 )*z( 2 ) / ( d( 1 )+three*d( 2 ) )-
146 $ z( 1 )*z( 1 ) / ( three*d( 1 )+d( 2 ) ) ) / del
148 b = delsq + rho*( z( 1 )*z( 1 )+z( 2 )*z( 2 ) )
149 c = rho*z( 1 )*z( 1 )*delsq
155 tau = two*c / ( b+sqrt( abs( b*b-four*c ) ) )
159 tau = tau / ( d( 1 )+sqrt( d( 1 )*d( 1 )+tau ) )
160 dsigma = d( 1 ) + tau
162 delta( 2 ) = del - tau
163 work( 1 ) = two*d( 1 ) + tau
164 work( 2 ) = ( d( 1 )+tau ) + d( 2 )
168 b = -delsq + rho*( z( 1 )*z( 1 )+z( 2 )*z( 2 ) )
169 c = rho*z( 2 )*z( 2 )*delsq
174 tau = -two*c / ( b+sqrt( b*b+four*c ) )
176 tau = ( b-sqrt( b*b+four*c ) ) / two
181 tau = tau / ( d( 2 )+sqrt( abs( d( 2 )*d( 2 )+tau ) ) )
182 dsigma = d( 2 ) + tau
183 delta( 1 ) = -( del+tau )
185 work( 1 ) = d( 1 ) + tau + d( 2 )
186 work( 2 ) = two*d( 2 ) + tau
197 b = -delsq + rho*( z( 1 )*z( 1 )+z( 2 )*z( 2 ) )
198 c = rho*z( 2 )*z( 2 )*delsq
203 tau = ( b+sqrt( b*b+four*c ) ) / two
205 tau = two*c / ( -b+sqrt( b*b+four*c ) )
210 tau = tau / ( d( 2 )+sqrt( d( 2 )*d( 2 )+tau ) )
211 dsigma = d( 2 ) + tau
212 delta( 1 ) = -( del+tau )
214 work( 1 ) = d( 1 ) + tau + d( 2 )
215 work( 2 ) = two*d( 2 ) + tau
subroutine slasd5(i, d, z, delta, rho, dsigma, work)
SLASD5 computes the square root of the i-th eigenvalue of a positive symmetric rank-one modification ...