david/Smoothed fitted logically quadrilateral grids
![circled square grid][1]
An approach to creation of logically quadrilateral grids for non-rectangular regions was recently proposed in . On the other hand, a large body of work exists on the generation of such grids for very general regions by the solution of elliptic PDEs (e.g., Winslow’s algorithm). Recent advances in this area seek to provide more regular grids (see, e.g. ).
The idea of this project is to combine these techniques in order to develop smooth fitted logically quadrilateral grids for general 2D domains. The idea is that these grids will be more regular than those generated by Winslow’s algorithm and smoother than those generated by Calhoun’s mappings.
To fit the grid to arbitrary interfaces, we will fix some of the grid points along the interface and use the elliptic smoothing. This idea was already formulated in , but does not appear to have received much attention.
Villamizar and coauthors have come up with some modifications to the Winslow algorithm that are potentially of great use for hyperbolic PDEs. In , a method is proposed to achieve more equally spaced grid lines or more equal cell areas. Either of these could help to improve the timestep restriction for hyperbolic PDEs. However, I’ve had some difficulty getting these to work. Also, they seem deficient in that the control functions diffuse. Thus, a small cell surrounded by large ones will not be corrected by the algorithm, since the influence of the large ones will diffuse into the small one.
![circular inclusions][2]
Adaptive mesh refinement
The mapped grids of have the advantage that it is easy to perform AMR on them. For elliptic smoothed grids, the following strategies seem possible:
Compute a smoothed grid for the finest possible resolution. This could be done over the whole domain, or just over subdomains that one expects will need refinement. This might be prohibitively expense (or might not).
Just divide cells by adding vertices at cell centers. This would sacrifice smoothness.
Use interpolation (e.g., with splines) to refine.
[1]: http://web.kaust.edu.sa/faculty/davidketcheson/wiki/circle.pdf [2]: http://web.kaust.edu.sa/faculty/davidketcheson/wiki/inclusions.png