This function evaluates Carlson's incomplete elliptic integral of the second kind RD(X, Y, Z).
ELRD — Function value. (Output)
X — First
variable of the incomplete elliptic integral. (Input)
It must be
nonnegative.
Y — Second
variable of the incomplete elliptic integral. (Input)
It must be
nonnegative.
Z — Third
variable of the incomplete elliptic integral. (Input)
It must be
positive.
Generic: ELRD (X, Y, Z)
Specific: The specific interface names are S_ELRD and D_ELRD.
Single: ELRD (X, Y, Z)
Double: The double precision name is DELRD.
The Carlson's complete elliptic integral of the second kind is defined to be
The arguments must be nonnegative and less than or equal to
0.69(−ln ε)1∕9
s−2∕3 where
ε = AMACH(4)
is the machine precision, s = AMACH(1)
is the smallest representable positive number. Furthermore, x + y
and z must be greater than max{3s2∕3, 3/b2∕3}, where b = AMACH(2)
is the largest floating-point number. If any of these conditions are false, then
ELRD
is set to b.
The function ELRD is based on the code by Carlson and Notis (1981) and the work of Carlson (1979).
In this example, RD(0, 2, 1) is computed and printed.
USE ELRD_INT
USE UMACH_INT
IMPLICIT NONE
! Declare variables
INTEGER NOUT
REAL VALUE, X, Y, Z
! Compute
X = 0.0
Y = 2.0
Z = 1.0
VALUE = ELRD(X, Y, Z)
! Print the results
CALL UMACH (2, NOUT)
WRITE (NOUT,99999) X, Y, Z, VALUE
99999 FORMAT (' ELRD(', F6.3, ',', F6.3, ',', F6.3, ') = ', F6.3)
END
ELRD( 0.000, 2.000, 1.000) = 1.797
PHONE: 713.784.3131 FAX:713.781.9260 |