http://nn-online.org

25 February 2017

info@nn-online.org

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.

http://nn-online.org 25 February 2017 info@nn-online.org