dlamchf77.f (3) Linux Manual Page
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, andParameters:
IEEE1.
- BETA
The base of the machine.
TThe number of ( BETA ) digits in the mantissa.
RNDSpecifies whether proper rounding ( RND = .TRUE. ) or
IEEE1
chopping ( RND = .FALSE. ) occurs in addition. This may not
be a reliable guide to the way in which the machine performs
its arithmetic.Specifies 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.
subroutine dlamc2 (integerBETA, integerT, logicalRND, double precisionEPS, integerEMIN, double precisionRMIN, integerEMAX, double precisionRMAX)
DLAMC2 Purpose:
DLAMC2 determines the machine parameters specified in its argument
list.
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
Parameters:
- BETA
The base of the machine.
TThe number of ( BETA ) digits in the mantissa.
RNDSpecifies whether proper rounding ( RND = .TRUE. ) or
EPS
chopping ( RND = .FALSE. ) occurs in addition. This may not
be a reliable guide to the way in which the machine performs
its arithmetic.The smallest positive number such that
EMIN
fl( 1.0 – EPS ) .LT. 1.0,
where fl denotes the computed value.The minimum exponent before (gradual) underflow occurs.
RMINThe smallest normalized number for the machine, given by
EMAX
BASE**( EMIN – 1 ), where BASE is the floating point value
of BETA.The maximum exponent before overflow occurs.
RMAXThe largest positive number for the machine, given by
BASE**EMAX * ( 1 – EPS ), where BASE is the floating point
value of BETA.
Further Details
The computation of EPS is based on a routine PARANOIA by
W. Kahan of the University of California at Berkeley.
Definition at line 419 of file dlamchf77.f.
DOUBLE PRECISION function dlamc3 (double precisionA, double precisionB)
DLAMC3 Purpose:
DLAMC3 is intended to force A and B to be stored prior to doingParameters:
the addition of A and B , for use in situations where optimizers
might hold one of these in a register.
- A
BThe values A and B.
Definition at line 642 of file dlamchf77.f.
subroutine dlamc4 (integerEMIN, double precisionSTART, integerBASE)
DLAMC4 Purpose:
DLAMC4 is a service routine for DLAMC2.Parameters:
- EMIN
The minimum exponent before (gradual) underflow, computed by
START
setting A = START and dividing by BASE until the previous A
can not be recovered.The starting point for determining EMIN.
BASEThe base of the machine.
Definition at line 689 of file dlamchf77.f.
subroutine dlamc5 (integerBETA, integerP, integerEMIN, logicalIEEE, integerEMAX, double precisionRMAX)
DLAMC5 Purpose:
DLAMC5 attempts to compute RMAX, the largest machine floating-pointParameters:
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.
- BETA
The base of floating-point arithmetic.
PThe number of base BETA digits in the mantissa of a
EMIN
floating-point value.The minimum exponent before (gradual) underflow.
IEEEA logical flag specifying whether or not the arithmetic
EMAX
system is thought to comply with the IEEE standard.The largest exponent before overflow
RMAXThe largest machine floating-point number.
Definition at line 796 of file dlamchf77.f.
DOUBLE PRECISION function dlamch (characterCMACH)
DLAMCHF77 deprecated Purpose:DLAMCHF77 determines double precision machine parameters.
Parameters:
- CMACH
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:
- Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Date:
- April 2012
Definition at line 64 of file dlamchf77.f.
