cf. Ch. 26 Applications in Solid Mechanics, FEniCS book
First, let me point out my python script linelast01.py in my github repository SME:
https://github.com/ernestyalumni/SME/blob/master/linelast01.py
as I’ve implemented linear elasticity for the BoxMesh:
To the point, I was able to successfully calculate the displacement $u$ with LinearVariationalSolver for my solid mechanics problem. $u$ is a vector valued function Function(V) over the mesh. V = VectorFunctionSpace(mesh,’Lagrange’,2). What I can get is the stress tensor, a rank-2 symmetric tensor, with
sigma_f = 2musym(grad(u)) + lmbdatr(grad(u))Identity(3)
from the displacement u, after having solved u.
But what can I do to "plot" the stress tensor over the mesh? Should I multiply it with the displacement u to get something sensible to try to understand and make sense of the stress tensor? Is there something else I could multiply the stress tensor, other than the FacetNormal, say the unit vector field in the x direction, to get the different stress tensor entries over the mesh?
What I have so far is that I multiplied the stress tensor with the displacement, and again, with the displacement:
https://youtu.be/gkUTYqBP7JA
https://youtu.be/tvbV7v8IDkc
I want to make sense of what this means physically: does it make sense to say that this is the force, due to the displacement, at each point of the mesh, and the magnitude of the force, due to the displacement, in the direction of the displacement, respectively? What if I want to get just the pressure at each point of the mesh, due to this stress tensor? Should I somehow just get a surface area on the surface of my BoxMesh and “multiply” that with this stress tensor? How can I implement that in FEniCS?