DLAMC5 (3) - Linux Manuals
NAME
dlamchf77.f -
SYNOPSIS
Functions/Subroutines
DOUBLE PRECISION function dlamch (CMACH)
DLAMCHF77 deprecated 
subroutine dlamc1 (BETA, T, RND, IEEE1)
DLAMC1 
subroutine dlamc2 (BETA, T, RND, EPS, EMIN, RMIN, EMAX, RMAX)
DLAMC2 
DOUBLE PRECISION function dlamc3 (A, B)
DLAMC3 
subroutine dlamc4 (EMIN, START, BASE)
DLAMC4 
subroutine dlamc5 (BETA, P, EMIN, IEEE, EMAX, RMAX)
DLAMC5 
Function/Subroutine Documentation
subroutine dlamc1 (integerBETA, integerT, logicalRND, logicalIEEE1)
DLAMC1 Purpose:
DLAMC1 determines the machine parameters given by BETA, T, RND, and IEEE1.
Parameters:
- 
BETA 
The base of the machine.
TThe number of ( BETA ) digits in the mantissa.
RNDSpecifies whether proper rounding ( RND = .TRUE. ) or chopping ( RND = .FALSE. ) occurs in addition. This may not be a reliable guide to the way in which the machine performs its arithmetic.
IEEE1Specifies whether rounding appears to be done in the IEEE 'round to nearest' style.
 
Author:
- LAPACK is a software package provided by Univ. of Tennessee, Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..
 
Date:
- April 2012
 
Further Details
  The routine is based on the routine  ENVRON  by Malcolm and
  incorporates suggestions by Gentleman and Marovich. See
     Malcolm M. A. (1972) Algorithms to reveal properties of
        floating-point arithmetic. Comms. of the ACM, 15, 949-951.
     Gentleman W. M. and Marovich S. B. (1974) More on algorithms
        that reveal properties of floating point arithmetic units.
        Comms. of the ACM, 17, 276-277.
 
Definition at line 206 of file dlamchf77.f.
 
 
DLAMC2 Purpose: 
 
 
 
Author:
 
Date:
 
Parameters:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Further Details 
 
 
 
Definition at line 419 of file dlamchf77.f.
 
 
DLAMC3 Purpose: 
 
 
 
Parameters:
 
 
 
 
 
Definition at line 642 of file dlamchf77.f.
 
 
DLAMC4 Purpose: 
 
 
 
Parameters:
 
 
 
 
 
 
 
 
 
Definition at line 689 of file dlamchf77.f.
 
 
DLAMC5 Purpose: 
 
 
 
Parameters:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Definition at line 796 of file dlamchf77.f.
 
 
DLAMCHF77 deprecated Purpose: 
 
 
 
 
Parameters:
 
 
 
Author:
 
Univ. of California Berkeley 
 
Univ. of Colorado Denver 
 
NAG Ltd. 
 
Date:
 
 
 
Definition at line 64 of file dlamchf77.f.
 
Generated automatically by Doxygen for LAPACK from the source code.
 
 subroutine dlamc2 (integerBETA, integerT, logicalRND, double precisionEPS, integerEMIN, double precisionRMIN, integerEMAX, double precisionRMAX)
 DLAMC2 determines the machine parameters specified in its argument
 list.
 
          The base of the machine.
T 
          The number of ( BETA ) digits in the mantissa.
RND 
          Specifies whether proper rounding  ( RND = .TRUE. )  or
          chopping  ( RND = .FALSE. )  occurs in addition. This may not
          be a reliable guide to the way in which the machine performs
          its arithmetic.
EPS 
          The smallest positive number such that
             fl( 1.0 - EPS ) .LT. 1.0,
          where fl denotes the computed value.
EMIN 
          The minimum exponent before (gradual) underflow occurs.
RMIN 
          The smallest normalized number for the machine, given by
          BASE**( EMIN - 1 ), where  BASE  is the floating point value
          of BETA.
EMAX 
          The maximum exponent before overflow occurs.
RMAX 
          The largest positive number for the machine, given by
          BASE**EMAX * ( 1 - EPS ), where  BASE  is the floating point
          value of BETA.
  The computation of  EPS  is based on a routine PARANOIA by
  W. Kahan of the University of California at Berkeley.
 DOUBLE PRECISION function dlamc3 (double precisionA, double precisionB)
 DLAMC3  is intended to force  A  and  B  to be stored prior to doing
 the addition of  A  and  B ,  for use in situations where optimizers
 might hold one of these in a register.
B 
          The values A and B.
 subroutine dlamc4 (integerEMIN, double precisionSTART, integerBASE)
 DLAMC4 is a service routine for DLAMC2.
          The minimum exponent before (gradual) underflow, computed by
          setting A = START and dividing by BASE until the previous A
          can not be recovered.
START 
          The starting point for determining EMIN.
BASE 
          The base of the machine.
 subroutine dlamc5 (integerBETA, integerP, integerEMIN, logicalIEEE, integerEMAX, double precisionRMAX)
 DLAMC5 attempts to compute RMAX, the largest machine floating-point
 number, without overflow.  It assumes that EMAX + abs(EMIN) sum
 approximately to a power of 2.  It will fail on machines where this
 assumption does not hold, for example, the Cyber 205 (EMIN = -28625,
 EMAX = 28718).  It will also fail if the value supplied for EMIN is
 too large (i.e. too close to zero), probably with overflow.
          The base of floating-point arithmetic.
P 
          The number of base BETA digits in the mantissa of a
          floating-point value.
EMIN 
          The minimum exponent before (gradual) underflow.
IEEE 
          A logical flag specifying whether or not the arithmetic
          system is thought to comply with the IEEE standard.
EMAX 
          The largest exponent before overflow
RMAX 
          The largest machine floating-point number.
 DOUBLE PRECISION function dlamch (characterCMACH)
 DLAMCHF77 determines double precision machine parameters.
 
          Specifies the value to be returned by DLAMCH:
          = 'E' or 'e',   DLAMCH := eps
          = 'S' or 's ,   DLAMCH := sfmin
          = 'B' or 'b',   DLAMCH := base
          = 'P' or 'p',   DLAMCH := eps*base
          = 'N' or 'n',   DLAMCH := t
          = 'R' or 'r',   DLAMCH := rnd
          = 'M' or 'm',   DLAMCH := emin
          = 'U' or 'u',   DLAMCH := rmin
          = 'L' or 'l',   DLAMCH := emax
          = 'O' or 'o',   DLAMCH := rmax
          where
          eps   = relative machine precision
          sfmin = safe minimum, such that 1/sfmin does not overflow
          base  = base of the machine
          prec  = eps*base
          t     = number of (base) digits in the mantissa
          rnd   = 1.0 when rounding occurs in addition, 0.0 otherwise
          emin  = minimum exponent before (gradual) underflow
          rmin  = underflow threshold - base**(emin-1)
          emax  = largest exponent before overflow
          rmax  = overflow threshold  - (base**emax)*(1-eps)
 Author