132 SUBROUTINE dlasq5( I0, N0, Z, PP, TAU, DMIN, DMIN1, DMIN2, DN,
143 DOUBLE PRECISION dmin, dmin1, dmin2, dn, dnm1, dnm2, tau
146 DOUBLE PRECISION z( * )
152 DOUBLE PRECISION zero
153 parameter( zero = 0.0d0 )
157 DOUBLE PRECISION d, emin, temp
164 IF( ( n0-i0-1 ).LE.0 )
178 DO 10 j4 = 4*i0, 4*( n0-3 ), 4
179 z( j4-2 ) = d + z( j4-1 )
180 temp = z( j4+1 ) / z( j4-2 )
182 dmin = min( dmin, d )
183 z( j4 ) = z( j4-1 )*temp
184 emin = min( z( j4 ), emin )
187 DO 20 j4 = 4*i0, 4*( n0-3 ), 4
188 z( j4-3 ) = d + z( j4 )
189 temp = z( j4+2 ) / z( j4-3 )
191 dmin = min( dmin, d )
192 z( j4-1 ) = z( j4 )*temp
193 emin = min( z( j4-1 ), emin )
203 z( j4-2 ) = dnm2 + z( j4p2 )
204 z( j4 ) = z( j4p2+2 )*( z( j4p2 ) / z( j4-2 ) )
205 dnm1 = z( j4p2+2 )*( dnm2 / z( j4-2 ) ) - tau
206 dmin = min( dmin, dnm1 )
211 z( j4-2 ) = dnm1 + z( j4p2 )
212 z( j4 ) = z( j4p2+2 )*( z( j4p2 ) / z( j4-2 ) )
213 dn = z( j4p2+2 )*( dnm1 / z( j4-2 ) ) - tau
214 dmin = min( dmin, dn )
221 DO 30 j4 = 4*i0, 4*( n0-3 ), 4
222 z( j4-2 ) = d + z( j4-1 )
226 z( j4 ) = z( j4+1 )*( z( j4-1 ) / z( j4-2 ) )
227 d = z( j4+1 )*( d / z( j4-2 ) ) - tau
229 dmin = min( dmin, d )
230 emin = min( emin, z( j4 ) )
233 DO 40 j4 = 4*i0, 4*( n0-3 ), 4
234 z( j4-3 ) = d + z( j4 )
238 z( j4-1 ) = z( j4+2 )*( z( j4 ) / z( j4-3 ) )
239 d = z( j4+2 )*( d / z( j4-3 ) ) - tau
241 dmin = min( dmin, d )
242 emin = min( emin, z( j4-1 ) )
252 z( j4-2 ) = dnm2 + z( j4p2 )
253 IF( dnm2.LT.zero )
THEN 256 z( j4 ) = z( j4p2+2 )*( z( j4p2 ) / z( j4-2 ) )
257 dnm1 = z( j4p2+2 )*( dnm2 / z( j4-2 ) ) - tau
259 dmin = min( dmin, dnm1 )
264 z( j4-2 ) = dnm1 + z( j4p2 )
265 IF( dnm1.LT.zero )
THEN 268 z( j4 ) = z( j4p2+2 )*( z( j4p2 ) / z( j4-2 ) )
269 dn = z( j4p2+2 )*( dnm1 / z( j4-2 ) ) - tau
271 dmin = min( dmin, dn )