LAGUERRE_RULE
Gauss-Laguerre Quadrature Rules
LAGUERRE_RULE
is a C program which
generates a specific Gauss-Laguerre quadrature rule, based on user input.
The rule is written to three files for easy use as input
to other programs.
The Gauss-Laguerre 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 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 Gauss-Hermite quadrature rule.
LAGUERRE_EXACTNESS,
a C program which
checks the polynomial exactness
of a Gauss-Laguerre 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 Gauss-Legendre 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 Gauss-Patterson 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: 0-486-61272-4,
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 399-415.
-
Jaroslav Kautsky, Sylvan Elhay,
Calculation of the Weights of Interpolatory Quadratures,
Numerische Mathematik,
Volume 40, 1982, pages 407-422.
-
Roger Martin, James Wilkinson,
The Implicit QL Algorithm,
Numerische Mathematik,
Volume 12, Number 5, December 1968, pages 377-383.
-
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 285-294.
-
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.