INSTALL/droundup_lwork.f(3)

NAME
INSTALL/droundup_lwork.f

SYNOPSIS

  Functions/Subroutines
double precision function droundup_lwork (lwork)
DROUNDUP_LWORK

Function/Subroutine Documentation

  double precision function droundup_lwork (integer lwork)

DROUNDUP_LWORK

Purpose:

     DROUNDUP_LWORK deals with a subtle bug with returning LWORK as a Float.
     This routine guarantees it is rounded up instead of down by
     multiplying LWORK by 1+eps when it is necessary, where eps is the relative machine precision.
     E.g.,
            float( 9007199254740993            ) == 9007199254740992
            float( 9007199254740993 ) * (1.+eps) == 9007199254740994
     \return DROUNDUP_LWORK
     \verbatim
             DROUNDUP_LWORK >= LWORK.
             DROUNDUP_LWORK is guaranteed to have zero decimal part.

Parameters
    LWORK Workspace size.

Author
    Weslley Pereira, University of Colorado Denver, USA

Further Details:

      This routine was inspired in the method `magma_zmake_lwork` from MAGMA.
      \see https://bitbucket.org/icl/magma/src/master/control/magma_zauxiliary.cpp

Definition at line 58 of file droundup_lwork.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.