Gaussian quadrature

Dina analisis numeris, **quadrature rule** mangrupa salah sahiji "pendekatan" definite integral tina function, biasana "dinyatakan" salaku jumlah beurat tina nilai fungsi dina titik husus di jero domain  integration.
(Tempo numerical integration keur "quadrature rules" lianna.)
Dina *n*-titik**Gaussian quadrature rule**, dingaranan ieu sanggeus Carl Friedrich Gauss, mangrupa quadrature rule constructed to yield an exact result for polynomials of degree 2*n* &minus; 1, 
by a suitable choice of the *n* points *x**i* and *n* weights *w**i*.
The domain of integration for such a rule is conventionally taken as [-1, 1], 
so the rule is stated as

:\int_{-1}^1 f(x)\,dx \approx \sum_{i=1}^n w_i f(x_i)

It can be shown (see Press, et al., or Stoer and Bulirsch) that the evaluation points are just the roots of a polynomial belong to a class of orthogonal polynomials.

## Rules for the basic problem 
For the integration problem stated above,
the associated polynomials are Legendre polynomials.
Some low-order rules for solving the integration problem are listed below.

Number of points, *n*
Weights, *w**i*
Points, *x**i*

1
2
0

2
1, 1
-&radic;(1/3), &radic;(1/3)

3
5/9, 8/9, 5/9
-&radic;(3/5), 0, &radic;(3/5)

## Change of interval for Gaussian quadrature 
An integral over [*a*, *b*] must be changed into an integral over [-1, 1] before applying the Gaussian quadrature rule.  This change of interval can be done in the following way:

:
\int_a^b f(t)\,dt = \frac{b-a}{2} \int_{-1}^1 f\left(\frac{b-a}{2}x 
+ \frac{a+b}{2}\right)\,dx 

After applying the Gaussian quadrature rule, the following approximation is obtained:

:
\frac{b-a}{2} \sum_{i=1}^n w_i f\left(\frac{b-a}{2}x_i + \frac{a+b}{2}\right)

## Other forms of Gaussian quadrature 
The integration problem can be expressed in a slightly more general way by introducing a weighting function &omega; into the integrand,
and allowing an interval other than [-1, 1].
That is, the problem is to calculate

: \int_a^b \omega(x)\,f(x)\,dx 

for some choices of *a*, *b*, and &omega;.
For *a* = -1, *b* = 1, and &omega;(*x*) = 1, 
the problem is the same as that considered above.
Other choices léad to other integration rules.
Some of these are tabulated below.
Equation numbers are given for Abramowitz and Stegun (A&S).

  **Interval** 
  '*&omega;(*x*)** 
  **Orthogonal polynomials** 
  **A&S*' 

  [-1, 1] 
  1\, 
  Legendre polynomials 
  Eq. 25.4.29 

  [-1, 1] 
   \frac{1}{\sqrt{1 - x^2}}  
  Chebyshev polynomials 
  Eq. 25.4.38 

  [0, &infin;) 
   e^{-x}\,  
  Laguerre polynomials 
  Eq. 25.4.45 

  (-&infin;, &infin;) 
   e^{-x^2}  
  Hermite polynomials 
  Eq. 25.4.46 

### Error estimates 
The error of a Gaussian quadrature rule can be stated as follows (théorem 3.6.24 in Stoer and Bulirsch).
For an integrand which has 2*n* continuous derivatives,

: \int_a^b \omega(x)\,f(x)\,dx - \sum_{i=1}^n w_i\,f(x_i)
 = \frac{f^{(2n)}(\xi)}{(2n)!} \, \|p_n\|^2 

for some &xi; in (*a*, *b*), where *p**n* is the orthogonal polynomial of order *n*.

Stoer and Bulirsch remark that this error estimate is inconvenient in practice,
since it may be difficult to estimate the 2*n*th derivative,
and furthermore the actual error may be much less than a bound established by the derivative.
Another approach is to use two Gaussian quadrature rules of different orders,
and to estimate the error as the difference between the two results. 
For this purpose,
Gauss-Kronrod rules can be useful.

### Gauss-Kronrod rules 
If the interval [*a*, *b*] is subdivided,
the evaluation points of the new subintervals generally do not coincide with the previous evaluation points,
and thus the integrand must be evaluated at every point.
*Gauss-Kronrod rules* are Gaussian quadrature rules that are modified to maké some of the evaluation points coincide after subdivision.
The difference between the results before and after subdivision can be taken as an estimate of the error of approximation,
so such an approach can incréase the accuracy achieved for a given number of function evaluations.
The algorithms in QUADPACK (see below) are based on Gauss-Kronrod rules.

## References 
* Milton Abramowitz and Irene A. Stegun, eds. *Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables*. New York: Dover, 1972. *(See Section 25.4.)*
* Robert Piessens, Elise de Doncker-Kapenga, C.W. Überhuber, D.K. Kahaner. *QUADPACK, A subroutine package for automatic integration*. Springer Verlag, 1983. *(Reference guide for QUADPACK.)*
* William H. Press, Brian P. Flannery, Saul A. Teukolsky, William T. Vetterling. *Numerical Recipes in C*. Cambridge, UK: Cambridge University Press, 1988. *(See Section 4.5.)*
* Josef Stoer and Roland Bulirsch. *Introduction to Numerical Analysis*. New York: Springer-Verlag, 1980. *(See Section 3.6.)*

## External links 
* QUADPACK (part of SLATEC): description http://www.netlib.org/slatec/src/qpdoc.f, source code http://www.netlib.org/slatec/src. QUADPACK is a collection of algorithms, in Fortran, for numerical integration based on Gauss-Kronrod rules. SLATEC (at Netlib) is a large public domain library for numerical computing.