Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
A Material Point Method for Snow Simulation
Copyright of figures and other materials in the paper belongs original authors.
Presented by Ki-hoon Kim
2016.01. 19
Computer Graphics @ Korea University
Alexey Stomakhin et al.SIGGRAPH 2014
Ki-hoon Kim | 2016-01-25 | # 2Computer Graphics @ Korea University
• This handles difficult snow behaviors in a single solver.
• Contributions
We develop a semi-implicit Material Point Method(MPM)
• Designed to efficiently treat the wide range
This is the first time MPM has been used in graphics
Introduction
Ki-hoon Kim | 2016-01-25 | # 3Computer Graphics @ Korea University
• Geometric snow modeling
The bulk of graphics snow is devoted to modeling accumulation
• Granular materials
Traditionally, snow in graphics is thought of as a granular material
• Engineering modeling of snow & Elasto-plastic continuum
Elasto-plastic constitutive relation worked well
Related work
Ki-hoon Kim | 2016-01-25 | # 4Computer Graphics @ Korea University
• Snow dynamics modeling is difficult
Due to snow’s variability, usually stemming from environmental
Our model ignores root causes
• Strength of MPM
Relying on the continuum approximation
Avoiding the need to model every snow grain
Making self-collisions automatic
Better able to handle the dynamics of snow
Paper Overview - Why do they choose MPM?
Ki-hoon Kim | 2016-01-25 | # 5Computer Graphics @ Korea University
• In volume preservation, Grid is more effective than MPM
Snow is compressible
• In stiffness, FEM is more effective than MPM
Remeshing is required with extreme deformation
• MPM is almost ideal for plasticity
The inaccuracies of the deformation gradient accumulate as artificial plasticity
Paper Overview - Comparison with Other methods
Ki-hoon Kim | 2016-01-25 | # 6Computer Graphics @ Korea University
Paper Overview - What is Deformation gradient?
• Deformation Gradient 𝐹 =𝜕𝐱(𝐗)
𝜕𝐗
𝐗 is the undeformed reference configuration
𝐱(𝐗) is the deformed current configuration
• Examples
Referencehttp://www.continuummechanics.org
Ki-hoon Kim | 2016-01-25 | # 7Computer Graphics @ Korea University
• Mass Preservation
𝐷𝜌
𝐷𝑡= 0
• Momentum Preservation
𝜌𝐷𝐯
𝐷𝑡= 𝛁 ∙ 𝜎 + 𝜌𝐠
• Cauchy stress 𝜎 =1
𝐽
𝜕Ψ
𝜕𝐹𝐸𝐹𝐸
𝑇
Ψ is elasto-plastic potential energy density
𝐽 = det(𝐹) & 𝐹 = 𝐹𝐸𝐹𝑃
• If material is isotropic Newtonian fluid 𝜎𝑖𝑗 = −𝑝𝛿𝑖𝑗 + 𝜇(𝜕𝑣𝑖
𝜕𝑥𝑗+
𝜕𝑣𝑗
𝜕𝑥𝑖)
Material point method- Governing equation
Ki-hoon Kim | 2016-01-25 | # 8Computer Graphics @ Korea University
• Particle(material point) 𝑝 holds
Position 𝐱𝑝
Velocity 𝐯𝑝
Mass 𝑚𝑝
Deformation gradient 𝐹𝑝
• The Lagrangian treatment simplifies the discretization of
𝐷𝜌
𝐷𝑡
𝜌𝐷𝑣
𝐷𝑡
Material point method- Particles(Lagrangian)
Ki-hoon Kim | 2016-01-25 | # 9Computer Graphics @ Korea University
• Background grid node 𝑖 holds
Constant Position 𝐱𝑖
Velocity 𝐯𝑖
Mass 𝑚𝑖
• Grid is needed for the computation of stress-based force
𝛁 ∙ 𝜎 terms in the standard FEM
Using cubic B-splines kernel
𝑤𝑖𝑝(𝐱𝑖 , 𝐱𝑝, ℎ) = 𝑁(1
ℎ(𝑥𝑝 − 𝑥𝑖))𝑁(
1
ℎ(𝑦𝑝 − 𝑦𝑖))𝑁(
1
ℎ(𝑧𝑝 − 𝑧𝑖))
• ℎ is Kernel radius
Material point method- Background grid(Eulerian)
Ki-hoon Kim | 2016-01-25 | # 10Computer Graphics @ Korea University
Material point method- Full method overview
Ki-hoon Kim | 2016-01-25 | # 11Computer Graphics @ Korea University
• Rasterize particle data to the grid
Mass 𝑚𝑖𝑛 = Σ𝑝𝑚𝑝𝑤𝑖𝑝
𝑛
Velocity 𝐯𝑖𝑛 = Σ𝑝𝐯𝑝
𝑛𝑚𝑝𝑤𝑖𝑝𝑛 /𝑚𝑖
𝑛
• Compute particle volumes and densities
Only once
• Compute grid forces
Stress-based forces
• Update velocities on grid
• Grid-based body collisions
• Solve the linear system
• Update deformation gradient
• Update particle velocities and positions
Material point method- Full method overview
Ki-hoon Kim | 2016-01-25 | # 12Computer Graphics @ Korea University
• Rasterize particle data to the grid
Make velocity field
• Compute grid forces
MPM: Stress-based forces
FLIP: Pressure forces
• Update velocity field
𝐯𝑛+1 = 𝐯𝑛 + Δ𝑡𝑚−1𝐟
• Update particle velocity
Material point method- Method flow comparison with FLIP
Ki-hoon Kim | 2016-01-25 | # 13Computer Graphics @ Korea University
• Energy density function is
Ψ 𝐹𝐸 , 𝐹𝑃 = 𝜇 𝐹𝑃 ||𝐹𝐸 − 𝑅𝐸||𝐹2 +
𝜆 𝐹𝑃
2𝐽𝐸 − 1 2
𝐹𝐸 = 𝑅𝐸𝑆𝐸 by the polar decomposition
1st term of the right side : Shape based
2nd term of the right side : Volume based
• Functions of the 𝐹𝑃
𝜇 𝐹𝑃 = 𝜇0𝑒𝜉(1−𝐽𝑝)
𝜆 𝐹𝑃 = 𝜆0𝑒𝜉(1−𝐽𝑝)
𝜇0 and 𝜆0 are initial parameters
𝜉 is plastic hardening parameter
Constitutive model- Elasto–plastic energy density function
Ki-hoon Kim | 2016-01-25 | # 14Computer Graphics @ Korea University
• The total elastic potential energy can be expressed as
Φ = 𝛀𝟎 Ψ 𝐹𝐸 𝐗 , 𝐹𝑃 𝐗 𝑑𝐗 = Σ𝑝 𝑉𝑝0 Ψ𝑝 𝐹𝐸𝑝, 𝐹𝑃𝑝
• 𝛀𝟎 is the reference configuration
• Spatial discretization of the stress-based forces
−𝐟𝑖=𝜕Φ(𝐱)
𝜕𝐱𝑖= Σ𝑝𝑉𝑝
0 𝜕Ψ𝑝
𝜕𝐹𝐸𝑝𝐹𝐸𝑝
𝑇𝛻𝑤𝑖𝑝
• Expression in terms of the Cauchy stress and sequence index
𝐟𝑖𝑛 = −Σ𝑝𝑉𝑝
𝑛 𝜎𝑝𝛻𝑤𝑖𝑝
Cauchy stress 𝜎𝑝 =1
𝐽𝑝𝑛
𝜕Ψ𝑝
𝜕𝐹𝐸𝑝𝐹𝐸𝑝
𝑇
Occupied volume 𝑉𝑝𝑛 = 𝐽𝑝
𝑛𝑉𝑝0
Stress-based forces- Forces derivation from Total potential energy
Ki-hoon Kim | 2016-01-25 | # 15Computer Graphics @ Korea University
• Predicted grid node position
𝐱𝑖(𝐯𝑖) = 𝐱𝑖 + Δ𝑡𝐯𝑖
• Predicted Deformation Gradient
𝐹𝐸𝑝𝑛+1 𝐱 = 𝐼 + Σ𝑖 𝐱𝑖 − 𝐱𝑖 𝛻𝑤𝑖𝑝
𝑛 𝑇𝐹𝐸𝑝
𝑛
• Predicted grid forces
𝐟𝑖𝑛 = 𝐟𝑖 𝐱𝑖(𝟎)
𝐟𝑖𝑛+1=𝐟𝑖 𝐱𝑖(𝐯
𝑛+1 )
Stress-based forces- Predicted quantities
Ki-hoon Kim | 2016-01-25 | # 16Computer Graphics @ Korea University
• Grid velocity Update
𝐯𝑖𝑛+1 = 𝐯𝑖
𝑛 + Δ𝑡𝑚𝑖−1( 1 − 𝛽 𝐟𝑖
𝑛 + 𝛽𝐟𝑖𝑛+1)
• 𝛽 is choose between
0 : Explicit
0~1: Semi implicit
1 : Backward Euler
𝐯𝑖𝑛+1 ≈ 𝐯𝑖
𝑛 + Δ𝑡𝑚𝑖−1(𝐟𝑖
𝑛 + 𝛽Δ𝑡Σ𝑗𝜕𝐟𝑗
𝑛
𝜕 𝐱𝑗𝐯𝑗𝑛+1)
• 𝐟𝑖𝑛+1 = 𝐟𝑖 𝐱𝑖(𝐯
𝑛+1 ) = 𝐟𝑖 𝐱𝑖(𝟎) + 𝛿𝐟𝑖(𝐯𝑛+1)
• 𝛿𝐟𝑖(𝐯𝑛+1) ≈ Δ𝑡Σ𝑗
𝜕𝐟𝑗𝑛
𝜕 𝐱𝑗𝐯𝑗𝑛+1
Stress-based forces- Semi-implicit update(1)
Ki-hoon Kim | 2016-01-25 | # 17Computer Graphics @ Korea University
• The result of the previous page leads to linear system
Σ𝑗 𝐼𝛿𝑖𝑗 + 𝛽Δ𝑡2𝑚𝑖−1 𝜕2Φ𝑛
𝜕 𝐱𝑖𝜕 𝐱𝑗𝐯𝑗𝑛+1 = 𝐯𝑖
∗
𝐯𝑖∗ = 𝐯𝑖
𝑛 + Δ𝑡𝑚𝑖−1𝐟𝑖
𝑛
Using the conjugate residual method
Stress-based forces- Semi-implicit update(2)
𝐴 𝐱 = 𝐛
Ki-hoon Kim | 2016-01-25 | # 18Computer Graphics @ Korea University
• Step 1. From page 15(PPT 26) Temporarily defining
𝐹𝐸𝑝𝑛+1 = 𝐼 + Δ𝑡𝛻𝐯𝑝
𝑛+1 𝐹𝐸𝑝𝑛 , 𝐹𝑃𝑝
𝑛+1 = 𝐹𝑃𝑝𝑛
𝐹𝑝𝑛+1 = 𝐹𝐸𝑝
𝑛+1 𝐹𝑃𝑝𝑛+1
• All the changes get attributed to the elastic part
• Step 2. Clamping singular values of 𝐹𝐸𝑝𝑛+1 to the permitted range
𝐹𝐸𝑝𝑛+1 = 𝑈𝑝
Σ𝑝𝑉𝑝𝑇 , then Σp = clamp( Σ𝑝, [1 − 𝜃𝑐 , 1 + 𝜃𝑠])
• 𝜃𝑐 : Critical compression
• 𝜃𝑠 : Critical stretch
• Step 3. Push changes of the elastic part into the plastic part
𝐹𝐸𝑝𝑛+1 = 𝑈𝑝Σ𝑝𝑉𝑝
𝑇 and 𝐹𝐸𝑝𝑛+1 = 𝐹𝐸𝑝
𝑛+1 −1𝐹𝑝
𝑛+1
Deformation gradient update
Ki-hoon Kim | 2016-01-25 | # 19Computer Graphics @ Korea University
Results
Ki-hoon Kim | 2016-01-25 | # 20Computer Graphics @ Korea University
• Limitations
A lot of our parameters were tuned by hand
This neglects interactions with the air
Using adaptive sparse grids would save memory
• Conclusion
Presenting a constitutive model and simulation technique
Demonstrating a wide variety of snow behaviors
Discussion and Conclusion