ERFC
Last updated 3 September 2004
The following is a list of 12 routines I collected that compute the complementary error function. I used them as a kind of benchmark to test compilers. The routines represent a variety of algorithms to compute the complementary error function and it is just interesting to see and compare how different compilers behave on these pieces of code. All routines are written in fortran 90, either transformed from fortran 77 (or even older), or translated from c.
If you have more routines that I could add, please let me know!
As far as I can tell I can redistribute these pieces of code, but if I do happen to violate something, please let me know and the code it concerns will be withdrawn.
Beware - I do not guarantee that the routines provide correct or accurate results!
erfc01.f90 | Algorithm according to W.J. Cody, Mathematics of Computation 22 (1969), 631-637. Taken from CERN library. |
---|---|
erfc02.f90 | The same as above but slightly differently programmed (which may result in a slightly different performance). |
erfc03.f90 | Source unknown. |
erfc04.f90 | Taken from SUN's FDLIBM version 5.2 and translated from c to fortran. |
erfc05.f90 | Source unknown. |
erfc06.f90 | Algorithm according to M. Mori, A Method for Evaluation of the Error Function of Real and Complex Variable with High Relative Accuracy, Publ. RIMS, Kyoto Univ. Vol. 19, 1983. |
erfc07.f90 | The same as above but slightly differently programmed (which may result in a slightly different performance). |
erfc08.f90 | Also by M. Mori, AUG. 30 1990 V.1-2 |
erfc09.f90 | Algorithm according to Takuya OOURA (1996). Translated from c to fortran. |
erfc10.f90 | Code from Naval Surface Warfare Center, Dahlgren, Virginia. |
erfc11.f90 | Algorithm from GNU scientific library 0.6, translated from c to fortran. |
erfc12.f90 | Code from FNLIB/SLATEC, July 1977 edition. W. Fullerton, C3, Los Alamos Scientific Lab. |