1
Chimera Grids for Free Surface Incompressible Flow Simulation PI: Fedkiw, Stanford University Monolithic Pressure and Viscosity Solve using a Voronoi Discretization Explicit Grid Coupling and ALE Advection Results Overview of Our Method Limitations of Existing Methods Top: 2D flow past three ovals (passive scalar and vorticity) Bottom: 3D smoke jet passing a single rotating ellipsoid Pouring water powers a water wheel. The eight grids enclosing the buckets are rotating with the wheel. Unstructured Methods e.g. tetrahedral meshes and smoothed particle hydrodynamics Tend to have poor cache coherency due to non-sequential data layout in memory High computational and communication costs due to continuous remeshing and repartitioning of the domain Structured Methods e.g. Cartesian grids and “locally refined grids” Simulating using Cartesian grids offers lightweight implicit structures, cache coherent data layout, accurate numerical stencils and straightforward domain decomposition However, a single grid over the whole domain cannot provide spatial adaptivity Our group had worked with octrees and found them to be 1000x slower than single Cartesian grids due to cache incoherence and indirections Also, graded boundaries and T-junctions are problematic at free surface Adaptive Mesh Refinement (AMR) methods use a block Cartesian structure The axis aligned placement of patches requires such a large number of small patches in order to efficiently resolve non-axis-aligned features, which can result in the discretization having issues similar to those for unstructured methods Incompressible flow simulation is extremely sensitive to Poisson solver used to compute pressure Need to compute exact linear solutions to handle hydrostatic case otherwise spurious currents form Prior Chimera grid pressures solvers were slow Gauss-Seidel approach: solve for pressure independently on each grid using boundary conditions interpolated from overlapping grids, iterate until converged Monolithic approach: solve coupled equations as asymmetric system We patch grids together using a Voronoi diagram to build connectivity at grid boundaries Exact for linear solutions – pressure gradient across each face is in the normal direction Unstructured part is low dimensional and doesn’t require repartitioning of the domain - solution variables are a subset of the Cartesian pressure samples Voronoi diagram constructed by clipping candidate faces against candidate faces between nearby cell center pairs Velocity mapped between Cartesian grids and Voronoi mesh by multilinear and barycentric interpolation over Delaunay dual mesh Free surfaces use second order cut cell method allowing for smooth behavior at graded boundaries Two-way solid fluid coupling is straightforward due to continuous discretization Resulting symmetric positive definite system is fast to solve with incomplete Cholesky preconditioned conjugate gradient method A kinematically driven grid moves in and out of still water without disturbing the surface. The water velocity remains within rounding tolerance of zero. Grids can be placed to track fluid features and solid objects, allowing for dynamic spatial adaptivity without remeshing or repartitioning the domain Grid partitioning and solid body rasterization computed in preprocessing step Overlapping Cartesian grids are coupled through ghost and overlapped cells Unconditionally stable arbitrary Lagrangian-Eulerian (ALE) semi-Lagrangian advection Pressure and viscosity forces are computed using a second order accurate monolithic symmetric-positive-definite Poisson solver Highly scalable on distributed parallel architectures with minimal communication costs A new method for large scale smoke and water simulation, which discretizes space with a number of overlapping Cartesian grids that translate and rotate in order to decompose the domain into various regions of interest with different spatial resolution, capturing details on many scales. Elliot English, Linhai Qiu, Yue Yu, and Ron Fedkiw Quadtree / octree Axis-aligned AMR Top: a kinematic propeller spinning, grids enclosing blades Bottom: many armadillo-shaped droplet falls on still water Two ships in stormy seas near an island. We refine the computational domain near the shore, the lighthouse, the ships and their propellers to add details and allow the ships to propel themselves using their two-way solid-fluid coupled propellers. In this example, the water surface shader uses a Phillips spectrum bump map. Escaped particles are rendered as mist. Grids can be split into subgrids and assigned to multiple processors. A two-way coupled ship floats in a large water body and is driven forward by well-resolved propellers. Adequately resolving the wing and the tail using Chimera grids enables a glider to fly in a large domain. Explicit operations are coupled together by filling the ghost cells of each grid before performing the operation and then by filling cells overlapped by a finer grid after the operation has completed. Cells are filled by interpolating from finest grid with a valid interpolation stencil We use this strategy for advection, level set signed distance function reinitialization and when extrapolating the velocity field across the free surface into the air Scheme minimizes communication and improves cache coherency by avoiding costly lookups between grids Semi-Lagrangian advection allows arbitrarily large time steps while maintaining stability – time step not limited by size of smallest cell Handle grid motion by computing effective velocity for each location which is then fed into single grid code Second order accuracy can be achieved using a MacCormack scheme which greatly reduces numerical dissipation In order to compute an updated value at the blue dot we trace a characteristic ray in the direction of the fluid velocity to the green triangle where we interpolate an updated value. Our ALE scheme accounts for grid motion by instead using an effective velocity to trace back from the red dot.

Chimera Grids for Free Surface Incompressible Flow Simulation

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Chimera Grids for Free Surface Incompressible Flow Simulation

Chimera Grids for Free Surface Incompressible Flow Simulation

PI: Fedkiw, Stanford University

Monolithic Pressure and Viscosity Solve using a Voronoi Discretization Explicit Grid Coupling and ALE Advection

Results

Overview of Our Method Limitations of Existing Methods

Top: 2D flow past three ovals (passive scalar and vorticity) Bottom: 3D smoke jet passing a single rotating ellipsoid

Pouring water powers a water wheel. The eight grids enclosing the buckets are rotating with the wheel.

Unstructured Methods e.g. tetrahedral meshes and smoothed particle hydrodynamics •Tend to have poor cache coherency due to non-sequential data layout in memory •High computational and communication costs due to continuous remeshing and

repartitioning of the domain Structured Methods e.g. Cartesian grids and “locally refined grids” •Simulating using Cartesian grids offers lightweight implicit structures, cache coherent

data layout, accurate numerical stencils and straightforward domain decomposition •However, a single grid over the whole domain cannot provide spatial adaptivity

•Our group had worked with octrees and found them to be 1000x slower than single Cartesian grids due to cache incoherence and indirections •Also, graded boundaries and T-junctions are problematic at free surface

•Adaptive Mesh Refinement (AMR) methods use a block Cartesian structure •The axis aligned placement of patches requires such a large number of small

patches in order to efficiently resolve non-axis-aligned features, which can result in the discretization having issues similar to those for unstructured methods

• Incompressible flow simulation is extremely sensitive to Poisson solver used to compute pressure •Need to compute exact linear solutions to handle hydrostatic case otherwise spurious currents form

• Prior Chimera grid pressures solvers were slow •Gauss-Seidel approach: solve for pressure independently on each grid using boundary conditions

interpolated from overlapping grids, iterate until converged •Monolithic approach: solve coupled equations as asymmetric system

•We patch grids together using a Voronoi diagram to build connectivity at grid boundaries • Exact for linear solutions – pressure gradient across each face is in the normal direction •Unstructured part is low dimensional and doesn’t require repartitioning of the domain - solution variables are a subset of the

Cartesian pressure samples • Voronoi diagram constructed by clipping candidate faces against candidate faces between nearby cell center pairs

• Velocity mapped between Cartesian grids and Voronoi mesh by multilinear and barycentric interpolation over Delaunay dual mesh • Free surfaces use second order cut cell method allowing for smooth behavior at graded boundaries • Two-way solid fluid coupling is straightforward due to continuous discretization • Resulting symmetric positive definite system is fast to solve with incomplete Cholesky preconditioned conjugate gradient method

A kinematically driven grid moves in and out of still water without disturbing the surface. The water velocity remains within rounding tolerance of zero.

•Grids can be placed to track fluid features and solid objects, allowing for dynamic spatial adaptivity without remeshing or repartitioning the domain •Grid partitioning and solid body rasterization computed in preprocessing step •Overlapping Cartesian grids are coupled through ghost and overlapped cells •Unconditionally stable arbitrary Lagrangian-Eulerian (ALE) semi-Lagrangian advection •Pressure and viscosity forces are computed using a second order accurate monolithic symmetric-positive-definite Poisson solver •Highly scalable on distributed parallel architectures with minimal communication costs

A new method for large scale smoke and water simulation, which discretizes space with a number of overlapping Cartesian grids that translate and rotate in order to decompose the domain into various regions of interest with different spatial resolution, capturing details on many scales.

Elliot English, Linhai Qiu, Yue Yu, and Ron Fedkiw

Quadtree / octree Axis-aligned AMR

Top: a kinematic propeller spinning, grids enclosing blades Bottom: many armadillo-shaped droplet falls on still water

Two ships in stormy seas near an island. We refine the computational domain near the shore, the lighthouse, the ships and their propellers to add details and allow the ships to propel themselves using their two-way solid-fluid coupled propellers. In this example, the water surface shader uses a Phillips spectrum bump map. Escaped particles are rendered as mist.

Grids can be split into subgrids and assigned to multiple processors.

A two-way coupled ship floats in a large water body and is driven forward by well-resolved propellers.

Adequately resolving the wing and the tail using Chimera grids enables a glider to fly in a large domain.

•Explicit operations are coupled together by filling the ghost cells of each grid before performing the operation and then by filling cells overlapped by a finer grid after the operation has completed. Cells are filled by interpolating from finest grid with a valid interpolation stencil

•We use this strategy for advection, level set signed distance function reinitialization and when extrapolating the velocity field across the free surface into the air •Scheme minimizes communication and improves cache coherency by avoiding costly lookups between grids

•Semi-Lagrangian advection allows arbitrarily large time steps while maintaining stability – time step not limited by size of smallest cell

•Handle grid motion by computing effective velocity for each location which is then fed into single grid code •Second order accuracy can be achieved using a MacCormack scheme which greatly reduces numerical dissipation

In order to compute an updated value at the blue dot we trace a characteristic ray in the direction of the fluid velocity to the green triangle where we interpolate an updated value. Our ALE scheme accounts for grid motion by instead using an effective velocity to trace back from the red dot.