Te. Hull et al., IMPLEMENTING COMPLEX ELEMENTARY-FUNCTIONS USING EXCEPTION HANDLING, ACM transactions on mathematical software, 20(2), 1994, pp. 215-244
Algorithms are developed for reliable and accurate evaluations of the
complex elementary functions required in FORTRAN 77 and FORTRAN 90, na
mely, cabs, csqrt, cexp, clog, csin, and ccos. The algorithms are pres
ented in a pseudocode that has a convenient exception-handling facilit
y. A tight error bound is derived for each algorithm. Corresponding FO
RTRAN programs for an IEEE environment have also been developed to ill
ustrate the practicality of the algorithms, and these programs have be
en tested very carefully to help confirm the correctness of the algori
thms and their error bounds. The results of these tests are included i
n the paper, but the FORTRAN programs are not; the programs are availa
ble from Fairgrieve (tff@cs.toronto.edu).