1 / 23

More Accurate Pressure Solves

More Accurate Pressure Solves. Solid Boundaries. Voxelized version works great if solids aligned with grid If not: though the error in geometry is O(∆x), translates into O(1) error in velocities! The simulation physics sees stair-steps, and gives you motion for the stair-step case. Quick Fix.

Download Presentation

More Accurate Pressure Solves

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. More Accurate Pressure Solves

  2. Solid Boundaries • Voxelized version works great if solids aligned with grid • If not: though the error in geometry is O(∆x), translates into O(1) error in velocities! • The simulation physics sees stair-steps, and gives you motion for the stair-step case

  3. Quick Fix • Measure accurate normals • Before pressure solve, on boundary, fix • Then do voxelized pressure, set up to not modify boundary

  4. Quick Fix Fails • This is equivalent for grid-aligned solids • Works great for highly dynamic splashing etc. • Fails miserably in steadier situations

  5. Quick Fix Fails • This is equivalent for grid-aligned solids • Works great for highly dynamic splashing etc. • Fails miserably in steadier situations GRAVITY

  6. Quick Fix Fails • This is equivalent for grid-aligned solids • Works great for highly dynamic splashing etc. • Fails miserably in steadier situations BOUNDARY FIX

  7. Quick Fix Fails • This is equivalent for grid-aligned solids • Works great for highly dynamic splashing etc. • Fails miserably in steadier situations PRESSURE SOLVE

  8. Quick Fix Fails • This is equivalent for grid-aligned solids • Works great for highly dynamic splashing etc. • Fails miserably in steadier situations • Fictitious currents emerge and unstably grow

  9. Rethinking the problem • See Batty et al. (tomorrow) • If we keep our fluid blobs constant volume, incompressibility constraint means:blobs stay in contact with each other (no interpenetration, no gaps) • Staying in contact == inelastic, sticky collision

  10. Inelastic, sticky collisions • Take two particles. Interaction force update: • (F is like pressure gradient) • Contact constraint is: (like divergence-free condition)

  11. Inelastic, sticky collisions (2) • Can solve for F to satisfy kinematic constraint • Equivalently, find F that minimizes kinetic energy of system: • Kinematics comes for free…

  12. Variational Pressure Solve • Pressure update is fluid particle interaction • Incompressible means no stored energy:fully inelastic • Thus it must minimize kinetic energy + workwith constraint p=0 on free surface • Can prove it’s equivalent to regular PDE form!

  13. Variational goodness • The solid wall boundary condition vanishes! (automatically enforced at minimum) • Discretizing kinetic energy integral much simpler: • Just need average fluid density in each cell, and volume fraction of fluid inside cell

  14. Linear System • Plug in discrete pressure update in discrete KE • Quadratic in pressures • Find discrete minimum == solve linear system • Linear system guaranteed to be symmetric, positive definite • In fact, it’s exactly the same as voxelized– except each term is weighted by volume fractions

  15. Benefits • Actually converges! (error is O(∆x) or better) • Handles resting case perfectly:KE is minimized by zeroing out velocity, which we get from hydrostatic pressure field • Can handle sub-grid-scale geometry • E.g. particles immersed in flow, narrow channels, hair… • Just need to know volume displaced!

  16. Extra goodness • Can couple solids in flow easily: • Figure out formula for discrete pressure update to solid velocity • Add solid’s kinetic energy to minimization • Automatically gives two-way “strong” coupling between rigid bodies and flow, perfectly compatible velocities at boundary, no tangential coupling…

  17. Free Surfaces • The other problem we see with voxelization is free surface treatment • Physics only sees voxels: waves less than O(∆x) high are ignored • At least position errors will converge to zero… but errors in normal are O(1)!(rendering will always look awful)

  18. Ghost Fluid Method • Due to Fedkiw and coauthors pi+1 pi p=0

  19. Ghost Fluid Method • Voxelized version: pi+1 pi p=0

  20. Ghost Fluid Method • GFM version: pi+1 pi p=0

  21. GFM with solids • Complementary to variational solve:GFM just changes the pressure update • However, for triple junctions (solid+liquid+air) it gets difficult to make this just right

  22. Reinterpret GFM • The multiple fluid (“two-phase”) jump conditions: • So take finite difference for • Use average fluid density for pressure update(average between liquid and air)

  23. Variational free surface • Simply need volume fractions per cell(how much of cell is liquid+air),and average densities per cell(mix between liquid and air) • Use average density for pressure update, volume fraction for KE estime • Speed things up: all-air cells eliminated(set p=0 there) • This is the discrete free surface approximation!

More Related