Purpose
To compute the general product of K real scalars without over- or underflow.Specification
SUBROUTINE MA01BD( BASE, LGBAS, K, S, A, INCA, ALPHA, BETA, SCAL )
C .. Scalar Arguments ..
INTEGER INCA, K, SCAL
DOUBLE PRECISION ALPHA, BASE, BETA, LGBAS
C .. Array Arguments ..
INTEGER S(*)
DOUBLE PRECISION A(*)
Arguments
Input/Output Parameters
BASE (input) DOUBLE PRECISION
Machine base.
LGBAS (input) DOUBLE PRECISION
Logarithm of BASE.
K (input) INTEGER
The number of scalars. K >= 1.
S (input) INTEGER array, dimension (K)
The signature array. Each entry of S must be 1 or -1.
A (input) DOUBLE PRECISION array, dimension (K)
Vector of real scalars.
INCA (input) INTEGER
Increment for the array A. INCA <> 0.
ALPHA (output) DOUBLE PRECISION
ALPHA is a real scalar such that
ALPHA / BETA * BASE**(SCAL)
is the general product of the scalars in the array A.
BETA (output) DOUBLE PRECISION
BETA is either 0.0 or 1.0.
See also the description of ALPHA.
SCAL (output) INTEGER
Scaling factor exponent, see ALPHA.
Further Comments
NoneExample
Program Text
NoneProgram Data
NoneProgram Results
None