0% found this document useful (0 votes)
3 views53 pages

02_incompressibility

Uploaded by

459258639
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views53 pages

02_incompressibility

Uploaded by

459258639
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 53

Smoothed Particle Hydrodynamics

Techniques for the Physics Based Simulation of Fluids and Solids

Incompressibility

Dan Jan Barbara Matthias


Koschier Bender Solenthaler Teschner
SPH Fluid Solver
 Neighbor search
 Incompressibility
 Boundary handling

SPH for the Physics Based Simulation of Fluids and Solids – 2


Outline
 Introduction
 Concepts
 State equation
 Iterative state equation
 Pressure Poisson equation
 Current developments

SPH for the Physics Based Simulation of Fluids and Solids – 3


Motivation
 Incompressibility is essential for a realistic fluid behavior
 Less than 0.1% volume / density deviation in typical scenarios
 Inappropriate compression leads, e.g.,
to volume oscillations or volume loss
 Enforcing incompressibility significantly
influences the performance
 Simple approaches require small time steps
 Expensive approaches work with large time steps

SPH for the Physics Based Simulation of Fluids and Solids – 4


Approaches
 Minimization of density / volume errors
 Measure difference of actual and desired density
 Compute pressure and pressure accelerations
that reduce density / volume deviations
 Minimization of velocity divergence
 Measure the divergence of the velocity field
 Compute pressure and pressure accelerations
that reduce the divergence of the velocity field

SPH for the Physics Based Simulation of Fluids and Solids – 5


Typical Implementation
 Split pressure and non-pressure acceleration

 Predict velocity after non-pressure acceleration

 Compute pressure such that pressure acceleration


either minimizes the divergence of or the density
error after advecting the samples with
 Update velocity
 Minimized density error / divergence at advected samples

SPH for the Physics Based Simulation of Fluids and Solids – 6


Density Invariance vs. Velocity Divergence
 Continuity equation:
 Time rate of change of the density is
related to the divergence of the velocity

SPH for the Physics Based Simulation of Fluids and Solids – 7


Density Invariance vs. Velocity Divergence
 Density invariance
 Measure and minimize density deviations
 Velocity divergence
 Measure and minimize the divergence of the velocity field
 Zero velocity divergence corresponds to zero density
change over time , i.e. the initial
density does not change over time
 Notion of density is not required

SPH for the Physics Based Simulation of Fluids and Solids – 8


Challenges
 Minimizing density deviations can
result in volume oscillations
 Density error is
going up and down
 Erroneous fluid dynamics
 Only very small density
deviations are tolerable,
e.g. 0.1%

https://www.youtube.com/watch?v=hAPO0xBp5WU

SPH for the Physics Based Simulation of Fluids and Solids – 9


Challenges
 Minimizing the velocity
divergence can result
in volume loss
 Divergence errors
result in density drift
 No notion of actual
density

[Zhu, Lee, Quigley, Fedkiw, ACM SIGGRAPH 2015]

SPH for the Physics Based Simulation of Fluids and Solids – 10


SPH Graphics Research - Incompressibility

 State equation
 [Becker 2007]
 Iterative state equation
 PCISPH [Solenthaler 2009],
LPSPH [He 2012],
PBF [Macklin 2013]
 Pressure Poisson equation
 IISPH [Ihmsen 2013],
DFSPH [Bender 2015],
[Cornelis 2018]
SPH for the Physics Based Simulation of Fluids and Solids – 11
Incompressibility – Applications
 Fluids
 Elastic solids
 Rigid bodies
 Monolithic solvers with
unified representations

SPH for the Physics Based Simulation of Fluids and Solids – 12


SPH for the Physics Based[Gissler
Simulationet al., presented
of Fluids and Solids – 13 at ACM SIGGRAPH 2019]
Outline
 Introduction
 Concepts
 State equation
 Iterative state equation
 Pressure Poisson equation
 Current developments

SPH for the Physics Based Simulation of Fluids and Solids – 14


State Equation SPH (SESPH)
 Compute pressure from the density deviation
locally with one equation for each sample / particle
 Compute pressure acceleration

SPH for the Physics Based Simulation of Fluids and Solids – 15


State Equations
 Pressure is proportional to density error
Pressure values in SPH
 E.g. or implementations should
always be non-negative.
 Referred to as compressible SPH

 Referred to as weakly compressible SPH

SPH for the Physics Based Simulation of Fluids and Solids – 16


SESPH – State Equation SPH Fluid Solver

Compute pressure with a state equation

SPH for the Physics Based Simulation of Fluids and Solids – 17


SESPH - Discussion
 Compression results in pressure
 Pressure gradients result in accelerations
from high to low density
 Simple computation, small time steps
 Larger stiffness less compressibility smaller
time step
 Stiffness constant does not govern the pressure,
but the compressibility of the fluid

SPH for the Physics Based Simulation of Fluids and Solids – 18


Stiffness Constant – 1D Illustration
 Gravity cancels pressure acceleration

Fluid
Solid
 Differences between and
are independent from A 1D fluid under
gravity at rest
 Smaller results in larger density error
to get the required pressure

SPH for the Physics Based Simulation of Fluids and Solids – 19


SESPH with Splitting
 Split pressure and non-pressure accelerations
 Non-pressure acceleration
 Predicted velocity
 Predicted position
 Predicted density
 Pressure from predicted density
 Pressure acceleration
 Final velocity and position

SPH for the Physics Based Simulation of Fluids and Solids – 20


SESPH with Splitting

Density at predicted positions

Pressure at predicted positions

SPH for the Physics Based Simulation of Fluids and Solids – 21


Differential Density Update
 Density at advected positions is often
approximated without advecting the samples
 Continuity equation and time discretization

 SPH discretization

 Predicted density due to the divergence of


Approximate density at predicted
positions:

SPH for the Physics Based Simulation of Fluids and Solids – 22


SESPH with Splitting - Discussion
 Consider competing accelerations
 Take effects of non-pressure accelerations
into account when computing the pressure
acceleration
 Incompressibility has highest priority

SPH for the Physics Based Simulation of Fluids and Solids – 23


Outline
 Introduction
 Concepts
 State equation
 Iterative state equation
 Pressure Poisson equation
 Current developments

SPH for the Physics Based Simulation of Fluids and Solids – 24


Iterative SESPH with Splitting
 Pressure accelerations are iteratively refined
 Non-pressure acceleration
 Predicted velocity
 Iterate until convergence
 Density from predicted position
 Pressure from predicted density
 Pressure acceleration
 Refine predicted velocity
 Final velocity and position

SPH for the Physics Based Simulation of Fluids and Solids – 25


Iterative SESPH with Splitting - Motivation
 Iterative update is parameterized
by a desired density error
 Provides a fluid state with a
guaranteed density error
 Stiffness parameter and form of the state
equation govern the convergence rate

SPH for the Physics Based Simulation of Fluids and Solids – 26


Iterative SESPH with Splitting

user-defined density error

SPH for the Physics Based Simulation of Fluids and Solids – 27


Iterative SESPH - Variants
 Different quantities are accumulated
 Velocity changes (local Poisson SPH LPSPH)
 Pressure (predictive-corrective SPH PCISPH) [Solenthaler 2009]
 Advantageous, if pressure is required for other computations
 Distances (position-based fluids PBF)

 Different EOS and stiffness constants are used
 with in local Poisson SPH
 with in PCISPH
 with in PBF
SPH for the Physics Based Simulation of Fluids and Solids – 28
Predictive-Corrective Incompressible SPH - PCISPH

 Goal: Computation of pressure accelerations


that result in rest density at all particles
 Formulation: Density at the next time
step should equal the rest density
Desired Current Density change due Density change due to
density density to predicted velocity unknown pressure acceleration
Discretized
continuity
equation

SPH for the Physics Based Simulation of Fluids and Solids – 29


PCISPH - Assumptions
 Simplifications to get one equation with one unknown:
 Equal pressure at all neighboring samples

Unknown pressures pi and pj

 For sample j, only consider the contribution from i


Unknown pressure pi

SPH for the Physics Based Simulation of Fluids and Solids – 30


PCISPH - Solution
 Solve for unknown pressure:

Intuition: This pressure causes pressure accelerations that cause velocity changes
that correspond to a divergence that results in rest density at the sample.

SPH for the Physics Based Simulation of Fluids and Solids – 31


PCISPH - Discussion
 Pressure is computed with a state equation
 is not user-defined
 Instead, an optimized value is derived and used
 Pressure is iteratively refined

SPH for the Physics Based Simulation of Fluids and Solids – 32


PCISPH - Performance
 Typically three to five iterations for
density errors between 0.1% and 1%
 Speed-up factor over non-iterative SESPH up to 50
 More computations per time step compared to SESPH
 Significantly larger time step than in SESPH
 Speed-up dependent on scenario
 Non-linear relation between time step and iterations
 Largest possible time step does not necessarily
lead to an optimal overall performance
SPH for the Physics Based Simulation of Fluids and Solids – 33
Comparison
 PCISPH [Solenthaler 2009]
 Iterative pressure
computation
 Large time step
 WCSPH [Becker and Teschner 2007]
 Efficient to compute
 Small time step
 Computation time for the
PCISPH scenario is 20 times shorter than WCSPH
SPH for the Physics Based Simulation of Fluids and Solids – 34
Outline
 Introduction
 Concepts
 State equation
 Iterative state equation
 Pressure Poisson equation
 Current developments

SPH for the Physics Based Simulation of Fluids and Solids – 35


Introduction
 Pressure causes pressure accelerations that
cause velocity change that cause displacements
such that particles have rest density
 Projection schemes solve a linear system
to compute the respective pressure field
 PCISPH uses simplifications to compute
pressure per particle from one equation.
Solving a linear system is avoided.

SPH for the Physics Based Simulation of Fluids and Solids – 36


Derivation
Velocity change per time step due to pressure
acceleration and non-pressure acceleration

Predicted velocity after non-pressure acceleration

Velocity after all accelerations

Velocity change due to pressure acceleration

Divergence of the velocity change


due to pressure acceleration

SPH for the Physics Based Simulation of Fluids and Solids – 37


Derivation

Divergence of the final velocity field should


Constraint:
be zero, i.e. no density change per time

Divergence of the velocity change due to


pressure acceleration should cancel the
divergence of the predicted velocity

Pressure Poisson equation


with unknown pressure

SPH for the Physics Based Simulation of Fluids and Solids – 38


Density Invariance vs. Velocity Divergence
 Pressure Poisson equation PPE that minimizes
the velocity divergence:
 PPE that minimizes the density error:
 Derivation: Discretized continuity
equation at time

Constraint:

Predicted density after


sample advection with
SPH for the Physics Based Simulation of Fluids and Solids – 39
Interpretation of PPE Forms
 Velocity divergence:
 Pressure causes a pressure acceleration that causes
a velocity change whose divergence
cancels the divergence of the predicted velocity, i.e.

 Density invariance:
 The divergence multiplied with density is a
density change per time that cancels the predicted density
error per time , i.e.

SPH for the Physics Based Simulation of Fluids and Solids – 40


PPE Solver
 Linear system with unknown pressure values
 One equation per particle
 Iterative solvers <A> is a discretized
form of A
 Conjugate Gradient
 Relaxed Jacobi
 Fast computation per iteration
 Few non-zero entries in each equation
 Matrix-free implementations
 Very few information per particle
SPH for the Physics Based Simulation of Fluids and Solids – 41
PPE Solver
 Very large time steps
 Convergence dependent on the formulation
 SPH discretization of
 Source term (velocity divergence or density invariance)
 Accuracy issues
 Volume drift for velocity divergence
 Oscillations for density invariance

SPH for the Physics Based Simulation of Fluids and Solids – 42


PPE Discretization
 Implicit incompressible SPH (IISPH) [Ihmsen et al. 2014]
 PPE with density invariance as source term:
 Computation of :
with
 Computation of :

with

SPH for the Physics Based Simulation of Fluids and Solids – 43


PPE System - IISPH
 PPE
density change due to negative of the
pressure accelerations predicted density error

 Discretized PPE
 System:
 Per particle:

 Interpretation:
Pressure accelerations cause a velocity
change vp whose divergence causes a
density change.
SPH for the Physics Based Simulation of Fluids and Solids – 44
PPE Solver - IISPH
 Relaxed Jacobi:
 For IISPH, typically
 Diagonal element
 Accumulate all coefficients of in

 Note, that the first pressure update is State equation


 Using the incompressible PPE variant IISPH with one solver iteration
corresponds to compressible state-equation SPH with

SPH for the Physics Based Simulation of Fluids and Solids – 45


PPE Solver Implementation - IISPH
 Initialization:

 Solver update in iteration l:


 First loop:
 Second loop:
If aii not equal to zero

Continue until error is small

SPH for the Physics Based Simulation of Fluids and Solids – 46


Boundary Handling - IISPH
 PPE: Index f indicates a fluid sample.
Index b indicates a boundary sample.
 Discretized PPE: ff indicates a fluid neighbor of f.
fb indicates a boundary neighbor of f.

SPH for the Physics Based Simulation of Fluids and Solids – 47


Boundary Handling - IISPH
 Diagonal element

SPH for the Physics Based Simulation of Fluids and Solids – 48


IISPH with Boundary - Implementation
 Initialization:

 Solver update in iteration l:


 First loop:
 Second loop:
If aff not equal to zero

Continue until error is small

SPH for the Physics Based Simulation of Fluids and Solids – 49


IISPH vs. PCISPH
 Breaking dam
 100k samples with diameter 0.05m, 0.01% ave density error

 Largest possible time step does not


necessarily result in the best performance
SPH for the Physics Based Simulation of Fluids and Solids – 50
Up to
SPH for the Physics Based Simulation of Fluids and Solids – 51500 million fluid samples
Outline
 Introduction
 Concepts
 State equation
 Iterative state equation
 Pressure Poisson equation
 Current developments

SPH for the Physics Based Simulation of Fluids and Solids – 52


Current Developments
 DFSPH [Bender 2015]
 Combination of two PPEs (inspired by [Hu 2007])
 Resolving compressibility and removing
velocity divergence in two steps
 Currently the most efficient solver
 [Cornelis 2018]
 Various formulations for combining two PPEs
 [Fuerstenau 2017]
 Discretization of the Laplacian
SPH for the Physics Based Simulation of Fluids and Solids – 53

You might also like