NAME

voigt_hwhm - Half width at half maximum of Voigt's function

SYNOPSIS

#include <cerf.h>

double voigt_hwhm ( double sigma, double gamma );

DESCRIPTION

The function voigt_hwhm returns the half width at half maximum of the function voigt.

The function voigt returns Voigt's convolution

voigt(x,sigma,gamma) = integral G(t,sigma) L(x-t,gamma) dt

of a Gaussian

G(x,sigma) = 1/sqrt(2*pi)/|sigma| * exp(-x^2/2/sigma^2)

and a Lorentzian

L(x,gamma) = |gamma| / pi / ( x^2 + gamma^2 ),

with the integral extending from -infinity to +infinity.

ACCURACY

Errors are given in units of eps = 2^-53 = 1.1e-16, as relative deviations from high-precision reference values.

For 0.25 <= gamma/sigma < 16, voigt_hwhm uses a piecewise Chebyshev approximation generated by ppapp, whose error analysis (Wuttke and Kleinsorge, see REFERENCES) bounds the relative error by 2.2 eps; the largest deviation found at the 576 generated test points in this range is 1.8 eps. Below and above that range, series expansions around the Gaussian and the Lorentzian limit are used, for which no theoretical bound exists yet; the relative error was found below 2.0 eps at 1152 generated test points for 0.03 <= gamma/sigma < 128 and at random points for 1e-8 < gamma/sigma < 1e8. Rescaling both arguments by a common factor adds at most one rounding.

SEE ALSO

voigt(3)

Homepage: https://jugit.fz-juelich.de/mlz/lib/cerf

REFERENCES

Joachim Wuttke, "Power series for the half width of the Voigt function, rederived", J. Numer. Anal. Approx. Theo. 54, 345-356 (2025), https://doi.org/10.33993/jnaat542-1640, derives the series expansions used for small and large gamma/sigma.

Joachim Wuttke and Alexander Kleinsorge, "Algorithm 1062: Code generation for piecewise Chebyshev approximation", ACM Trans. Math. Softw. 52, 13 (2026), https://doi.org/10.1145/3805698, explains the piecewise polynomial approximation used for intermediate gamma/sigma and derives its error bound.

AUTHOR

Joachim Wuttke, Forschungszentrum Juelich.

CONTACT

Please report bugs to the maintainer:

Joachim Wuttke <j.wuttke@fz-juelich.de>

COPYING

Copyright (c) 2018-25 Forschungszentrum Juelich GmbH

Software: MIT License.

This documentation: Creative Commons Attribution Share Alike.