====================================================================
dlasq3 examples
====================================================================

====================================================================
Man Page Details
====================================================================

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

SYNOPSIS
       SUBROUTINE DLASQ3( I0,  N0,  Z,  PP,  DMIN,  SIGMA, DESIG, QMAX, NFAIL,
                          ITER, NDIV, IEEE )

           LOGICAL        IEEE

           INTEGER        I0, ITER, N0, NDIV, NFAIL, PP

           DOUBLE         PRECISION DESIG, DMIN, QMAX, SIGMA

           DOUBLE         PRECISION Z( * )

  Purpose
  =======

  DLASQ3 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
  =========

  I0     (input) INTEGER
         First index.

  N0     (input) INTEGER
         Last index.

  Z      (input) DOUBLE PRECISION array, dimension ( 4*N )
         Z holds the qd array.

  PP     (input) INTEGER
         PP=0 for ping, PP=1 for pong.

  DMIN   (output) DOUBLE PRECISION
         Minimum value of d.

  SIGMA  (output) DOUBLE PRECISION
         Sum of shifts used in current segment.

  DESIG  (input/output) DOUBLE PRECISION
         Lower order part of SIGMA

  QMAX   (input) DOUBLE PRECISION
         Maximum value of q.

  NFAIL  (output) INTEGER
         Number of times shift was too big.

  ITER   (output) INTEGER
         Number of iterations.

  NDIV   (output) INTEGER
         Number of divisions.

  TTYPE  (output) INTEGER
         Shift type.

  IEEE   (input) LOGICAL
         Flag for IEEE or non IEEE arithmetic (passed to DLASQ5).

