Grid Points Within a 3D Ball

**BALL_GRID**,
a C++ library which
generates a grid of points
over the interior of an arbitrary ball in 3D.

The library allows the user to define an arbitrary ball by choosing its radius and center. The user also choose N, the number of subintervals into which a horizontal radius line will be subdivided. It then returns the 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.

**BALL_GRID** is available in
a C version and
a C++ version and
a FORTRAN90 version and
a MATLAB version and
a Python version.

BALL_INTEGRALS, a C++ library which defines test functions for integration over the interior of the unit ball in 3D.

BALL_MONTE_CARLO, a C++ library which applies a Monte Carlo method to estimate integrals of a function over the interior of the unit ball in 3D;

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

CUBE_FELIPPA_RULE, a C++ library which returns the points and weights of a Felippa quadrature rule over the interior of a cube in 3D.

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

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

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

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

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

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

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

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

SIMPLEX_GRID, a C++ library which generates a regular grid of points over the interior of an arbitrary simplex in M dimensions.

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

SPHERE_GRID, a C++ 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 C++ library which uses longitudes and latitudes to create grids of points, lines, and quadrilaterals on the surface of the unit sphere in 3D.

SPHERE_LLT_GRID, a C++ library which uses longitudes and latitudes to create grids of points, lines, and triangles on the surface of the unit sphere in 3D.

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

TETRAHEDRON_GRID, a C++ library which computes a grid of points over the interior of a tetrahedron in 3D.

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

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

- ball_grid.cpp, the source code.
- ball_grid.sh, compiles the source code.
- ball_grid.hpp, the include file.