Deformation - Computer Scienceweb.cse.ohio-state.edu/~wang.3602/courses/cse3541-2019... · 2014. 4....
Transcript of Deformation - Computer Scienceweb.cse.ohio-state.edu/~wang.3602/courses/cse3541-2019... · 2014. 4....
Deformation
Huamin Wang
Deformation Mode
• A deformation mode specifies how an object is deformed. Cloth and paper:
Compression Tension Shearing Bending
Planar DeformationOut-of-Plane Deformation
Deformation Mode
• A deformation mode describes how an object is deformed. 3D soft bodies:
Three stages in Deformation
Deformation
Forc
e
Elastic DeformationPlastic Deformation
Fracture
If there is no force, the object returns to its rest shape
The object cannot return to its rest shape. (The shape change becomes permanent…)
Linear Elastic Deformation
DeformationFo
rce
Elastic DeformationForce is linearly proportional to deformation.
The deformation-force curve is a straight line.
Commonly known as Hooke’s law!
A 1D Spring
L0 L0 d
Rest Deformed
F = −k(L − L0 )
F = −C LL0
−1
Constant Strain
What is Strain?• A strain is the description of the deformation.• When strain is zero, no deformation (L=L0).• When strain gets bigger, larger deformation.• There are many ways to describe the deformation. • So the strain definition is not unique.
LL0
−1
Cauchy Strain
lnLL0
Log Strain
L2
L02 −1
Green Strain
1−L0
2
L2
Euler-Almansi Strain
Ideal Metal Spring Commonly used in 2D/3D
2D Strain• How to define strain for 2D deformation?• Any point x in the rest shape is deformed into the new
position y: y=Fx+b.• F is a matrix (Deformation Gradient).• b is a translation vector.• If F is orthonormal, what deformation is it?
x0 x1
x2
y0
y1
y2
Basic Assumption:y=Fx + b
2D Strain• The goal is to get the deformation gradient matrix F.
x0 x1
x2
y0
y1
y2
Basic Assumption:y=Fx + b
Since y0=Fx0 + by1=Fx1 + by2=Fx2 + b
y1-y0=F(x1-x0), y2-y0=F(x2-x0)
[y1-y0, y2-y0]=F[x1-x0, x2-x0]
F=[y1-y0, y2-y0] [x1-x0, x2-x0]-1
2D Strain• Once we get F, we can get the Green strain as:
• Intuitively, it is the 1D green strain in u, v, and uv direction.
x0 x1
x2
y0
y1
y2
Basic Assumption:y=Fx + b
G =12
FTF − I( )= εuu εuv
εuv εvv
u
v
uv
2D Stress• Question: what about force?• Force exists in every direction and it varies.• A stress S is a matrix that describes of forces per
unit area.
y0
y1
y2
f f
f
f
Strain-Stress Conversion
• 2D Hooke’s Law!
G =εuu εuv
εuv εvv
S =σ uu σ uv
σ uv σ vv
Strain Stress
σ uu
σ vv
σ uv
=
2µ + λ λλ 2µ + λ
µ
εuu
εvv
εuv
μ and λ are called Lamé constants.
From Stress to Force
x0 x1
x2
y0
y1
y2
y=Fx + b
d02
d10
d21
• Define dij as a vector perpendicular to edge ij:
• The force applied on vertex 0 is: dij =
−(yi − yj )
xi − x j
f0 = −12
FS d10 + d02( )
Cloth Animation
• A cloth piece is made of triangles.• In the plane of each triangle k, we
assume y=Fkx+bk.• After computing the force in the
2D plane, covert it back into the 3D space.
• This idea is known as Finite Element method.
• A triangle is a 2D element.
3D Soft Body Simulation• The same idea, except for everything is now
in 3D.
• Deformation gradient F, strain G, and stress Sare all 3-by-3 matrices!
x0 x1
x3
x2
y0
y1
y3
y2y=Fx + b
F=[y1-y0, y2-y0, y3-y0] [x1-x0, x2-x0, x3-x0]-1
From Stress to Force
• Define dijk as a vector perpendicular to triangle ijk:
• The force applied on vertex 0 is: dijk =
12
x j − xi( )× xk − xi( )
f0 = −13
FS d021 + d013 + d032( )
x0 x1
x3
x2
y0
y1
y3
y2y=Fx + b
2D Algorithm• For every vertex i
– fi=mg;• For every triangle ijk
– F=[y1-y0, y2-y0] [x1-x0, x2-x0]-1 ……… Deformation Gradient
– G=(FTF-I)/2; ……… Green Strain
– S=Strain_To_Stress(G) ……… Stress
– Fi+=-FS(dij+dki)/2 ……… get the force!
– Fj+=-FS(dij+djk)/2 ……… get the force!
– Fk+=-FS(djk+dki)/2 ……… get the force!
• For every vertex i– vi = vi *damping;– vi = vi + t * Force / mi;– xi = xi + t *vi;
3D Algorithm• For every vertex i
– fi=mg;• For every tetrahedron ijkl
– F=[y1-y0, y2-y0, y3-y0] [x1-x0, x2-x0, x3-x0]-1
– G=(FTF-I)/2; – S=Strain_To_Stress(G) ; – Fi+=-FS(dikj+dijl+dilk)/3;– …
• For every vertex i– vi = vi *damping;– vi = vi + t * Force / mi;– xi = xi + t *vi;
More details in http://physbam.stanford.edu/~fedkiw/papers/stanford2003-07.pdf