MATLAB 2D higher-order triangle mesh generator and Lagrange interpolation function generator

Published: 30 November 2018| Version 2 | DOI: 10.17632/gr688jntht.2
Contributors:
Smitha T V,
Dr Nagaraja K V,
Sarada Jayan

Description

We propose an automated higher-order (HO) unstructured triangular mesh generation of the two dimensional domain. The proposed HO scheme uses the nodal relations obtained from subparametric transformations with parabolic arcs, especially for curved geometry. This approach is shown to drastically simplify the computational complexities involved in the HO finite element formulation of any partial differential equation (PDE). The prospective generalised MATLAB 2D mesh generation codes, HOmesh2d for the regular domain and CurvedHOmesh2d for a circular domain are based on the MATLAB mesh generator distmesh of Persson and Strang. As an input, the code takes a signed distance function of the domain geometry and the desired order for the triangular elements and as outputs, the code generates an HO triangular mesh with element connectivity, node coordinates, and boundary data (edges and nodes). Also, the MATLAB function Gen_LagSF.m generates and displays the generalised Lagrange coefficients and interpolation functions for triangular elements up to octic order in anticlockwise sequence for the nodes distribution used in the higher-order unstructured triangular mesh generation. The use of higher order elements from the proposed mesh generator is shown to increase the accuracy and efficiency of the numerical results of PDE by finite element method. To cite: T. V. Smitha, K. V. Nagaraja, J. Sarada, MATLAB 2D Higher-order triangle mesh generator with fi nite element applications using subparametric transformations, Adv. Eng. Software 115 (2018) 327-356.

Files

Steps to reproduce

It should be noted that [p,t,b] is from the distmesh tool developed by Persson and Strang in "Persson P-O, Strang G. A simple mesh generator in MATLAB. SIAM Rev 2004;46(2):329–45." Users must ensure that the MATLAB path includes the directory where distmesh is installed.