Name
HPL_pdlamch determines machine-specific arithmetic constants.
Synopsis
#include "hpl.h"
double
HPL_pdlamch(
MPI_Comm
COMM,
const HPL_T_MACH
CMACH
);
Description
HPL_pdlamch
determines  machine-specific  arithmetic  constants  such  as
the relative machine precision (eps),  the safe minimum(sfmin) such that
1/sfmin does not overflow, the base of the machine (base), the precision
(prec),  the  number  of  (base)  digits in the  mantissa  (t),  whether
rounding occurs in addition (rnd = 1.0 and 0.0 otherwise),  the  minimum
exponent before  (gradual)  underflow (emin),  the  underflow  threshold
(rmin)- base**(emin-1), the largest exponent before overflow (emax), the
overflow threshold (rmax)  - (base**emax)*(1-eps).
Arguments
COMM    (global/local input)          MPI_Comm
        The MPI communicator identifying the process collection.
CMACH   (global input)                const HPL_T_MACH
        Specifies the value to be returned by HPL_pdlamch            
           = HPL_MACH_EPS,   HPL_pdlamch := eps (default)            
           = HPL_MACH_SFMIN, HPL_pdlamch := sfmin                    
           = HPL_MACH_BASE,  HPL_pdlamch := base                     
           = HPL_MACH_PREC,  HPL_pdlamch := eps*base                 
           = HPL_MACH_MLEN,  HPL_pdlamch := t                        
           = HPL_MACH_RND,   HPL_pdlamch := rnd                      
           = HPL_MACH_EMIN,  HPL_pdlamch := emin                     
           = HPL_MACH_RMIN,  HPL_pdlamch := rmin                     
           = HPL_MACH_EMAX,  HPL_pdlamch := emax                     
           = HPL_MACH_RMAX,  HPL_pdlamch := rmax                     
         
        where                                                        
         
           eps   = relative machine precision,                       
           sfmin = safe minimum,                                     
           base  = base of the machine,                              
           prec  = eps*base,                                         
           t     = number of digits in the mantissa,                 
           rnd   = 1.0 if rounding occurs in addition,               
           emin  = minimum exponent before underflow,                
           rmin  = underflow threshold,                              
           emax  = largest exponent before overflow,                 
           rmax  = overflow threshold.