Scroll to navigation

DLAZQ3(1) LAPACK auxiliary routine (version 3.1) DLAZQ3(1)

NAME

DLAZQ3 - for deflation, computes a shift (TAU) and calls dqds

SYNOPSIS

I0, N0, Z, PP, DMIN, SIGMA, DESIG, QMAX, NFAIL, ITER, NDIV, IEEE, TTYPE, DMIN1, DMIN2, DN, DN1, DN2, TAU )

LOGICAL IEEE INTEGER I0, ITER, N0, NDIV, NFAIL, PP, TTYPE DOUBLE PRECISION DESIG, DMIN, DMIN1, DMIN2, DN, DN1, DN2, QMAX, SIGMA, TAU DOUBLE PRECISION Z( * )

PURPOSE

DLAZQ3 checks for deflation, computes a shift (TAU) and calls dqds. In case of failure it changes shifts, and tries again until output is positive.

ARGUMENTS

First index.
Last index.
Z holds the qd array.
PP=0 for ping, PP=1 for pong.
Minimum value of d.
Sum of shifts used in current segment.
Lower order part of SIGMA
Maximum value of q.
Number of times shift was too big.
Number of iterations.
Number of divisions.
Flag for IEEE or non IEEE arithmetic (passed to DLASQ5).
Shift type. TTYPE is passed as an argument in order to save its value between calls to DLAZQ3
DMIN2 (input/output) REAL DN (input/output) REAL DN1 (input/output) REAL DN2 (input/output) REAL TAU (input/output) REAL These are passed as arguments in order to save their values between calls to DLAZQ3

This is a thread safe version of DLASQ3, which passes TTYPE, DMIN1, DMIN2, DN, DN1. DN2 and TAU through the argument list in place of declaring them in a SAVE statment.

October 2006 LAPACK auxiliary routine (version 3.1)