1
# Copyright (c) 2005 Johan Jansson (johanjan@math.chalmers.se)
2
# Licensed under the GNU GPL Version 2
4
# The bilinear form for classical linear elasticity (Navier)
5
# Compile this form with FFC: ffc Elasticity.form.
7
element = FiniteElement("Vector Lagrange", "tetrahedron", 1)
9
v = BasisFunction(element)
10
u = BasisFunction(element)
12
lmbda = Constant() # Lame coefficient
13
mu = Constant() # Lame coefficient
15
f = Function(element) # Source
18
d = element.shapedim()
21
return 0.5 * (grad(u) + transp(grad(u)))
24
Ee = 2.0 * mult(mu, e) + mult(lmbda, mult(trace(e), Identity(d)))
28
sigma = E(epsilon(u), lmbda, mu)
30
a = dot(sigma, epsilon(v)) * dx