|
Mesh Density Controls in version 4.0.2 |
Top Previous Next |
|
In FlexPDE version 4.0.2 we have made several changes in the methods of controlling mesh density. The modifications affect primarily 3D mesh generation, but there are some modifications in 2D as well.
In all cases, the implementation of mesh density controls takes a "lesser of..." interpretation of cell sizes. If many independent controls apply to a given locality, the control that produces the smallest cell is the one that takes precedence.
ASPECT
The implementation of the global selector ASPECT has been modified.
In previous versions, 2D cell sizes at explicit boundary joints were restricted to the length of the shortest segment attached to the joint. ASPECT allowed the cells in open spans of thin shells to expand to that limiting aspect ratio. This caused an undulation in cell size in traversing long thin members, such as circular shells.
In version 4.0.2, the 2D cell sizes at explicit boundary joints are allowed to grow to the limiting aspect ratio. This produces more uniform cell distribution in traversing long thin members. It also allows elongated cells radiating from small features into open areas, which can cause tangling if the aspect is too large. This effect can be overridden by NGRID or by MESH_SPACING controls applied to the open region or to the affected boundary leg.
MESH_SPACING
In version 4.0.2, the syntax of the MESH_SPACING (or the equivalent reciprocal MESH_DENSITY command) has been made more consistent with other controls, and has been more fully implemented in 3D.
MESH_SPACING can be used as a global definition, a regional redefinition, or a boundary condition. Depending on the location of the command, it can control the overall mesh density, the density in a specific region, layer or surface, or along a specified sidewall boundary, possibly restricted by layer or surface. Used as a boundary condition, its persistence is the same as other boundary condition statements; that is, a declaration persists across boundary segments until the end of the path, or until explicitly re-declared.
MESH_SPACING commands can use any expression involving spatial coordinates, constants or arrays.
NGRID
The global NGRID selector defines the overall maximum spacing of cells in the domain. Cell sizes must be less than the largest dimension (X, Y or Z) in the domain, divided by NGRID.
Meshing Behavior in Thin Shells
In 2D, mesh generation is well controlled in thin shells, because the thickness of the shell is inferred and ASPECT is applied to this thickness in determining cell size.
In 3D, this control is less well implemented, in that the thickness of shells in open areas is not computed. As a result, it may be necessary to apply manual density controls to prevent cells in thin shells from spanning to great an arc. A good rule of thumb is MESH_SPACING = SQRT(Radius*Thickness). Treatment of thin shells in 3D will be an area of active development in future versions. |