Gauss–Laguerre Quadrature
   HOME

TheInfoList



OR:

In
numerical analysis Numerical analysis is the study of algorithms that use numerical approximation (as opposed to symbolic computation, symbolic manipulations) for the problems of mathematical analysis (as distinguished from discrete mathematics). It is the study of ...
Gauss–Laguerre quadrature (named after
Carl Friedrich Gauss Johann Carl Friedrich Gauss (; ; ; 30 April 177723 February 1855) was a German mathematician, astronomer, geodesist, and physicist, who contributed to many fields in mathematics and science. He was director of the Göttingen Observatory and ...
and
Edmond Laguerre Edmond Nicolas Laguerre (9 April 1834, Bar-le-Duc – 14 August 1886, Bar-le-Duc) was a French mathematician and a member of the Académie des sciences (1885). His main works were in the areas of geometry and complex analysis. He also investigate ...
) is an extension of the
Gaussian quadrature In numerical analysis, an -point Gaussian quadrature rule, named after Carl Friedrich Gauss, is a quadrature rule constructed to yield an exact result for polynomials of degree or less by a suitable choice of the nodes and weights for . Th ...
method for approximating the value of integrals of the following kind: :\int_^ e^ f(x)\,dx. In this case :\int_^ e^ f(x)\,dx \approx \sum_^n w_i f(x_i) where ''x''''i'' is the ''i''-th root of
Laguerre polynomial In mathematics, the Laguerre polynomials, named after Edmond Laguerre (1834–1886), are nontrivial solutions of Laguerre's differential equation: xy'' + (1 - x)y' + ny = 0,\ y = y(x) which is a second-order linear differential equation. Thi ...
''L''''n''(''x'') and the weight ''w''''i'' is given byEquation 25.4.45 in 10th reprint with corrections. :w_i = \frac . The following Python code with the
SymPy SymPy is an open-source Python library for symbolic computation. It provides computer algebra capabilities either as a standalone application, as a library to other applications, or live on the web as SymPy Live or SymPy Gamma. SymPy is simple ...
library will allow for calculation of the values of x_i and w_i to 20 digits of precision: from sympy import * def lag_weights_roots(n): x = Symbol("x") roots = Poly(laguerre(n, x)).all_roots() x_i = t.evalf(20) for rt in roots w_i = rt / ((n + 1) * laguerre(n + 1, rt)) ** 2).evalf(20) for rt in roots return x_i, w_i print(lag_weights_roots(5))


For more general functions

To integrate the function f we apply the following transformation :\int_^f(x)\,dx=\int_^f(x)e^e^\,dx=\int_^g(x)e^\,dx where g\left(x\right) := e^ f\left(x\right). For the last integral one then uses Gauss-Laguerre quadrature. Note, that while this approach works from an analytical perspective, it is not always numerically stable.


Generalized Gauss–Laguerre quadrature

More generally, one can also consider integrands that have a known x^\alpha power-law singularity at ''x''=0, for some real number \alpha > -1, leading to integrals of the form: :\int_^ x^\alpha e^ f(x)\,dx. In this case, the weights are given in terms of the generalized Laguerre polynomials: :w_i = \frac \,, where x_i are the roots of L_n^. This allows one to efficiently evaluate such integrals for polynomial or smooth ''f''(''x'') even when α is not an integer.


References


Further reading

* * * *


External links


Matlab routine for Gauss–Laguerre quadrature


free software Free software, libre software, libreware sometimes known as freedom-respecting software is computer software distributed open-source license, under terms that allow users to run the software for any purpose as well as to study, change, distribut ...
in Matlab, C++, and Fortran. {{DEFAULTSORT:Gauss-Laguerre quadrature Numerical integration