Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
HPL_dlamch(3)		     HPL Library Functions		 HPL_dlamch(3)

NAME
       HPL_dlamch - determines machine-specific	arithmetic constants.

SYNOPSIS
       #include	"hpl.h"

       double HPL_dlamch( const	HPL_T_MACH CMACH );

DESCRIPTION
       HPL_dlamch  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
       CMACH   (local input)	       const HPL_T_MACH
	       Specifies the value to be returned by HPL_dlamch
		  = HPL_MACH_EPS,   HPL_dlamch := eps (default)
		  = HPL_MACH_SFMIN, HPL_dlamch := sfmin
		  = HPL_MACH_BASE,  HPL_dlamch := base
		  = HPL_MACH_PREC,  HPL_dlamch := eps*base
		  = HPL_MACH_MLEN,  HPL_dlamch := t
		  = HPL_MACH_RND,   HPL_dlamch := rnd
		  = HPL_MACH_EMIN,  HPL_dlamch := emin
		  = HPL_MACH_RMIN,  HPL_dlamch := rmin
		  = HPL_MACH_EMAX,  HPL_dlamch := emax
		  = HPL_MACH_RMAX,  HPL_dlamch := 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.

EXAMPLE
       #include	"hpl.h"

       int main(int argc, char *argv[])
       {
	  double eps;
	  eps =	HPL_dlamch( HPL_MACH_EPS );
	  printf("eps=%18.8e\n", eps);
	  exit(0); return(0);
       }

REFERENCES
       This function has been manually translated from the Fortran  77	LAPACK
       auxiliary  function  dlamch.f  (version 2.0 -- 1992), that  was	itself
       based on	the function ENVRON  by	Malcolm	and  incorporated  suggestions
       by Gentleman and	Marovich. See

       Malcolm	M.  A.,	 Algorithms  to	 reveal	 properties  of	floating-point
       arithmetic.,  Comms. of the ACM,	15, 949-951 (1972).

       Gentleman W. M. and Marovich S. B.,  More  on algorithms	  that	reveal
       properties  of	floating point arithmetic units.,  Comms. of  the ACM,
       17, 276-277 (1974).

HPL 2.1			       October 26, 2012			 HPL_dlamch(3)

NAME | SYNOPSIS | DESCRIPTION | ARGUMENTS | EXAMPLE | REFERENCES

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=HPL_dlamch&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help