Tetrahedral Grid of Points

**TETRAHEDRON_GRID**
is a MATLAB library which
generates a grid of points
over the interior of a tetrahedron in 3D.

Starting with any 4 points A, B, C and D that define a tetrahedron, we can divide each edge of the tetrahedron into N subintervals, and create a tetrahedral grid. This defines ((N+1)*(N+2)*(N+3))/6 points that lie on the intersections of grid lines.

The library includes a routine which allows the user to pick an arbitrary tetrahedron and an arbitrary number of subdivisions. It then returns the tetrahedral gridpoints defined by that choice.

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

**TETRAHEDRON_GRID** 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.

BALL_GRID, a MATLAB library which computes a grid of points over the interior of a ball in 3D.

CIRCLE_ARC_GRID, a MATLAB program which computes points equally spaced along a circular arc;

CUBE_GRID, a MATLAB library which computes a grid of points over the interior of a cube in 3D.

DISK_GRID, a MATLAB library which computes a grid of points over the interior of a disk in 2D.

ELLIPSE_GRID, a MATLAB library which computes a grid of points over the interior of an ellipse in 2D.

ELLIPSOID_GRID, a MATLAB library which computes a grid of points over the interior of an ellipsoid in 3D.

HYPERCUBE_GRID, a MATLAB library which computes a grid of points over the interior of a hypercube in M dimensions.

LINE_GRID, a MATLAB library which computes a grid of points over the interior of a line segment in 1D.

POLYGON_GRID, a MATLAB library which generates a grid of points over the interior of a polygon in 2D.

PYRAMID_GRID, a MATLAB library which computes a grid of points over the interior of the unit pyramid in 3D;

SIMPLEX_GRID, a MATLAB library which generates a grid of points over the interior of a simplex in M dimensions.

SPHERE_FIBONACCI_GRID, a MATLAB library which uses a Fibonacci spiral to create a grid of points on the surface of the unit sphere in 3D.

SPHERE_GRID, a MATLAB library which provides a number of ways of generating grids of points, or of points and lines, or of points and lines and faces, on the surface of the unit sphere in 3D.

SPHERE_LLQ_GRID, a MATLAB library which uses longitudes and latitudes to create grids of points, lines, and quadrilaterals on the surface of the unit sphere in 3D.

SQUARE_GRID, a MATLAB library which computes a grid of points over the interior of a square in 2D.

TRIANGLE_GRID, a MATLAB library which computes a grid of points over the interior of a triangle in 2D.

WEDGE_GRID, a MATLAB library which computes a grid of points over the interior of the unit wedge in 3D.

- r83vec_print_part.m, prints part of an R83VEC.
- r8mat_print.m, prints an R8MAT.
- r8mat_print_some.m, prints some of an R8MAT.
- r8mat_write.m, writes an R8MAT to a file.
- timestamp.m, prints the current YMDHMS date as a time stamp.
- tetrahedron_grid.m, computes points on a tetrahedral grid.
- tetrahedron_grid_count.m, counts grid points inside a tetrahedron.
- tetrahedron_grid_display.m, displays grid points inside a tetrahedron.

- tetrahedron_grid_test.m, calls all the tests.
- tetrahedron_grid_test_output.txt, the output file.
- tetrahedron_grid_test01.m, sets up a grid of 286 points, generated by subdividing by 10 each side of the (0,0,0), (1,0,0), (0,1,0), (0,0,1) tetrahedron.
- tetrahedron_grid_test01.xyz, a grid of 286 points, generated by subdividing by 10 each side of the (0,0,0), (1,0,0), (0,1,0) and (0,0,1) tetrahedron.
- tetrahedron_grid_test01.png, an image of the points.

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