roundup_lwork - Man Page
roundup_lwork: fix rounding integer to float
Synopsis
Functions
double precision function droundup_lwork (lwork)
DROUNDUP_LWORK
real function sroundup_lwork (lwork)
SROUNDUP_LWORK
Detailed Description
Function 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.
real function sroundup_lwork (integer lwork)
SROUNDUP_LWORK
Purpose:
SROUNDUP_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( 16777217 ) == 16777216 float( 16777217 ) * (1.+eps) == 16777218 \return SROUNDUP_LWORK \verbatim SROUNDUP_LWORK >= LWORK. SROUNDUP_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 sroundup_lwork.f.
Author
Generated automatically by Doxygen for LAPACK from the source code.
Info
Tue Nov 28 2023 12:08:43 Version 3.12.0 LAPACK