Optimized evaluation of a large sum of functions using a three-grid approach
Introduction
The efficient evaluation of a sum of numerous similar functions on a set of grid points covering a wide domain is a challenging computational problem arising in many areas of physics and related branches of science. In particular, for many spectroscopic methods in physics and chemistry the spectra are frequently composed of a superposition of numerous peaks, i.e. the signal (count rate, intensity, absorption, …) measured as a function of an independent variable (time, wavelength, energy, angle, …) can be modelled by summing a sequence of lines. Often the width of the individual lines is small compared to the region of interest, hence the functions to be summed up vary rapidly only in a small part (i.e. the line center region) and are smooth otherwise (line wings). More specifically we are interested in an efficient algorithm to sum functions varying strongly only in a small part of the entire interval. (We assume that a closed analytical expression for the sum is not available.)
Clearly, a “brute force” computation of such sums can be prohibitive if the number of grid points and the number of summands is large. For example, modelling of molecular spectra in the infrared and microwave (to be discussed in detail in Section 3) can easily require summation of thousands of lines on a million grid points even for small spectral intervals, and a variety of approaches has been developed to tackle the problem. It would be tempting to evaluate the line centers and wings on appropriate fine and coarse grids, respectively, to interpolate the wings to the fine grid, and accumulate the sum. However, this requires one or two extra calls of an interpolation routine for every line. At first glance, summing the line centers (evaluated on a fine grid) and the wings (evaluated on a coarse grid) separately and doing the interpolation only once before adding the accumulated wing contributions to the sum of line centers appears to be a better solution. However, interpolation of the sum of line wings is problematic because of the discontinuities at the center-wing transition.
The problem of interpolation of discontinuous data could be avoided by an appropriate decomposition of the function in slowly varying continuous and rapidly varying subfunctions, each to be evaluated on its own optimized grid. Clough and Kneizys [1] have used a decomposition of the Lorentz function into three or four subfunctions; however, the algorithm of subfunction construction cannot readily be used for other, e.g., asymmetric, functions. Sparks [2], Meadows and Crisp [3], and Quine and Drummond [4] use a series of grids with resolution increased in each step and extension reduced; however, the overhead due to the need to control a series of loops can compensate the gain except for large number of grids.
In this paper we present an optimized algorithm using three grids and a function decomposition largely independent of the function's properties, i.e. applicable to a large variety of functions. The algorithm is developed in the following Section 2 and its performance is demonstrated in Section 3. A summary and conclusions are given in Section 4. Some mathematical details concerning the line profile functions are reviewed in the appendices.
Section snippets
Problem formulation
The problem is the efficient computation of a superposition of similar functions over a large region of its independent variable x, Frequently the functions vary rapidly only in a small region of the entire domain, but the evaluation of covers a large x-interval where the individual is mostly smooth. However, accurate modelling of the function sum requires appropriate sampling of the x-grid, i.e. the grid interval size δx has to be
Application to line-by-line atmospheric radiative transfer modelling
The widespread use of high resolution (microwave, infrared, to ultraviolet) spectrometers has made the simulation and analysis of accurate spectra an important task. Computational efficiency is of primary importance for the operational data processing of numerous sensors aboard the current fleet of meteorological and environmental satellites. Modelling of the radiative transfer through the atmosphere is an essential element thereof. Likewise, high resolution atmospheric radiative transfer
Conclusions
An efficient algorithm for rapid evaluation of a sum of numerous similar and mostly smooth functions over a wide range of x grid points has been developed. This algorithm is based on a decomposition of the function in fast, medium, and slowly varying contributions that are evaluated on appropriate dense and coarse grids. The individual functions were assumed to vary rapidly only in a small part of the entire domain; no further assumptions, e.g., on symmetry, are required. For the three-grid
References (27)
Efficient line-by-line calculation of absorption coefficients to high numerical accuracy
J. Quant. Spectrosc. Radiat. Transfer
(1997)- et al.
GENSPECT: a line-by-line code with selectable interpolation error tolerance
J. Quant. Spectrosc. Radiat. Transfer
(2002) Spectrum line profiles: The Voigt function
J. Quant. Spectrosc. Radiat. Transfer
(1967)- et al.
Theoretical line shape for H2O vapor: Application to the continuum
- et al.
The HITRAN 2004 molecular spectroscopic database
J. Quant. Spectrosc. Radiat. Transfer
(2005) - et al.
The 1997 spectroscopic GEISA databank
J. Quant. Spectrosc. Radiat. Transfer
(1999) - et al.
Submillimeter, millimeter, and microwave spectral line catalog
J. Quant. Spectrosc. Radiat. Transfer
(1998) Line-by-line computation of the atmospheric absorption spectrum using the decomposed Voigt line shape
J. Quant. Spectrosc. Radiat. Transfer
(1992)Effective interpolation technique for line-by-line calculation of radiation absorption in gases
J. Quant. Spectrosc. Radiat. Transfer
(1995)- et al.
Rapid computation of the Voigt and complex error functions
J. Quant. Spectrosc. Radiat. Transfer
(1978)