Remark on "Algorithm 916: Computing the Faddeyeva and Voigt functions": Efficiency improvements and fortran translation

Research output: Contribution to journalArticlepeer-review

5 Citations (Scopus)

Abstract

This remark describes efficiency improvements to Algorithm 916 [Zaghloul and Ali 2011]. It is shown that the execution time required by the algorithm, when run at its highest accuracy, may be improved by more than a factor of 2. A better accuracy vs efficiency tradeoff scheme is also implemented; this requires the user to supply the number of significant figures desired in the computed values as an extra input argument to the function. Using this tradeoff, it is shown that the efficiency of the algorithm may be further improved significantly while maintaining reasonably accurate and safe results that are free of the pitfalls and complete loss of accuracy seen in other competitive techniques. The current version of the code is provided in Matlab and Scilab in addition to a Fortran translation prepared to meet the needs of real-world problems where very large numbers of function evaluations would require the use of a compiled language. To fulfill this last requirement, a recently proposed reformed version of Humlíček's w4 routine, shown to maintain the claimed accuracy of the algorithm over a wide and fine grid, is implemented in the present Fortran translation for the case of four significant figures. This latter modification assures the reliability of the code in the solution of practical problems requiring numerous evaluation of the function for applications requiring low-accuracy computations (<10-4).

Original languageEnglish
Article number26
JournalACM Transactions on Mathematical Software
Volume42
Issue number3
DOIs
Publication statusPublished - May 1 2016

Keywords

  • Accuracy
  • Faddeyeva function
  • Fortran
  • Function evaluation
  • Matlab
  • Scilab

ASJC Scopus subject areas

  • Software
  • Applied Mathematics

Fingerprint

Dive into the research topics of 'Remark on "Algorithm 916: Computing the Faddeyeva and Voigt functions": Efficiency improvements and fortran translation'. Together they form a unique fingerprint.

Cite this