- #1
alienspy77
- 5
- 0
Hi, I've been looking into ways to model fracture in real-time and i ran into a few papers on the net, one was by a few people from MIT compsci lab that seemed to fit what i was trying to do very well. However some of the math in it is a bit involved. The link to the paper is, for instance, graphics.cs.yale.edu/julie/pubs/Fracture.pdf .
So the formulation of the model goes approximately like this:
u [u1 u2 u3] - spatial coordinates of the undeformed object point in world coords
deformation is a function p( u ) = [p1, p2, p3] - maps undeformed world to deformed world coords
Green's tensor is Ju(p)*JuTransposed(p) - I.
Ju( p ) is the jacobian of the vector function p with respect to u
hooke's law relates stress sigma to strain e. for isotropic materials it can be expressed as
sigma = 2 mu e + lambda trace(e)* I
sigma is the stress tensor, e is strain tensor
eta = 0.5 trace( sigma * e ) - elastic potential energy
total elastic potential is integral of eta over the body volume
energy conservation states that internal work (elastic potential) has to be equal to the external work done by the external forces
we want to solve for deformation function p given the external force field.
our FEM formulation approximates function p as piecewise linear within tetrahedral elements
linear deformations yield constant strain and stress tensors within each element therefore tensors can be moved outside of any integration over an element's volume
we assume constant strain tetrahedra and use barycentric coords for interpolating within them
m = [m1, m2, m3, m4] - coords of the 4 nodes of a tetrahedron in undeformed material coordinates
x1, x2, x3, x4 - deformed coords for the same points
b = [b1, b2, b3, b4] - barycentric coords in terms of element's nodal positions in the undeformed frame
thus [u,1] = [m,1] * b - mapping from barycentric to undeformed world coordinates
we use the same barycentric coordinates b to identify u with p( u ), given that we know x1...x4
[p,1] = [x,1] * b
we can combine the relations above to form a direct mapping p( u )
p(u) = [x,1]*beta*[u,1], where beta = inv( [m,1] )
this defines the deformation function p, allowing the computation of the strain tensor e, stress tensor sigma and the potential density eta. these turn out to be constant within each element
the elastic force on the ith node fi is defined as the partial derivative with respect to xi of the elastic potential density eta, integrated over an element's volume
this amounts to
fi = nu/2 * beta * G * sigma * Gtranspose * beta_transpose * xi
where nu is the element's volume in the undeformed coord frame and
G = [ [ 1 0 0 ] [ 0 1 0 ] [ 0 0 1 ] [ 0 0 0 ] ] (3x4 matrix)
-------------
while i have this written out there is a number of things i don't quite understand, if someone could help me figure this out i'd appreciate that greatly.
First, what's the intuition behind the elastic potential density? Where does that formula (eta = 1/2 Trace( sigma * e ) come from?
Second, how do they arrive to the formula for the nodal forces? They say they integrate the elastic potential's derivative over the element's volume but how would i go about actually writing that out? It seems the expression for eta ends up to be a fourth degree polynomial of the components of x. Are they integrating eta over the tetrahedron first and then differentiating the result or are they integrating the derivative? Whats the physical meaning of that operation? How do i go about writing that integral out?
I know this might be a lot of questions to ask but i really want to figure this one out :)
So the formulation of the model goes approximately like this:
u [u1 u2 u3] - spatial coordinates of the undeformed object point in world coords
deformation is a function p( u ) = [p1, p2, p3] - maps undeformed world to deformed world coords
Green's tensor is Ju(p)*JuTransposed(p) - I.
Ju( p ) is the jacobian of the vector function p with respect to u
hooke's law relates stress sigma to strain e. for isotropic materials it can be expressed as
sigma = 2 mu e + lambda trace(e)* I
sigma is the stress tensor, e is strain tensor
eta = 0.5 trace( sigma * e ) - elastic potential energy
total elastic potential is integral of eta over the body volume
energy conservation states that internal work (elastic potential) has to be equal to the external work done by the external forces
we want to solve for deformation function p given the external force field.
our FEM formulation approximates function p as piecewise linear within tetrahedral elements
linear deformations yield constant strain and stress tensors within each element therefore tensors can be moved outside of any integration over an element's volume
we assume constant strain tetrahedra and use barycentric coords for interpolating within them
m = [m1, m2, m3, m4] - coords of the 4 nodes of a tetrahedron in undeformed material coordinates
x1, x2, x3, x4 - deformed coords for the same points
b = [b1, b2, b3, b4] - barycentric coords in terms of element's nodal positions in the undeformed frame
thus [u,1] = [m,1] * b - mapping from barycentric to undeformed world coordinates
we use the same barycentric coordinates b to identify u with p( u ), given that we know x1...x4
[p,1] = [x,1] * b
we can combine the relations above to form a direct mapping p( u )
p(u) = [x,1]*beta*[u,1], where beta = inv( [m,1] )
this defines the deformation function p, allowing the computation of the strain tensor e, stress tensor sigma and the potential density eta. these turn out to be constant within each element
the elastic force on the ith node fi is defined as the partial derivative with respect to xi of the elastic potential density eta, integrated over an element's volume
this amounts to
fi = nu/2 * beta * G * sigma * Gtranspose * beta_transpose * xi
where nu is the element's volume in the undeformed coord frame and
G = [ [ 1 0 0 ] [ 0 1 0 ] [ 0 0 1 ] [ 0 0 0 ] ] (3x4 matrix)
-------------
while i have this written out there is a number of things i don't quite understand, if someone could help me figure this out i'd appreciate that greatly.
First, what's the intuition behind the elastic potential density? Where does that formula (eta = 1/2 Trace( sigma * e ) come from?
Second, how do they arrive to the formula for the nodal forces? They say they integrate the elastic potential's derivative over the element's volume but how would i go about actually writing that out? It seems the expression for eta ends up to be a fourth degree polynomial of the components of x. Are they integrating eta over the tetrahedron first and then differentiating the result or are they integrating the derivative? Whats the physical meaning of that operation? How do i go about writing that integral out?
I know this might be a lot of questions to ask but i really want to figure this one out :)