MESH2D: Delaunay-based unstructured mesh-generation

Generate unstructured meshes for general two-dimensional geometries.
25,2K download
Aggiornato 2 mar 2024
MESH2D is an unstructured mesh-generator for two-dimensional polygonal geometries, providing a range of relatively simple, yet effective two-dimensional meshing algorithms. MESH2D includes variations on the "classical" Delaunay refinement technique, a new "Frontal"-Delaunay refinement scheme, a non-linear mesh optimisation method, and auxiliary mesh and geometry pre- and post-processing facilities.
Algorithms implemented in MESH2D are "provably-good" - ensuring convergence, geometrical and topological correctness, and providing guarantees on algorithm termination and worst-case element quality bounds. Support for user-defined mesh-spacing functions and multi-par" geometry definitions is also provided, allowing MESH2D to handle a wide range of complex domain types and user-defined constraints. MESH2D typically generates very high-quality output, appropriate for a variety of finite-volume/element type applications.
MESH2D is a simplified version of my JIGSAW mesh-generation algorithm (a C++ code). MESH2D aims to provide a straightforward implementation of these Delaunay-based triangulation and mesh optimisation techniques.
See MESH2D on GitHub for additional information and references.
See TRIDEMO to get started with a set of example problems:
tridemo( 0); % a very simple example to get everything started.
tridemo( 1); % investigate the impact of the "radius-edge" threshold.
tridemo( 2); % Frontal-Delaunay vs. Delaunay-refinement refinement.
tridemo( 3); % explore impact of user-defined mesh-size constraints.
tridemo( 4); % explore impact of "hill-climbing" mesh optimisations.
tridemo( 5); % assemble triangulations for "multi-part" geometries.
tridemo( 6); % assemble triangulations with "internal" constraints.
tridemo( 7); % investigate the use of "quadtree"-type refinement.
tridemo( 8); % explore use of custom, user-defined mesh-size functions.
tridemo( 9); % larger-scale problem, mesh refinement + optimisation.
tridemo(10); % medium-scale problem, mesh refinement + optimisation.
A call to initmsh() should be included in MESH2D scripts to ensure the path variable includes all MESH2D sub-directories.

Cita come

D. Engwirda, Locally-optimal Delaunay-refinement and optimisation-based mesh generation, Ph.D. Thesis, School of Mathematics and Statistics, The University of Sydney, http://hdl.handle.net/2123/13148, 2014.

D. Engwirda, Unstructured mesh methods for the Navier-Stokes equations, Honours Thesis, School of Aerospace, Mechanical and Mechatronic Engineering, The University of Sydney, 2005.

Compatibilità della release di MATLAB
Creato con R2018b
Compatibile con qualsiasi release
Compatibilità della piattaforma
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Le versioni che utilizzano il ramo predefinito di GitHub non possono essere scaricate

Versione Pubblicato Note della release
3.1.0.2

Improve support + bugfixes for R2025

3.1.0.1

Website updates.

3.1.0.0

Updates to description/references.
Improved support for OCTAVE.

3.0.3.0

Updates to the underlying AABB-Tree package.

3.0.2.0

Updates to 3.0.2: added TRIDIV2, improved REFINE2 / SMOOTH2, new examples in TRIDEMO.

3.0.1.0

Update project title.

3.0.0.0

Major updates all-round for MESH2D - 3.0.0.

1.0.0.0

Per visualizzare o segnalare problemi su questo componente aggiuntivo di GitHub, visita GitHub Repository.
Per visualizzare o segnalare problemi su questo componente aggiuntivo di GitHub, visita GitHub Repository.