Home > Research > Publications & Outputs > lintegrate: A C/Python numerical integration li...

Links

Text available via DOI:

View graph of relations

lintegrate: A C/Python numerical integration library for working in log-space

Research output: Contribution to Journal/MagazineJournal articlepeer-review

Published
Article number4231
<mark>Journal publication date</mark>25/05/2022
<mark>Journal</mark>Journal of Open Source Software
Issue number73
Volume7
Number of pages2
Publication StatusPublished
<mark>Original language</mark>English

Abstract

There are many situations in which the integral of a function must be evaluated numerically between given limits. For C codes, there is a range of numerical integration (sometimes called numerical quadrature) functions provided within the GNU Scientific Library (GSL) (Galassi et al., 2009). However, in situations where the integrand has an extremely large dynamic range these GSL functions can fail due to numerical instability. One way to get around numerical instability issues is to work with the natural logarithm of the function. The logarithm of the function cannot simply be integrated as this will not produce the logarithm of the integral
of the original function. lintegrate provides a range of C integration functions, equivalent to functions in GSL, that allow the integration of a function when only working with the natural logarithm of the function is computationally practical. The result that is returned is the natural logarithm of the integral of the underlying function. lintegrate also provides a Python (vanRossum, 1995) module for accessing some of these functions in Python.