LAGUERRE_RULE
GaussLaguerre Quadrature Rules
LAGUERRE_RULE
is a C program which
generates a specific GaussLaguerre quadrature rule, based on user input.
The rule is written to three files for easy use as input
to other programs.
The GaussLaguerre quadrature rule is used as follows:
Integral ( a <= x < +oo ) exp (  b * ( x  a ) ) f(x) dx
is to be approximated by
Sum ( 1 <= i <= order ) w(i) * f(x(i))
Usage:
laguerre_rule order a b filename
where

order is the number of points in the quadrature rule.

a is the left endpoint. Typically this is 0.

b is the scale factor. Typically this is 1.

filename specifies the output filenames:
filename_w.txt,
filename_x.txt, and filename_r.txt,
containing the weights, abscissas, and interval limits.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
LAGUERRE_RULE is available in
a C version and
a C++ version and
a FORTRAN77 version and
a FORTRAN90 version and
a MATLAB version.
Related Data and Programs:
CCN_RULE,
a C program which
defines a nested Clenshaw Curtis quadrature rule.
CLENSHAW_CURTIS_RULE,
a C program which
defines a Clenshaw Curtis quadrature rule.
HERMITE_RULE,
a C program which
can compute and print a GaussHermite quadrature rule.
LAGUERRE_EXACTNESS,
a C program which
checks the polynomial exactness
of a GaussLaguerre quadrature rule.
LAGUERRE_POLYNOMIAL,
a C library which
evaluates the Laguerre polynomial, the generalized Laguerre polynomial,
and the Laguerre function.
LAGUERRE_TEST_INT,
a C library which
defines test integrands for integration over [A,+oo).
LEGENDRE_RULE,
a C program which
computes a GaussLegendre quadrature rule.
LINE_FELIPPA_RULE,
a C library which
returns the points and weights of a Felippa quadrature rule
over the interior of a line segment in 1D.
PATTERSON_RULE,
a C program which
computes a GaussPatterson quadrature rule.
QUADRATURE_RULES_LAGUERRE,
a dataset directory which
contains triples of files defining standard Laguerre
quadrature rules.
TRUNCATED_NORMAL_RULE,
a C program which
computes a quadrature rule for a normal probability density function (PDF),
also called a Gaussian distribution, that has been
truncated to [A,+oo), (oo,B] or [A,B].
Reference:

Milton Abramowitz, Irene Stegun,
Handbook of Mathematical Functions,
National Bureau of Standards, 1964,
ISBN: 0486612724,
LC: QA47.A34.

Philip Davis, Philip Rabinowitz,
Methods of Numerical Integration,
Second Edition,
Dover, 2007,
ISBN: 0486453391,
LC: QA299.3.D28.

Sylvan Elhay, Jaroslav Kautsky,
Algorithm 655:
IQPACK,
FORTRAN Subroutines for the Weights of Interpolatory Quadrature,
ACM Transactions on Mathematical Software,
Volume 13, Number 4, December 1987, pages 399415.

Jaroslav Kautsky, Sylvan Elhay,
Calculation of the Weights of Interpolatory Quadratures,
Numerische Mathematik,
Volume 40, 1982, pages 407422.

Roger Martin, James Wilkinson,
The Implicit QL Algorithm,
Numerische Mathematik,
Volume 12, Number 5, December 1968, pages 377383.

Philip Rabinowitz, George Weiss,
Tables of Abscissas and Weights for Numerical Evaluation of Integrals
of the form $\int_0^{\infty} exp(x) x^n f(x) dx$,
Mathematical Tables and Other Aids to Computation,
Volume 13, Number 68, October 1959, pages 285294.

Arthur Stroud, Don Secrest,
Gaussian Quadrature Formulas,
Prentice Hall, 1966,
LC: QA299.4G3S7.
Source Code:
Examples and Tests:

lag_o4_r.txt,
the region file created by the command
laguerre_rule 4 0.0 1.0 lag_o4

lag_o4_w.txt,
the weight file created by the command
laguerre_rule 4 0.0 1.0 lag_o4

lag_o4_x.txt,
the abscissa file created by the command
laguerre_rule 4 0.0 1.0 lag_o4
List of Routines:

MAIN is the main program for LAGUERRE_RULE.

CDGQF computes a Gauss quadrature formula with default A, B and simple knots.

CGQF computes knots and weights of a Gauss quadrature formula.

CLASS_MATRIX computes the Jacobi matrix for a quadrature rule.

IMTQLX diagonalizes a symmetric tridiagonal matrix.

PARCHK checks parameters ALPHA and BETA for classical weight functions.

R8_ABS returns the absolute value of an R8.

R8_EPSILON returns the R8 roundoff unit.

R8_HUGE returns a "huge" R8.

R8_SIGN returns the sign of an R8.

R8MAT_WRITE writes an R8MAT file with no header.

RULE_WRITE writes a quadrature rule to three files.

SCQF scales a quadrature formula to a nonstandard interval.

SGQF computes knots and weights of a Gauss Quadrature formula.

TIMESTAMP prints the current YMDHMS date as a time stamp.
You can go up one level to
the C source codes.
Last revised on 15 May 2014.