The Mesh Generation Control Variables dialog box is used to generate a mesh in SUTRA models. It is displayed by selecting Mesh|Generate Mesh or clicking the Generate mesh button . In the dialog box, the user selects the method used to generate mesh (Fishnet, Irregular, or Gmsh or Geompack++). For fishnet meshes, fishnet-mesh quadrilaterals control the mesh creation. For irregular, Gmsh, and Geompack++ meshes, objects and several control variables control the mesh creation. When the user clicks the OK button, the mesh will be generated. If the control variables have been changed, they can be reset to their default values by clicking the Reset Defaults button.
In brief, the irregular mesh is generated by repeatedly subdividing a model domain into two subdomains using a splitting line. New nodes are added along the splitting line as needed. Except for Element Growth Rate, the control variables determine which points along the edge or a domain are used to split it.
•Element growth rate: When nodes are added along a line and different element sizes are specified for opposite ends of the line, the spacing between nodes increases from the end with the lower spacing toward the end with the higher spacing. The spacing between nodes is increased by a factor of Element growth rate until the spacing is greater than or equal to the higher spacing or the other end of line is reached. The Element growth rate only has an effect on the final mesh if at least two different Mesh element sizes are specified.
•Splitting angle: Each potential end point forms an angle with the nodes before and after it. Ideally, the new line should split that angle evenly. The splitting angle criterion is a measure of how far from that ideal the new angles will be if a new line is created with a certain pair of end points.
•Line length: The Line length criterion is a measure of the length of the potential new line with shorter lines being preferred.
•Symmetry: The Symmetry criterion is a measure of the difference in area between the two new polygons that would be created with the a new line. Pairs of polygons with equal areas are preferred.
•Concave: If a polygon is concave, splitting at nodes that are at concave angles can result in higher quality meshes so with the Concave criterion, preference is given to nodes at concave angles of the polygon.
•Structure: Ideally, every interior node of a two-dimensional mesh would be part of four elements. Nodes on the edge may have smaller ideal numbers of elements if the angle of the edge of the mesh is sufficiently small. The Structure criterion assigns a value based on the number of polygons of which the node is a part compared to its ideal number.
•Node placement error: When new nodes are placed along a line, it may not always be possible to place them at the exact positions calculated using the Element growth rate. The Node placement error is a measure of the discrepancy between the ideal and actual placement of the new nodes. Setting the Node placement error to a non-zero value only rarely improves mesh quality.
Gmsh is an external mesh generation program, you can get it from https://geuz.org/gmsh/. If you use Gmsh, its authors request that you cite it in publications about models in which you used it.
Geompack++ is also an external mesh generation program. It was formerly available from https://members.shaw.ca/bjoe/. Maybe you can find it elsewhere.
After the mesh has been generated, the nodes (and elements) are renumbered to reduce the bandwidth. Two different renumbering algorithms have been included: Cuthill and McKee (1969) and Sloan and Randolph (1983). Usually the Cuthill and McKee algorithm results in a lower bandwidth. Minimizing the bandwidth is especially important when the Direct Solver is in order to reduce the execution time.