# ?lazq4

Computes an approximation to the smallest eigenvalue using values of d from the previous transform.

## Syntax

call slazq4( i0, n0, z, pp, n0in, dmin, dmin1, dmin2, dn, dn1, dn2, tau, ttype, g )

call dlazq4( i0, n0, z, pp, n0in, dmin, dmin1, dmin2, dn, dn1, dn2, tau, ttype, g )

## Description

The routine computes an approximation tau to the smallest eigenvalue using values of d from the previous transform.

This routine is a thread safe version of ?lasq4 routine, which passes g through the argument list in place of declaring g in a SAVE statement.

## Input Parameters

i0

  INTEGER.

  First index.

n0

  INTEGER.

  Last index.

z

  REAL for slazq4

  DOUBLE PRECISION for dlazq4.

  Array, DIMENSION (`4*n`).

  z holds the qd array.

pp

  INTEGER.

  `pp=0` for ping, `pp=1` for pong.

n0in

  INTEGER. The value of n0 at start of eigtest.

dmin

  REAL for slazq4

  DOUBLE PRECISION for dlazq4.

  Minimum value of d.

dmin1

  REAL for slazq4

  DOUBLE PRECISION for dlazq4.

  Minimum value of d, excluding d`(n0)`.

dmin2

  REAL for slazq4

  DOUBLE PRECISION for dlazq4.

  Minimum value of d, excluding d`(n0)`

  and d`(n0-1)`.

dn

  REAL for slazq4

  DOUBLE PRECISION for dlazq4.

  Contains d`(n)`.

dn1

  REAL for slazq4

  DOUBLE PRECISION for dlazq4.

  Contains d`(n-1)`.

dn2

  REAL for slazq4

  DOUBLE PRECISION for dlazq4.

  Contains d`(n-2)`.

g

  REAL for slazq4

  DOUBLE PRECISION for dlazq4.

  Shift coefficient.

## Output Parameters

tau

  REAL for slazq4

  DOUBLE PRECISION for dlazq4.

  Shift value.

ttype

  INTEGER.

  Shift type.

g

  Shift coefficient.

Parent topic: Auxiliary Routines