DISTMESH_3D
A Simple Mesh Generator in MATLAB


DISTMESH_3D is a MATLAB program which generates and manipulates unstructured meshes in 3D, by Per-Olof Persson.

The code is relatively simple, and the user is able to define a variety of geometric shapes, and desired mesh densities.

DISTMESH_3D is, pretty much, simply the subset of Persson and Strang's DISTMESH package that works on 3D problems.

Licensing:

DISTMESH is Copyright (C) 2004 Per-Olof Persson.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

If you use DISTMESH in any program or publication, please acknowledge its authors by citing the reference.

Languages:

DISTMESH_3D is available in a MATLAB version.

Related Programs:

CVT_TET_MESH, a FORTRAN90 program which uses CVT methods to compute a tet mesh in a region.

DISTMESH, a MATLAB library which creates meshes, for 2D or 3D data.

GEOMPACK, a MATLAB library which can compute the tet mesh for a set of 3D points, as well as the adjacency information.

TABLE_TET_MESH, a FORTRAN90 program which can compute the tet mesh for a given set of points.

TET_MESH, a MATLAB library which is useful for tet mesh calculations.

TET_MESH_DISPLAY, a MATLAB program which can read in the node and tetra files defining a tet mesh and display a wireframe image.

TET_MESH_DISPLAY_OPENGL, a C++ program which can read in the node and tetra files defining a tet mesh and display a wireframe image using OPEN_GL.

TET_MESH_L2Q, a MATLAB program which converts a linear to a quadratic tet mesh.

TET_MESH_ORDER4, a data directory which contains a description and examples of a tet mesh using order 4 elements.

TET_MESH_ORDER10, a data directory which contains a description and examples of a tet mesh using order 10 elements.

TET_MESH_Q2L, a MATLAB program which converts a quadratic to a linear tet mesh.

TET_MESH_QUALITY, is a MATLAB program which computes the quality of a tet mesh.

TET_MESH_REFINE, a MATLAB program which can refine a tet mesh.

TET_MESH_TET_NEIGHBORS, a MATLAB program which computes the tetrahedral adjacency information.

Author:

Per-Olof Persson

Reference:

  1. http://math.mit.edu/~persson/
    Per-Olof Persson's web site.
  2. Per-Olof Persson, Gilbert Strang,
    A Simple Mesh Generator in MATLAB,
    SIAM Review,
    Volume 46, Number 2, June 2004, pages 329-345.

Source Code:

Examples and Tests:

Problem #1 is the 3x1x1 channel, using 584 nodes and 2568 elements.

Problem #2 is the vertical cylinder, using 588 nodes and 2373 elements.

Problem #3 is the unit cube, using 224 nodes and 834 elements.

Problem #4 is the unit sphere using 595 nodes and 2782 elements.

Problem #5 is the cylinder with a spherical hole using 165 nodes and 531 elements.

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


Last revised on 31 July 2009.