TRUNCATED_NORMAL_RULE
Quadrature Rule for Truncated Normal Distribution


TRUNCATED_NORMAL_RULE, a C program which computes a quadrature rule for a normal probability density function (PDF), sometimes called a Gaussian distribution, that has been truncated to [A,+oo), (-oo,B] or [A,B].

Licensing:

The computer code and data files made available on this web page are distributed under the GNU LGPL license.

Languages:

TRUNCATED_NORMAL_RULE is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version and a Python version.

Related Data and Programs:

CCN_RULE, a C program which defines one of a set of nested Clenshaw Curtis quadrature rules.

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_RULE, a C program which can compute and print a Gauss-Laguerre quadrature rule for estimating the integral of a function with density exp(-x) over the interval [0,+oo).

LEGENDRE_RULE, a C program which computes a 1D 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.

QUADRULE, a C library which defines 1-dimensional quadrature rules.

TRUNCATED_NORMAL, a C library which works with the truncated normal distribution over [A,B], or [A,+oo) or (-oo,B], returning the probability density function (PDF), the cumulative density function (CDF), the inverse CDF, the mean, the variance, and sample values.

Reference:

  1. Gene Golub, John Welsch,
    Calculation of Gaussian Quadrature Rules,
    Mathematics of Computation,
    Volume 23, Number 106, April 1969, pages 221-230.
  2. Norman Johnson, Samuel Kotz, Narayanaswamy Balakrishnan,
    Continuous Univariate Distributions,
    Second edition,
    Wiley, 1994,
    ISBN: 0471584940,
    LC: QA273.6.J6.

Source Code:

Examples and Tests:

"OPTION0" computes a quadrature rule for the normal distribution, n = 5, mu = 1.0, sigma = 2.0;

"OPTION1" computes a quadrature rule for the lower truncated normal distribution, n = 9, mu = 2.0, sigma = 0.5, a = 0.0;

"OPTION2" computes a quadrature rule for the upper truncated normal distribution, n = 9, mu = 2.0, sigma = 0.5, b = 3.0;

"OPTION3" computes a quadrature rule for the doubly truncated normal distribution, n = 5, mu = 100.0, sigma = 25.0, a = 50.0, b = 100.0;

List of Routines:

You can go up one level to the C source codes.


Last revised on 20 September 2013.