Keywords

MSC (2010):

1 Problem Set up

We consider the static linear elasticity problem in a domain \(\varOmega \subset \mathbb {R}^d,\,d=2,3\). Given the body force vector field f on \(\varOmega \), the stress \(\sigma \) and the displacement u satisfy the constitutive and equilibrium equations

$$\begin{aligned} A\sigma = \epsilon (u), \quad {\text {div}}\,\sigma = f \quad \text {in } \varOmega . \end{aligned}$$
(1)

Here A(x) is the symmetric and positive definite compliance tensor, which in the case of an isotropic body is

$$\begin{aligned} A\sigma = \frac{1}{2\mu } \left( \sigma - \frac{\lambda }{2\mu + d\lambda }{\text {tr}}(\sigma )I \right) , \end{aligned}$$

where I is the \(d \times d\) identity matrix and \(\mu (x) > 0\) and \(\lambda (x) \ge 0\) are the Lamé coefficients, and \(\epsilon (u) = \frac{1}{2}\left( \nabla u + (\nabla u)^T\right) \). The boundary conditions are \(u = g \quad \text {on } \varGamma _D\), \(\sigma \,n = 0 \quad \text {on } \varGamma _N\), where \(\varGamma _D\cup \varGamma _N= \partial \varOmega \), n is the outward unit normal vector on \(\partial \varOmega \), and we assume for simplicity that \(\varGamma _D\ne \emptyset \). Throughout the paper \({\text {div}}\,\) is the usual divergence for vector fields, and it produces a matrix field when applied to a matrix field by taking the divergence of each row.

Let \(\mathbb {M}\) and \(\mathbb {N}\) be the spaces of real \(d\times d\) matrices and skew-symmetric matrices, respectively. Introducing the Lagrange multiplier \(\gamma \), a skew-symmetric matrix representing the rotation, to penalize the asymmetry of the stress tensor, we arrive at the weak formulation for (1): find \((\sigma , u, \gamma ) \in \mathbb {X}\times V \times \mathbb {W}\) such that

$$\begin{aligned} \left( A\sigma ,\, \tau \right) + \left( u,\, {\text {div}}\,\tau \right) + \left( \gamma ,\, \tau \right) = \langle g,\, \tau \, n\rangle _{\varGamma _D}, \quad \forall \tau \in \mathbb {X}, \end{aligned}$$
(2)
$$\begin{aligned} \left( {\text {div}}\,\sigma ,\, v\right) = \left( f,\, v\right) , \quad \forall v \in V, \end{aligned}$$
(3)
$$\begin{aligned} \left( \sigma ,\, \xi \right) = 0, \quad \forall \xi \in \mathbb {W}, \end{aligned}$$
(4)

where \(\mathbb {X}= \big \{ \tau \in H({\text {div}};\varOmega ,\mathbb {M}) : \tau \,n = 0 \text { on } \varGamma _N\big \}\), \(V = L^2(\varOmega , \mathbb {R}^d)\), and \(\mathbb {W}= L^2(\varOmega , \mathbb {N})\). The reason for considering a mixed formulation with weak stress symmetry is that its lowest order mixed finite element approximation developed in [3] is suitable for a local stress elimination via a quadrature rule, resulting in a cell-centered system for displacement (and the rotation). This approach is motivated by the multipoint flux mixed finite element method [11], as well as the multipoint stress approximation [8, 9].

2 Numerical Approximation

Consider a polygonal domain \(\varOmega \in \mathbb {R}^d\) and let \(\mathscr {T}_h\) be a finite element partition of \(\varOmega \) consisting of triangles in two dimensions and tetrahedra in three dimensions. For any element \(E \in \mathscr {T}_h\) there exists a bijection mapping \(F_E: \hat{E}\rightarrow E\), where \(\hat{E}\) is a reference element. Denote the Jacobian matrix by \(DF_E\) and let \(J_E = {\text {det}} (DF_E)\). Let \(\mathbb {X}_h \times V_h \times \mathbb {W}_h^{l} = \left( \text {BDM}_1\right) ^d \times \left( \text {P}_0\right) ^d \times \left( \text {P}_l\right) ^{d\times d, skew}\), \(l =0,1 \subset \mathbb {X}\times V \times \mathbb {W}\), where \(\text {BDM}_1\) is the lowest order Brezzi-Douglas-Marini space [5]. On the reference triangle these spaces are defined as

$$\begin{aligned} \hat{\mathbb {X}}_h(\hat{E}) = \text {P}_1(\hat{E})^2 \times \text {P}_1(\hat{E})^2 = \begin{pmatrix} \alpha _1 \hat{x}+ \beta _1 \hat{y}+ \gamma _1 &{} \, \alpha _2 \hat{x}+ \beta _2 \hat{y}+ \gamma _2 \\ \alpha _3 \hat{x}+ \beta _3 \hat{y}+ \gamma _3 &{} \, \alpha _4 \hat{x}+ \beta _4 \hat{y}+ \gamma _4 \end{pmatrix}, \\ \hat{V}_h(\hat{E}) = \text {P}_0(\hat{E}) \times \text {P}_0(\hat{E}), \quad \hat{\mathbb {W}}_h^l(\hat{E}) = \begin{pmatrix} 0 &{} p \\ -p &{} 0 \end{pmatrix},\, p\in \text {P}_l(\hat{E}) \text{ for } l = 0,1. \end{aligned}$$

The definition of the spaces on tetrahedra is obtained naturally from the one above. The corresponding spaces on any element \(E \in \mathscr {T}_h\) are defined via the transformations, for \(\chi \in \mathbb {X}_h\), \(v \in V_h\), and \(w \in \mathbb {W}_h^l\),

$$\begin{aligned} \chi \leftrightarrow \hat{\chi } : \chi = \frac{1}{J_E} DF_E \hat{\chi } \circ F_E^{-1}, \quad v \leftrightarrow \hat{v} : v = \hat{v} \circ F_E^{-1}, \quad w \leftrightarrow \hat{w} : w = \hat{w} \circ F_E^{-1}. \end{aligned}$$

The mixed finite element approximation of (2)–(4) is shown to be stable and first order accurate for all of variables in their natural norms in [3] (\(l=0\)) and [7] (\(l=1\)). The drawback is that the resulting algebraic system is a two-level saddle point system with three coupled variables, and thus expensive to solve. We next propose a quadrature rule that allows for local elimination of the stresses and rotations which leads to a cell-centered displacement-rotation, or further, displacement-only system.

A quadrature rule. We employ a trapezoidal-type quadrature rule for the stress bilinear form. For \(\chi ,\,\tau \in \mathbb {X}_h\), define

$$ (A\chi ,\tau )_Q = \sum _{E \in \mathscr {T}_h} (A\chi ,\tau )_{Q,E}, \quad (A\chi ,\tau )_{Q,E} = \frac{|E|}{s} \sum _{i=1}^{s} A(\mathbf {r}_i)\chi (\mathbf {r}_i):\tau (\mathbf {r}_i), $$

where \(s=3\) on triangles and \(s=4\) on tetrahedra. In the case of linear rotations, a similar quadrature rule is employed for the stress-rotation bilinear forms.

Two multipoint stress mixed finite element methods. We seek \(\sigma _h \in \mathbb {X}_h,\, u_h \in V_h\) and \(\gamma _h \in \mathbb {W}_h^l\), \(l = 0,1\), such that

$$\begin{aligned} (A\sigma _h,\tau )_Q + (u_h,{\text {div}}\,{\tau }) + (\gamma _h,\tau )_Q&= \langle g,\, \tau \,n\rangle _{\varGamma _D},&\tau&\in \mathbb {X}_h, \end{aligned}$$
(5)
$$\begin{aligned} ({\text {div}}\,\sigma _h,v)&= (f,v),&v&\in V_h, \end{aligned}$$
(6)
$$\begin{aligned} (\sigma _h,\xi )_Q&= 0,&\xi&\in \mathbb {W}_h^l. \end{aligned}$$
(7)

We note that the quadrature rule in \((\gamma _h,\tau )_Q\) and \((\sigma _h,\xi )_Q\) is applied only for \(l=1\). It is in fact exact for \(l=0\). We refer to the methods with \(l=0\) and \(l=1\) as the MSMFE-0 and the MSMFE-1 method, respectively. The well-posedness of (5)–(7) can be established using the classical Babuŝka-Brezzi conditions [6], which in our case are as follows:

(S1) :

There exists a constant \(c>0\) such that

$$\begin{aligned} c\Vert \tau \Vert _{{\text {div}}}^2 \le \left( A\tau ,\, \tau \right) _{Q} \text{ for } \tau \in \mathbb {X}_h \text{ s.t. } \left( {\text {div}}\,\tau ,\, v\right) + \left( \tau ,\, \xi \right) _Q = 0, \, \forall (v,\xi ) \in V_h\times \mathbb {W}_h^l, \end{aligned}$$
(S2) :

There exists \(\beta >0\) such that

$$\begin{aligned} \inf _{0\ne (v,\xi )\in V_h\times \mathbb {W}_h^l } \sup _{0\ne \tau \in \mathbb {X}_h} \frac{\left( {\text {div}}\,\tau ,\, v\right) + \left( \tau ,\, \xi \right) _Q}{\Vert \tau \Vert _{{\text {div}}} \left( \Vert v\Vert + \Vert \xi \Vert \right) } \ge \beta . \end{aligned}$$

Here \(\Vert \cdot \Vert _{{\text {div}}}\) and \(\Vert \cdot \Vert \) denote the \(H({\text {div}};\varOmega )\) and the \(L^2(\varOmega )\) norms, respectively. Condition (S1) can be easily established by showing that \(\left( A\tau ,\, \tau \right) _{Q}\) is equivalent to \(\Vert \tau \Vert ^2\), see, e.g., [11]. Condition (S2) has been shown in [3, 4] for \(l=0\) and in [2] for \(l=1\). The latter case is challenging, due to the presence of the quadrature rule. It requires inf-sup stability for the bilinear form \(\left( {\text {div}}\,q,\, w\right) _Q\) for the Taylor-Hood \(\text {P}_2-\text {P}_1\) spaces. This is shown in [2] using a macro-element argument motivated by [10].

Fig. 1
figure 1

Finite elements and stress degrees of freedom sharing a vertex (left) and cell-centered stencil (right)

Reduction to a cell-centered scheme. The algebraic system that arises from the (5)–(7) is of the form

$$\begin{aligned} \begin{pmatrix} A_{\sigma \sigma }&{} A_{\sigma u}^T &{} A_{\sigma \gamma }^T \\ A_{\sigma u}&{} 0 &{} 0 \\ A_{\sigma \gamma }&{} 0 &{} 0 \end{pmatrix} \begin{pmatrix} \sigma \\ u \\ \gamma \end{pmatrix} = \begin{pmatrix} g \\ f \\ 0 \end{pmatrix}, \end{aligned}$$

where \((A_{\sigma \sigma })_{ij} = (A\tau _i,\tau _j)_Q\), \((A_{\sigma u})_{ij} = ({\text {div}}\,\tau _i, v_j)\) and \((A_{\sigma \gamma })_{ij} = (\tau _i,\xi _j)_Q\). It is known [5, 6] that the degrees of freedom for \(\text {BDM}_1\) can be chosen to be the values of the normal fluxes at any d points on each edge (face) \(\hat{e}\) of the reference element \(\hat{E}\). This naturally extends to normal stresses in our case of \(\text {BDM}_1 \times \text {BDM}_1\). We choose these points to be the vertices of \(\hat{e}\). Let us consider any interior vertex \(\mathbf {r}\) and suppose that it is shared by l elements \(E_1,...,E_m\) as shown in Fig. 1 with \(m = 4\). Let \(e_1,...,e_k\) be the edges (faces) that share the vertex \(\mathbf {r}\) and let \(\tau _1,...,\tau _{d\, k}\), be the stress basis functions on these edges (faces) associated with the vertex \(\mathbf {r}\). Denote the corresponding values of the normal components of \(\sigma _h\) by \(\sigma _1,...,\sigma _{d\,k}\). Note that for for the sake of clarity the normal stresses are drawn at a distance from the vertex. The quadrature rule \((A\tau _i,\tau _j)_Q\) decouples \(\sigma _1,...,\sigma _{d\,k}\) from the rest of the stress degrees of freedom. As a result, the matrix \(A_{\sigma \sigma }\) is block-diagonal with \(d\, k \times d\, k\) blocks associated with the mesh vertices. Due to (S1), these local blocks are symmetric and positive definite blocks. Hence, eliminating \(\sigma \) leads to a cell-centered displacement-rotation system

$$\begin{aligned} \begin{pmatrix} A_{\sigma u}A_{\sigma \sigma }^{-1}A_{\sigma u}^T &{} A_{\sigma u}A_{\sigma \sigma }^{-1}A_{\sigma \gamma }^T \\ A_{\sigma \gamma }A_{\sigma \sigma }^{-1}A_{\sigma u}^T &{} A_{\sigma \gamma }A_{\sigma \sigma }^{-1}A_{\sigma \gamma }^T \end{pmatrix} \begin{pmatrix} u \\ \gamma \end{pmatrix} = \begin{pmatrix} \tilde{f} \\ \tilde{h} \end{pmatrix}. \end{aligned}$$
(8)

Further reduction is possible in the case of MSMFE-1, \(l=1\), where the quadrature rule \((\tau _i,\xi _j)_Q\) results in a block-diagonal rotation matrix \(A_{\sigma \gamma }A_{\sigma \sigma }^{-1}A_{\sigma \gamma }^T\) with \(d(d-1)/2 \times d(d-1)/2\) blocks associated with mesh vertices. It is symmetric and positive definite, due to (S2). Hence, local elimination of the rotation in (8) results in a displacement-only cell-centered system

$$\begin{aligned} (A_{\sigma u}A_{\sigma \sigma }^{-1}A_{\sigma u}^T - A_{\sigma u}A_{\sigma \sigma }^{-1}A_{\sigma \gamma }^T (A_{\sigma \gamma }A_{\sigma \sigma }^{-1}A_{\sigma \gamma }^T)^{-1} A_{\sigma \gamma }A_{\sigma \sigma }^{-1}A_{\sigma u}^T)u = \hat{f}. \end{aligned}$$
(9)

The cell-centered stencil in (8) and (9) is shown in Fig. 1 (right). The displacements (and rotations) in each element E are coupled to the displacements (and rotations) in all elements that share a vertex with E.

Error estimates. As shown above, the MSMFE-0 and MSMFE-1 methods allow to eliminate locally the stress (and rotation) variables, thus significantly reducing the size of the global problem. The following result from [2] addresses the accuracy of the methods. First-order convergence is obtained for all variables in their natural norms. Moreover, the computed displacement is \(h^2\)-close to the true displacement when measured at the center of mass of each element.

Theorem 1

If \(A\in W^{1,\infty }(\varOmega )\), then

$$\begin{aligned} \Vert \sigma -\sigma _h\Vert +\Vert u -u_h \Vert +\Vert \gamma -\gamma _h\Vert \le Ch(\Vert \sigma \Vert _1+\Vert u\Vert _1 + \Vert \gamma \Vert _1). \end{aligned}$$
(10)

Moreover, if \(A\in W^{2,\infty }(\varOmega )\), then

$$\begin{aligned} \Vert Q_h u- u_h \Vert \le Ch^2\left( \Vert \sigma \Vert _1 + \Vert {\text {div}}\,\sigma \Vert _1 +\Vert \gamma \Vert _1\right) , \end{aligned}$$
(11)

where \(Q_h\) denotes the \(L^2\)-projection onto the space \(V_h\).

3 Numerical Results

We present several numerical tests confirming the theoretical convergence rates and illustrating the behavior of the method. The first two examples test convergence on the unit hypercube in 2 and 3 dimensions, respectively, while the last example models a pulley under centripetal load. For the first two examples, the boundary conditions are Dirichlet on the entire boundary and the analytical solution is given. All tests have been performed using the FEniCS finite element package [1].

Example 1

We solve problem (1) with a given displacement solution

$$ u = \begin{pmatrix} \cos (2\pi xy)\sin (\pi x)\sin (\pi y) \\ \cos (2\pi xy)\sin (2\pi x)\sin (2\pi y) \end{pmatrix} $$

on the unit square. The Lamé parameters are set to be \(\lambda = 123.0\) and \(\mu = 79.3\). The computational grid is obtained by a Delauney triangulation of the given domain on several levels of refinement. The computed displacement with the MSMFE-1 method on the finest level \(h = 1/64\) is shown in Fig. 2 (left). We present the relative errors and convergence rates for the MSMFE-0 and MSMFE-1 methods in Tables 1 and 2, respectively. As expected from the theory, both methods exhibit at least linear convergence for all variables in their natural norms, with a quadratic convergence for the displacement error computed at the cell-centers. We also note that the rotation error converges with order \(O(h^{1.5})\) for the MSMFE-1 method, which is due to the use of a \(\text {P}_1\) finite element space for this variable.

Fig. 2
figure 2

Computed displacement on the finest mesh with the MSMFE-1 method in Example 1 left and Example 2 right

Table 1 Relative errors computed with the MSMFE-0 method for Example 1
Table 2 Relative errors computed with MSMFE-1 method for Example 1

Example 2

For the second test, we model a simultaneous twisting and compression of the unit cube, with a given displacement solution:

$$ \begin{pmatrix} -0.1(e^x - 1)\sin (\pi x)\sin (\pi y) \\ -(e^x - 1)(y - \cos (\frac{\pi }{12})(y-0.5) + \sin (\frac{\pi }{12})(z-0.5)-0.5) \\ -(e^x - 1)(z - \sin (\frac{\pi }{12})(y-0.5) - \cos (\frac{\pi }{12})(z-0.5)-0.5) \end{pmatrix}. $$

We allow the Young’s modulus to change over the domain as \(E = e^{4x}\) and take the Poisson ratio \(\nu = 0.2\). The Lamé parameters are obtained from the relationships \(\lambda = \frac{E\nu }{(1+\nu )(1-2\nu )}\) and \(\mu = \frac{E}{2(1+\nu )}\). The computed displacement with the MSMFE-1 method on the finest level \(h = 1/32\) is shown in Fig. 2 (right). The relative errors and convergence rates obtained by the MSMFE-0 and MSMFE-1 methods, as shown in Tables 3 and 4, respectively, behave similarly to the two-dimensional Example 1 (Tables 1 and 2).

Table 3 Relative errors computed with MSMFE-0 method for Example 2
Table 4 Relative errors computed with MSMFE-1 method for Example 2
Fig. 3
figure 3

Stress solution magnitude of the MSMFE-1 method left and a non-mixed method right for Example 3

Example 3

The last example is from the FEniCS repository and it models a pulley under centripetal load given by

$$ f = \begin{pmatrix} \rho \omega ^2 x,&\rho \omega ^2 y,&0 \end{pmatrix}', $$

with rotation rate \(\omega = 10\) (rad / s) and mass density \(\rho = 300\) (\(kg/m^3\)). The displacement is set to be zero at the shaft of the pulley, while zero traction boundary conditions are enforced on the rest of the boundary. We compare the computed stress of the MSMFE-1 method to the one obtained by solving the classical displacement formulation for linear elasticity, with a post-processing step to recover the stress, see Fig. 3). For the sake of space, we omit the displacement solutions as they are visually of equal quality. However, we observe smoother approximation of the stress variable provided by the MSMFE-1 method, as the method computes a locally conservative H-div approximation and does not require a numerical differentiation, hence avoiding extra loss of accuracy.