ition number is less than 1/TOL.
          If the user sets TOL to be less than SQRT((N+P)*(N+M))*EPS
          then the tolerance is taken as SQRT((N+P)*(N+M))*EPS,
          where EPS is the machine precision (see LAPACK Library
          Routine DLAMCH).

</PRE>
<B>Workspace</B>
<PRE>
  IWORK   INTEGER array, dimension (MAX(M,P))

  DWORK   DOUBLE PRECISION array, dimension (MAX(N,2*MAX(P,M)))

  ZWORK   DOUBLE PRECISION array, dimension (LZWORK)
          On exit, if INFO = 0, ZWORK(1) returns the optim