GfsRefineSolid
From Gerris
GfsRefineSolid will refine any cell intersected by an embedded solid boundary down to the specified number of levels.
The syntax in parameter files is
[ GfsRefine ]
GfsRefineSolid also creates a new derived variable SolidCurvature
which contains the maximum of the mean surface curvature for the fragment of embedded surface contained in a cell. If the mean curvature in a cell cannot be computed — for example because several non-connected fragments of surface intersect the cell — the value of SolidCurvature
is set to 1/(cell size).
SolidCurvature
can be used to refine an embedded surface according to its mean curvature using for example
RefineSolid { if (SolidCurvature > 0.) { /* compute the level so that (radius of curvature) > 5*(cell size) */ gint l = log(SolidCurvature/0.2)/log(2.); return l < 8 ? 8 : l > 12 ? 12 : l; } else return 8; }
Examples
- Parallel simulation on four processors
- Boussinesq flow generated by a heated cylinder
- Starting vortex of a NACA 2414 aerofoil
- Turbulent air flow around RV Tangaroa
- Air-water flow around a Series 60 cargo ship
- Wingtip vortices behind a rectangular NACA 2414 wing
- Star-shaped solid boundary with refinement
- Potential flow around a thin plate
- Tsunami runup onto a plane beach
- Lake-at-rest balance in an inclined domain with cut cells
RefineSolid 6
RefineSolid 8
RefineSolid 9
RefineSolid 9
RefineSolid LEVEL
RefineSolid 7
RefineSolid (LEVEL + 2)
RefineSolid 6
RefineSolid (MINLEVEL + (LEVEL - MINLEVEL)*(1. - x/50000.))
RefineSolid 7