pyramid_rule


pyramid_rule, a Fortran90 code which generates a conical product quadrature rule over the interior of the unit pyramid in 3D.

The quadrature rules generated are all examples of conical product rules, and involve a kind of direct product of the form:

Legendre rule in X * Legendre rule in Y * Jacobi rule in Z
where the Jacobi rule includes a factor of (1-Z)^2.

The integration region is:

       - ( 1 - Z ) <= X <= 1 - Z
       - ( 1 - Z ) <= Y <= 1 - Z
                 0 <= Z <= 1.
       
When Z is zero, the integration region is a square lying in the (X,Y) plane, centered at (0,0,0) with "radius" 1. As Z increases to 1, the radius of the square diminishes, and when Z reaches 1, the square has contracted to the single point (0,0,1).

Usage:

pyramid_rule legendre_order jacobi_order filename
where

Licensing:

The information on this web page is distributed under the MIT license.

Languages:

pyramid_rule is available in a C version and a C++ version and a Fortran90 version and a MATLAB version and an Octave versionand a Python version.

Related Data and Programs:

pyramid_rule_test

f90_rule, a Fortran90 code which computes a quadrature rule which estimates the integral of a function f(x), which might be defined over a one dimensional region (a line) or more complex shapes such as a circle, a triangle, a quadrilateral, a polygon, or a higher dimensional region, and which might include an associated weight function w(x).

Reference:

  1. Carlos Felippa,
    A compendium of FEM integration formulas for symbolic work,
    Engineering Computation,
    Volume 21, Number 8, 2004, pages 867-890.
  2. Arthur Stroud,
    Approximate Calculation of Multiple Integrals,
    Prentice Hall, 1971,
    ISBN: 0130438936,
    LC: QA311.S85.

Source Code:


Last revised on 20 August 2020.