tetrahedron_monte_carlo


tetrahedron_monte_carlo, a Python code which estimates the integral of a function over a general tetrahedron using the Monte Carlo method.

The library makes it relatively easy to compare different methods of producing sample points in the tetrahedron, and to vary the tetrahedron over which integration is carried out.

Licensing:

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

Languages:

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

Related Data and Programs:

python_monte_carlo, a Python code which uses Monte Carlo sampling to estimate areas and integrals.

tetrahedron, a Python code which carries out geometric calculations involving a general tetrahedron, including solid and facial angles, face areas, point containment, distances to a point, circumsphere and insphere, measures of shape quality, centroid, barycentric coordinates, edges and edge lengths, random sampling, and volumes.

tetrahedron_arbq_rule, a Python code which returns quadrature rules, with exactness up to total degree 15, over the interior of a tetrahedron in 3D, by Hong Xiao and Zydrunas Gimbutas.

tetrahedron_integrals, a Python code which returns the exact value of the integral of any monomial over the interior of the unit tetrahedron in 3d.

tetrahedron_jaskowiec_rule, a Python code which returns quadrature rules, with exactness up to total degree 20, over the interior of a tetrahedron in 3D, by Jan Jaskowiec, Natarajan Sukumar.

tetrahedron_witherden_rule, a Python code which returns a symmetric Witherden quadrature rule for the tetrahedron, with exactness up to total degree 10.

Reference:

  1. Claudio Rocchini, Paolo Cignoni,
    Generating Random Points in a Tetrahedron,
    Journal of Graphics Tools,
    Volume 5, Number 4, 2000, pages 9-12.
  2. Reuven Rubinstein,
    Monte Carlo Optimization, Simulation and Sensitivity of Queueing Networks,
    Krieger, 1992,
    ISBN: 0894647644,
    LC: QA298.R79.
  3. Greg Turk,
    Generating Random Points in a Triangle,
    in Graphics Gems I,
    edited by Andrew Glassner,
    AP Professional, 1990,
    ISBN: 0122861663,
    LC: T385.G697

Source Code:


Last revised on 13 April 2023.