1 Introduction

In this paper, we first generalize the previously introduced framework of finite element systems (FES) [26, 35] so that it can treat, in particular, elasticity problems, and then provide concrete examples of finite element spaces, some old and some new, that fit the framework.

The general framework provides an approach to finite element discretizations of sections of vector bundles, and complexes thereof, in particular differential forms with values in a given vector bundle. We make some comments about curvature, but most of the paper concerns the case of flat bundles. For applications in elasticity, the fiber can be identified as the space rigid motions.

In space dimension 2, one can distinguish between two differential complexes related to elasticity, which are formal adjoints of each other and give priority to stresses and strains, respectively. For the stress complex (62), we can check that variants of the spaces defined in [55] and [4] fit the framework. For the strain complex (64), we introduce, also within the framework, some new finite element spaces. They model symmetric 2-tensors (metrics) with a good Saint-Venant operator (linearized curvature).

In the obtained finite element complexes, rigid-motion-like degrees of freedom play a key role, at every index. The FES framework stresses this design principle and relates it to the interpretation of elasticity in terms of rigid motion valued fields.

Defining discrete spaces of metrics with good curvature in dimension 2 should be useful, in view of the importance of curved surfaces in several branches of mathematics, both pure and applied, whatever the distinction is. Such applications will be explored elsewhere. Another motivation for this work was to prepare the way for similar constructions in higher dimensions, especially 3 (with classical elasticity in mind) and 4 (with general relativity in mind).

Previous work on FES Until now, the FES framework has been formulated in order to discretize de Rham complexes. It has been used to define finite element complexes of differential forms on polyhedral meshes [26], accommodate upwinded finite element complexes containing exponentials [28, 33], give new presentations of known elements [38] and to define elements with minimal dimension [30] under various constraints (such as containing given polynomials).

The regularity of the differential forms, in the above-mentioned works, was \({\mathrm {L}}^2\) with exterior derivative in \({\mathrm {L}}^2\), and the defined finite elements were natural generalizations of, in particular, the Raviart–Thomas–Nédélec (RTN) spaces [63, 70]. The continuity is thus partial, and can be expressed as singlevaluedness of pullbacks to interfaces, corresponding, for vector fields, to continuity in either tangential or normal directions.

In [35], we extended the FES framework so as to be able to impose stronger interelement continuity. For instance, for a conforming discretization of the Stokes equation, one would like to have spaces of fully continuous vector fields, satisfying a commuting diagram with respect to the divergence operator. For de Rham sequences of higher regularity (\({\mathrm {H}}^1\) and, if desired, exterior derivative in \({\mathrm {H}}^1\)), the required continuity can be expressed as singlevaluedness of all components of the differential form and, if desired, of its exterior derivative too, on interfaces. This led us, in [35], to define FE complexes starting with the Clough–Tocher element, which is of class \({\mathrm {C}}^1\), instead of, say, Lagrange elements, which are of class \({\mathrm {C}}^0\). This provided the first conforming polynomial composite Stokes element in dimension 3 (and higher), with piecewise constant divergence and the degrees of freedom of [16]. The latter seem to be the natural ones for lowest order approximations.

FE, MFE, FEEC, VEM Recall Ciarlet’s definition of a finite element (FE), as a space equipped with degrees of freedom [41].

For mixed finite element methods (MFE), pairs of finite element spaces that are compatible in the sense of Brezzi [21] should be identified. A particularly convenient tool for this purpose has been the so-called commuting diagram property, see for instance [72] page 552 and 570 and compare with [17] §8.4 and §8.5. It can sometimes be derived from a commutation property of the interpolators associated with the degrees of freedom. In particular, in [64], finite element \({{\,\mathrm{grad}\,}}-{{\,\mathrm{curl}\,}}-{{\,\mathrm{div}\,}}\) complexes were presented with degrees of freedom providing commuting diagrams.

Arbitrary order finite element complexes of differential forms were defined in [52]. Whitney forms [80, 81] and the RTN spaces appear as special cases (lowest order—arbitrary dimension, and arbitrary order—low dimension, respectively). This connection between numerical methods and differential topology was first pointed out in [19]. Computational electromagnetics has been one of the main motivations [20, 53, 65]. Its interpretation in terms of differential forms is quite clearcut compared with the case for, say, computational fluid dynamics.

Systematically developing the theory of finite elements in terms of differential complexes equipped with commuting projections was advocated in [2]. Relating de Rham complexes to differential complexes appearing in elasticity, and viewing both as special cases of complexes of Hilbert spaces, has lead to the finite element exterior calculus (FEEC) [3, 7, 9].

Stability of numerical methods is, in many cases, equivalent to the existence of projections onto the finite element spaces, satisfying commuting diagrams, and having appropriate boundedness or compactness properties [7, 40]. Uniformly bounded commuting projections can often be obtained from the interpolator associated with degrees of freedom, by a smoothing procedure [7, 25, 37, 39, 73] (in chronological order of submission).

The FES framework downplays the role of degrees of freedom and stresses that, for a finite element space on a cell, there are implicit finite element spaces on the subcells. The claim is that making these spaces explicit has numerous benefits. For instance, it suggests defining FE spaces recursively, starting with low-dimensional cells, using some extension procedure, such as harmonic extension [26]. Thus the FES framework offers more design principles for FE spaces than does FEEC.

The recursive construction technique is also basic to the Virtual Element Method (VEM) [14]. VEM \({{\,\mathrm{grad}\,}}-{{\,\mathrm{curl}\,}}-{{\,\mathrm{div}\,}}\) complexes are constructed in [15]; for an interpretation as a FES of differential forms, valid in arbitrary dimension, see §2.1 in [30]. Notice that [15] is based on non-homogeneous harmonic extensions, which produces quite large spaces compared with the minimal ones [30]. Harmonic extensions with respect to a modified metric are used in [28, 33]. In [32], harmonic extensions with respect to a flat metric but a nonzero connection form are used. This illustrates that the FES framework can accommodate FE spaces constructed as solutions of certain PDEs, where it is not necessary to have explicit solution formulas in order to be able to compute with them.

FES principles: restrictions, differentials and cochains In FES, spaces are posited on cells of all dimensions. Interelement continuity is expressed through certain restriction operators, from spaces on cells to spaces on subcells. The spaces on the subcells can also be arranged in complexes, for certain induced differential operators. The restriction operators and the induced differential operators must satisfy commutation relations to define a system. For a given FES, a condition of compatibility (Definition 11), expressed as exactness properties of the restrictions and the induced differentials, ensures the existence of good degrees of freedom and in particular that the harmonic interpolator is well defined and commutes with the differential operators.

In [26], concerning de Rham complexes of low regularity (\({\mathrm {L}}^2\) with exterior derivative in \({\mathrm {L}}^2\)), the relevant restriction operators were pullback by inclusion maps, and the induced differential operators were, again, the exterior derivative. In [35], to ensure \({\mathrm {H}}^1\) regularity, the restriction operators could remember all components of the differential forms on the subcell, and possibly of the exterior derivative as well (if it is required to be \({\mathrm {H}}^1\)). The induced differential operators now acted on all this information. Thus appeared some new vector bundles on subcells, linked by differential operators that were not exactly the exterior derivative on the subcell: they retain additional information about the ambient cell. We therefore, for the framework, considered general complexes of spaces, not just complexes of differential forms.

General degrees of freedom are not essential in FES, but they are certainly accommodated and sometimes very convenient. On the other hand certain degrees of freedom are paramount for the development of the theory. For de Rham complexes, these degrees of freedom are the integration of k-forms on the k-dimensional cells of the mesh. This gives rise to the de Rham map, which maps from differential forms to (real valued) cellular cochains; it commutes with the differentials.

For elasticity complexes, we contend that cellular cochains with coefficients in rigid motions are the right analogue. More precisely we introduce, for each cell of each dimension, a space which is naturally isomorphic to the space of rigid motions. Cochains with coefficients in these spaces form a complex. A generalized de Rham map from elasticity fields to such cochains with coefficients is then defined and shown to commute.

Finite element elasticity complexes In dimension 2, for elasticity problems, the stress complex is implicitly used in [55] and made explicit in [4]. Since then, many more discrete stress complexes have been defined, both conforming [11] and non-conforming [8, 12]. See [54] and the references therein for more examples. See also the Hilbert complexes for elasticity of [1]. Notice that the stress complexes in [55] and [4] are composite and start with Clough–Tocher elements, whereas those in [11] are polynomial and start with Argyris elements.

For the systematic design of discrete elasticity complexes, a link between de Rham complexes and elasticity complexes, known as the BGG construction [45], has been developed [5, 6]. In [6], known finite element de Rham complexes were tensorized with vectors in order to get vector valued de Rham complexes. Under a surjectivity condition (see page 58), the diagram chase then yielded new spaces for the elasticity complexes.

The finite element complexes defined here behave naturally with respect to the BGG diagram chase. That is, we can define finite element spaces for some interlinked vector-valued de Rham complexes, such that the diagram chase at the discrete level works exactly as at the continuous level: isomorphisms at the continuous level correspond to isomorphisms at the discrete level. One thus needs a large supply of discrete de Rham sequences, corresponding to different regularities, that match at different indices. While this can be dispensed of in the presentation of our elasticity elements, it was an important guiding principle towards their design and we have included remarks to this effect.

Finite element de Rham complexes of higher regularity have been constructed [46, 66]. See also [50, 51] for related Stokes elements. A motivation behind [34, 35] was to have enough such sequences to address elasticity through diagram chasing.

For elasticity complexes and related BGG diagram chases, the case of \({\mathrm {C}}^\infty \) regularity is well established in the literature, but the choice of Sobolev spaces is often not explicit. We introduce several Sobolev spaces for our complexes, many of which are not simple tensor products. There are several possible choices for each smooth complex. To obtain the stress complex, one can do the chase in (68) or (73). In the latter, the regularity is expressed with a differential operator that acts on columns, whereas the differentials of the complex act by rows. For the strain complex, we study two different regularities, corresponding to two different regularities in the diagram chase. Here also the regularity is expressed in terms of differential operators acting on columns as well as rows. A rationale behind our choice of Sobolev spaces is given in Remark 28.

Another tool we have developed for the purposes of constructing elasticity elements are Poincaré–Koszul operators for elasticity complexes [36]. The Cesaro–Volterra path integral is but one example.

It can be pointed out that since this paper was first submitted, polynomial \({{\,\mathrm{div}\,}}{{\,\mathrm{div}\,}}\) conforming symmetric matrix elements were found in [22]. Their complex, which is essentially a strain complex in our terminology, starts with a vectorial Hermite element, indicating supersmoothness at vertices. They have lower regularity than us.

Numerical methods for curvature problems For the general framework, the main novelty here, compared with [35], is that we introduce some generalizations of the de Rham maps. We are interested in discretizing sections of vector bundles. These are equipped with a connection. For applications in (linear) elasticity this connection is flat. We have implicitly linearized around the Euclidean metric, for which the Levi–Civita connection is flat, as well as other associated connections. But, for the definition of discrete vector bundles, we have also been mindful of situations where nonzero curvature is centre stage, and inspired by numerical methods developed for such problems:

  • Regge Calculus (RC) [71], a discrete approach to general relativity, can be interpreted in a finite element context [24, 27, 29] and extended to higher orders [60]. One then obtains, in dimension 2, strain complexes of low regularity: they end with discrete spaces containing measures, typically Dirac deltas at vertices. Here, on the contrary, the finite element fields are at least square integrable throughout the complexes. Notice also that, even though the Regge strain complexes are equipped with commuting projections, the degrees of freedom do not contain rigid motions. They are nevertheless natural: Regge metrics are determined by edge lengths (squared), at lowest order.

    A discrete Gauss–Bonnet theorem is valid for RC, as can be proved combinatorially, or by a smoothing technique as introduced in [29]. For the elements presented here, Gaussian curvature (linearized or not) is well defined by classical formulas, so that the Gauss–Bonnet theorem is immediate. While the regularity of Regge elements seems adapted to general relativity theory, higher regularity, as achieved here, could be important to other PDEs in Riemannian geometry, such as those treated in [13, 23, 42].

  • Lattice Gauge Theory (LGT) [82], as extended to a finite element context [31], was also at the back of our minds during this work. In LGT, one defines discrete connections and curvature, as well as a discrete Yang–Mills functional, but it is less clear what the discrete covariant exterior derivative and Bianchi identity should be. By contrast, for the discrete theory we develop here, both of these are explicit: the former is to some extent the basic building block, and the latter is obtained in Theorem 1.

    For the flat case, for which we introduce the FES framework, we prove a variant of the de Rham theorem (e.g. [69] §V.3.): the de Rham map induces isomorphisms on cohomology groups, from the space of global sections to the cochains with coefficients, see Theorem 2.

  • Exponential fitting. A role for covariant exterior derivatives in a FES context was also indicated in [28], defining upwinded complexes of differential forms, generalizing exponentially fitted methods. Such constructions have applications to PDEs describing for instance convection diffusion problems or band gaps in photonic crystals. See Remark 17 for further details.

Sheaves, differential geometry and formal theory of PDEs The FES framework can be interpreted as a discrete sheaf theory (see Remark 9). For our purposes, sheaf theory can be summarized as a framework for gluing fields that are defined piecewise. This is done in Sobolev spaces with the help of, in particular, partitions of unity, and in finite element spaces, by imposing various forms of continuity through interfaces in a mesh. Sheaves help express this analogy.

Discrete sheaf theory for various applications is also developed in [43, 48]. Sheaf theory is usually expressed in the language of categories, which also originates in algebraic topology. It has been suggested that this language, sometimes derided as ”abstract nonsense” (following Steenrod, with more or less affection), could be useful not only for other branches of mathematics [56], but for sciences in general [78].

What we refer to here as elasticity complexes are sometimes called Calabi complexes in differential geometry, whereas rigid motions correspond to Killing fields. Sheaf theoretic approaches to such, with applications to linearized gravity, have been considered, see [57].

Our discrete Bianchi identity, being combinatorially quite elementary, has precedents, of course. In particular, similar identities can be found in synthetic differential geometry [59]. This axiomatic approach to geometry grew out of topos theory [56, 61], introduced by Grothendieck to provide the ideal ”double bed” for the espousals of continuous and discrete theories. It remains to see if it will appeal to numerical analysis.

There is a formal theory of partial differential equations, couched in homological algebra and developed by, in particular, Spencer [77]. See e.g. [68, 75]. Perhaps our paper can hint towards a corresponding theory for finite element spaces. For instance: could there be master finite elements for the Spencer sequences, from which all specific examples could be deduced by diagram chases?

Though not necessary in order to express the end product, namely new finite element spaces, the above-mentioned philosophies (more specifically: homological approaches to differential operators and categorical approaches to geometry) were inspiring to us for developing them, even from a distance.

Outline The paper is organized as follows. In Sect. 1, we develop a theory for discrete flat vector bundles. Results concerning vector bundles with curvature are relegated to Sect. 2. In Sect. 3, we detail the framework of finite element systems, for a given discrete flat vector bundle. In Sect. 4, we provide background on elasticity, including relevant differential operators, differential complexes, the BGG diagram chase and Poincaré operators. In Sect. 5, we detail FES for the stress complex, detailing the main example of the Johnson–Mercier element. In Sect. 6, we detail FES for the strain complex, with two different regularities, providing the new examples of finite elements for strain tensors (metrics) with compatible Saint Venant operator (linearized curvature).

2 Discrete Flat Vector Bundles

2.1 Cellular Complexes and Cochains

Let \({\mathcal {T}}\) be a cellular complex. That is, a regular CW complex, with respect to bi-Lipschitz homeomorphisms. A cell is a subset with a bi-Lipschitz homeomorphisms to a unit ball of some finite dimension. A cellular complex is a set of cells (of all dimensions) such that the boundary of a cell is a union of cells.

If \(T, T'\) are cells in \({\mathcal {T}}\) we write \(T' \unlhd T\) to signify that \(T'\) is a subcell of T. Each cell of dimension at least one is supposed oriented. Given two cells T and \(T'\) in \({\mathcal {T}}\), their relative orientation is denoted \({{\,\mathrm{{\mathrm {o}}}\,}}(T,T')\). It is 0 unless \(T'\) is a codimension one subcell of T, in which case it is \(\pm 1\). The subset of \({\mathcal {T}}\) consisting of k-dimensional cells is denoted \({\mathcal {T}}^k\). The space of k-cochains is denoted \({\mathcal {C}}^k({\mathcal {T}})\) and consists of the maps from \({\mathcal {T}}^k\) to \({\mathbb {R}}\). In other words, a k-cochain assigns a real number to each cell of dimension k. Notice that \({\mathcal {C}}^k({\mathcal {T}})\) has a canonical basis indexed by \({\mathcal {T}}^k\).

The cellular cochain complex is denoted \({\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}})\). Its differential, also called the coboundary map, is denoted \(\delta : {\mathcal {C}}^k({\mathcal {T}}) \rightarrow {\mathcal {C}}^{k+1}({\mathcal {T}})\). Its matrix in the canonical basis is given by relative orientations.

All complexes considered in this paper are cochain complexes, in the sense that the differential increases the index.

2.2 Discrete Vector Bundles with Connection

Definition 1

(Discrete vector bundle with connection) A discrete vector bundle with connection L consists of the following data.

  • For each \(T \in {\mathcal {T}}\) we suppose that we have a vector space L(T). We call this a discrete vector bundle. We call L(T) the fiber of L at T.

  • Moreover, when \(T'\) is a codimension 1 face of T, we suppose that we have an isomorphism \({\mathsf {t} }_{TT'}: L(T') \rightarrow L(T)\), called the transport map from \(T'\) to T. We call this a discrete connection.

Remark 1

(comparison with Lattice Gauge Theory) This setup is at variance with the choices made in Lattice Gauge Theory (LGT). LGT was initially defined for cubical complexes [82]. An analogue for simplicial complexes was developed in [31]. There, a discrete vector bundle corresponds to a choice of vector space attached to vertices only, whereas we here associate a vector space to each cell, of every dimension, in \({\mathcal {T}}\). Moreover, in LGT, a discrete connection is defined only on edges, as a choice of isomorphism between the vector spaces attached to its two vertices; here the discrete connection has many more variables.

Definition 2

(Flatness of discrete connections) Let \(T \in {\mathcal {T}}\) have dimension at least 2. Whenever \(T''\) is a codimension 2 face of T, if we let \(T_0'\) and \(T_1'\) be the two codimension 1 faces of T which have \(T''\) as a common codimension 1 face, we require that the following diagram commutes:

(1)

Or, if one prefers:

$$\begin{aligned} {\mathsf {t} }_{TT'_0}{\mathsf {t} }_{T'_0T''} = {\mathsf {t} }_{TT'_1}{\mathsf {t} }_{T_1'T''}. \end{aligned}$$
(2)

For reasons that will appear later, we say that a discrete connection having this property is flat.

For instance, we can choose a fixed vector space V and let \({\mathsf {t} }_{TT'} = {\mathrm {id}}_V\). This defines a discrete vector bundle with a flat discrete connection. Discrete vector bundles of this form, for a choice of vector space V, will be called trivial discrete vector bundles. We may speak of the trivial discrete vector bundle modelled on V, to make the choice of V explicit.

In this setting, one defines a cochain complex with coefficients in L, denoted \({\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}}, L)\), as follows:

Definition 3

(Cochains with coefficients)

  • The space \({\mathcal {C}}^k({\mathcal {T}}, L)\) is nothing but \({\varPi }_{T \in {\mathcal {T}}^k} L(T)\), whose elements will be families \((u(T))_{T \in {\mathcal {T}}^k}\) such that for each \(T \in {\mathcal {T}}^k\), \(u(T) \in L(T)\). Such a u will be called a k-cochain with coefficients in L.

  • The differential \(\delta _{\mathsf {t} }^k: {\mathcal {C}}^k({\mathcal {T}}, L) \rightarrow {\mathcal {C}}^{k+1}({\mathcal {T}}, L) \) is defined by:

    $$\begin{aligned} (\delta _{\mathsf {t} }^k u)(T) = \sum _{T' \unlhd T} {{\,\mathrm{{\mathrm {o}}}\,}}(T,T') {\mathsf {t} }_{TT'} u(T'). \end{aligned}$$
    (3)

    The operator \(\delta _{\mathsf {t} }^{\scriptscriptstyle \bullet }\) will be called the discrete covariant exterior derivative.

We notice that we do indeed have a complex:

Lemma 1

The operators \(\delta _{\mathsf {t} }^{\scriptscriptstyle \bullet }\) on \({\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}}, L)\), satisfy:

$$\begin{aligned} \delta _{\mathsf {t} }^{k+1}\delta _{\mathsf {t} }^k = 0. \end{aligned}$$
(4)

Proof

This is a direct consequence of the commutativity (1), given what we know about relative orientations. \(\square \)

This definition can be used in particular when a vector space V has been chosen and we let \(L(T) = V\) for all \(T \in {\mathcal {T}}\) and \({\mathsf {t} }_{TT'} = {\mathrm {id}}_V\) for all \(T, T'\). This cochain complex will be denoted \({\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}}, V)\). With this notation, we have in particular that \({\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}}, {\mathbb {R}}) = {\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}})\), the standard cellular cochain complex introduced previously.

Remark 2

(on invertibility of transport operators) In Definition 1, we could allow \({\mathsf {t} }_{TT'}: L(T') \rightarrow L(T)\) to be just a morphism (not necessarily an isomorphism), and still get at complex \({\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}}, L)\) from (3). However, we have in mind situations where the transport operators \({\mathsf {t} }_{TT'}\) mimick the parallel transport associated with a connection on a vector bundle, and these are isomorphisms. Compare with [47] §I.4.7.

2.3 Transport Along Some Paths Within a Cell

We notice that when the discrete connection is flat, transport along paths within a given cell just depends on the endpoints. We will use the following more precise statement:

Lemma 2

Suppose \(T, T' \in {\mathcal {T}}\), and that \(T'\) is a codimension k face of T, for some \(k \ge 2\). Then all sequences \(T' \unlhd T_0 \unlhd \cdots \unlhd T_{k-1} \unlhd T\), where each term in this sequence is a codimension 1 subcell of the next, give the same map \({\mathsf {t} }_{TT_{k-1}} \cdots {\mathsf {t} }_{T_0 T'}\) from \(L(T')\) to L(T). This map will be denoted \({\mathsf {t} }_{T T'}\).

We could therefore make the following alternative description of a discrete vector bundle with connection:

Definition 4

(equivalent definition of flat discrete vector bundles) For each \(T \in {\mathcal {T}}\), we suppose that we have, as before, a vector space L(T). Moreover, when \(T' \unlhd T\), we suppose we have an isomorphism \({\mathsf {t} }_{TT'}: L(T') \rightarrow L(T)\). We require that \({\mathsf {t} }_{TT} = {\mathrm {id}}_{L(T)}\) and also that whenever \(T'' \unlhd T' \unlhd T\) we have \({\mathsf {t} }_{T T''} = {\mathsf {t} }_{TT'}{\mathsf {t} }_{T'T''}\).

2.4 Discrete Gauge Transformations

Suppose we have, for each \(T\in {\mathcal {T}}\), two choices of vector spaces denoted L(T) and \(L'(T)\). For \(T'\) a codimension 1 face of T, we suppose that we have transport maps \({\mathsf {t} }_{TT'}: L(T') \rightarrow L(T)\) as well as \({\mathsf {t} }_{TT'}': L'(T') \rightarrow L'(T)\). Under these circumstances we define an isomorphism from \((L, {\mathsf {t} })\) to \((L', {\mathsf {t} }')\) to be a family of isomorphims \(\theta _T: L(T) \rightarrow L'(T)\), one for each \(T\in {\mathcal {T}}\), such that:

$$\begin{aligned} \theta _T {\mathsf {t} }_{TT'} = {\mathsf {t} }_{TT'}' \theta _{T'}. \end{aligned}$$
(5)

Lemma 3

Under the above circumstances, \(\theta \) induces an isomorphism of complexes \({\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}}, L) \rightarrow {\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}}, L') \), defined simply by:

$$\begin{aligned} \theta : (u(T))_{T\in {\mathcal {T}}^k} \mapsto (\theta _T u(T))_{T\in {\mathcal {T}}^k}. \end{aligned}$$
(6)

Proof

Bijectivity is obvious. We prove that \(\theta \) is a cochain morphism (i.e. commutes with the differentials). We let \(\delta _{{\mathsf {t} }'}^{\scriptscriptstyle \bullet }\) be the cochain-map of \({\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}}, L')\), while \(\delta _{\mathsf {t} }^{\scriptscriptstyle \bullet }\) denotes that of \({\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}},L)\). We have, for \(u \in {\mathcal {C}}^k({\mathcal {T}}, L)\):

$$\begin{aligned} (\delta _{{\mathsf {t} }'}^{ k} \theta u)(T)&= \sum _{T'\unlhd T} {{\,\mathrm{{\mathrm {o}}}\,}}(T,T') {\mathsf {t} }_{TT'}' \theta _{T'} u(T'),\end{aligned}$$
(7)
$$\begin{aligned}&= \sum _{T'\unlhd T} {{\,\mathrm{{\mathrm {o}}}\,}}(T,T') \theta _T {\mathsf {t} }_{TT'} u(T'),\end{aligned}$$
(8)
$$\begin{aligned}&= (\theta \delta _{\mathsf {t} }^k u) (T), \end{aligned}$$
(9)

as required. \(\square \)

A family of isomorphisms \(\theta \) as above may also be referred to as a discrete gauge transformation. This terminology is used in particular when we have one discrete vector bundle L, but with two different choices of discrete connections \({\mathsf {t} }\) and \({\mathsf {t} }'\); in this case \(\theta _T\) will be an automorphism of L(T), for each T.

For \(T \in {\mathcal {T}}\), \({{\,\mathrm{Cl}\,}}(T)\) denotes the cellular complex consisting of all the subcells of T in \({\mathcal {T}}\).

Lemma 4

For each cell T in \({\mathcal {T}}\), the complex \({\mathcal {C}}^{\scriptscriptstyle \bullet }({{\,\mathrm{Cl}\,}}(T), L)\) (with coefficients) is isomorphic to \({\mathcal {C}}^{\scriptscriptstyle \bullet }({{\,\mathrm{Cl}\,}}(T), L(T))\) (with constant fiber). Explicitly, for each subcell \(S \unlhd T\), we let \(\theta _S : L(S) \rightarrow L(T)\) be the map \({\mathsf {t} }_{TS}\). Then \(\theta \) gives a gauge transformation from \((L, {\mathsf {t} })\) to \((L(T), {\mathrm {id}})\).

Proof

The requirement is that the following commutation relation holds for subcells \(S, S'\) of T such that \(S' \unlhd S\):

$$\begin{aligned} \theta _S {\mathsf {t} }_{SS'} = {\mathsf {t} }_{SS'}' \theta _{S'}. \end{aligned}$$
(10)

This can also be written:

$$\begin{aligned} {\mathsf {t} }_{TS} {\mathsf {t} }_{SS'} = {\mathrm {id}}_{L(T)} {\mathsf {t} }_{TS'}. \end{aligned}$$
(11)

This identity holds according to Lemma 2. \(\square \)

As a consequence we obtain:

Corollary 1

The sequence \({\mathcal {C}}^{\scriptscriptstyle \bullet }({{\,\mathrm{Cl}\,}}(T), L)\) is exact, except at index 0, where the kernel is isomorphic to L(T).

The preceding corrollary is local, in that it concerns a single cell \(T \in {\mathcal {T}}\). The cohomology of the global space \({\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}}, L)\) could be different from that of \({\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}}, L(T))\) (for any choice of a fixed \(T \in {\mathcal {T}}\)).

Remark 3

(classification of flat discrete vector bundles) Flat vector bundles over a manifold M, modulo gauge transformations, correspond to representations of the fundamental group of M, modulo conjugacy. For a precise statement, see for instance Theorem 13.2 in [79] (in the context of principal bundles). This seems to carry over to the discrete setting. The fundamental group of a cellular complex can be replaced by the so-called edgepath group (described in Chapter 3 in [76] for the case of simplicial complexes).

3 Discrete Vector Bundles with Curvature

We now make some comments on a generalization of the previous notion of vector bundle to the non-flat case. It is then useful to introduce a notion of curvature, which lives naturally on a cubical refinement of the original cellular complex. The discrete curvature turns out to satisfy a discrete Bianchi identity.

3.1 Cubes in the Barycentric Refinement

Consider now an n-dimensional cube. For definiteness, we consider the unit cube \([0,1]^n\) in \({\mathbb {R}}^n\) and denote it as S. We let be the canonical basis of \({\mathbb {R}}^n\).

The vertices of S can be indexed by the subsets of . For any subset U of , we let \(p_U\) be the vertex of S defined by:

$$\begin{aligned} p_U = \sum _{i \in U} e_i. \end{aligned}$$
(12)

Any face \(S'\) of S is uniquely determined by two vertices \(p_U\) and \(p_V\), with \(U \subseteq V\), such that the vertices of \(S'\) are exactly those of the form \(p_W\) for \(U \subseteq W \subseteq V\). Then we also have:

$$\begin{aligned} S' = \{ p_U + \sum _{i \in V \setminus U} \xi _i e_i \ : \ \forall i \in V \setminus U \quad \xi _i \in [0, 1] \}. \end{aligned}$$
(13)

Subsets of are partially ordered by inclusion, and this uniquely determines a partial ordering of the vertices. Then \(p_U\) is the smallest vertex of \(S'\) and \(p_V\) the largest.

Let T be a simplex. For each face \(T'\) of T we let \(b_{T'}\) be the isobarycenter of \(T'\) or, more generally, a point in the interior of \(T'\) (so a barycenter with respect to some strictly positive weights), referred to as the inpoint of \(T'\). Recall that the barycentric refinement of T is the simplicial complex whose k-dimensional simplices are those of the form \([b_{T_0}, b_{T_1}, \ldots , b_{T_k} ]\) such that the \(T_i\) are two by two distinct subsimplices of T satisfying \(T_0 \unlhd T_1 \unlhd \cdots \unlhd T_k\). We call such subsimplices of T barycentric simplices.

The barycentric refinement may be coarsened as follows: for any two subsimplices \(T''\) and \(T'\) of T such that \(T'' \unlhd T'\), we consider the cell \(S(T'', T')\) which is the union of all the barycentric simplices \([b_{T_0}, b_{T_1}, \ldots , b_{T_k} ]\) such that \(T'' \unlhd T_0\) and \(T_k \unlhd T'\).

When we start with a simplex T, the cells of the form \(S(T'', T')\) form a cellular complex, where each cell is, combinatorially, a cube. The same holds true if the cell T we start with is a cube. We may consider that \(b_{T''}\) is the smallest vertex of \(S(T'', T')\) and that \(b_{T'}\) is the largest. The vector \(b_{T'} - b_{T''}\) points towards the center of T. When T is an n-dimensional simplex, this procedure will divide it into \((n+1)\) cubes of dimension n, each one of the form \(S(T', T)\), where \(T'\) is a vertex of T. We call this the cubical refinement of T. An illustration is provided in Fig. 1.

Fig. 1
figure 1

A combinatorial cube inside a tetrahedron

3.2 Discrete Curvature and Bianchi Identity

If we relax condition (1), we model the parallel transport associated with connections with curvature, as opposed to flat connections. We still define the discrete covariant exterior derivative by (3). We no longer have \(\delta _{\mathsf {t} }^{k+1}\delta _{\mathsf {t} }^k = 0\), as in Lemma 1. When we compute \(\delta _{\mathsf {t} }^{k+1}\delta _{\mathsf {t} }^k\), we get an operator \({\mathcal {C}}^k({\mathcal {T}}, L) \rightarrow {\mathcal {C}}^{k+2}({\mathcal {T}}, L)\), which one would like to interpret in terms of a curvature.

Definition 5

(Discrete curvature) We suppose that \(T''\) and T are two cells of \({\mathcal {T}}\), such that \(T''\) is a codimension 2 face of T, and we let \(T_0'\) and \(T_1'\) be the two codimension 1 faces of T which have \(T''\) as a common codimension 1 face. The curvature of \({\mathsf {t} }\) is then \({\mathsf {c} }_{\mathsf {t} }\) defined by:

$$\begin{aligned} {\mathsf {c} }_{\mathsf {t} }(T, T'') = \pm ({\mathsf {t} }_{TT'_0}{\mathsf {t} }_{T'_0T''}- {\mathsf {t} }_{TT'_1}{\mathsf {t} }_{T_1'T''}), \end{aligned}$$
(14)

which is a linear map \(L(T'') \rightarrow L(T)\) associated with the square \(S(T'', T)\) (element of the cubical refinement of \({\mathcal {T}}\)), whose set of vertices is associated with \(\{T'',T_0', T_1', T \}\). The sign in this definition is given by the orientation of the square, which is chosen such that the orientations of the two transverse cells \(T''\) and \(S(T'', T)\) induce the orientation of T.

The definitions were chosen so as to have the trivial:

Lemma 5

A discrete connection is flat according to Definition 2 iff its curvature according to Definition 5 is 0.

Definition 5 also gives:

Proposition 1

(Curvature and the discrete covariant derivative) With the notations of the Definition 5 we have, for \(T \in {\mathcal {T}}\) of dimension \(k+2\):

$$\begin{aligned} (\delta _{\mathsf {t} }^{k+1}\delta _{\mathsf {t} }^k u)(T) =\sum _{T''} \pm {\mathsf {c} }_{\mathsf {t} }(T, T'') u(T''), \end{aligned}$$
(15)

where the sum is over k-faces of T.

We have a Bianchi identity in this setting, which we now detail. Recall that the usual Bianchi identity says that the covariant exterior derivative of the curvature 2-form, which is a priori a certain endomorphism valued 3-form, is 0. In this identity, the relevant covariant exterior derivative is the one associated with the induced connection on the bundle of endomorphisms. The discrete identity will assert that certain linear operators attached to the 3-dimensional cubes, in the cubical refinement, is 0.

Definition 6

(Discrete bundle of endomorphisms and its connection)

  • For \(T\in {\mathcal {T}}\) we consider the previously introduced cubical refinement of T, whose k-dimensional cells are (combinatorial) cubes of the form \(S(T'', T')\), for subcells \(T''\) and \(T'\) of T, where \(T''\) has codimension k in \(T'\). We let \({\mathcal {S}}\) denote the cubical refinement of \({\mathcal {T}}\). We then define \({{\,\mathrm{End}\,}}(L)\) to be the discrete vector bundle on \({\mathcal {S}}\), whose fiber at the cube \(S(T'', T')\) is the space of linear maps from \(L(T'')\) to \(L(T')\).

  • The discrete vector bundle \({{\,\mathrm{End}\,}}(L)\) on \({\mathcal {S}}\) inherits a discrete connection from the discrete connection of L on \({\mathcal {T}}\), as follows.

    Consider a k-dimensional cube \(S = S(T'', T')\), where we say that \(b_{T''}\) is the smallest vertex and \(b_{T'}\) is the largest. When \(S'\) is a codimension 1 face of S there are two possibilities: either \(b_{T''}\) is the smallest vertex of \(S'\) and then we let \(b_{T_0}\) be the largest, or \(b_{T'}\) is the largest vertex of \(S'\) and then we let \(b_{T_0}\) be the smallest. We define the transport operator on \({{\,\mathrm{End}\,}}(L)\) through:

    $$\begin{aligned} \left\{ \begin{array}{rcl} \displaystyle {{\,\mathrm{End}\,}}(L)(S') &{}\rightarrow &{} {{\,\mathrm{End}\,}}(L)(S)\\ \displaystyle u &{}\mapsto &{} \left\{ \begin{array}{ll} {\mathsf {t} }_{T' T_0} \circ u \ &{} \text { if } b_{T''} \in S' \\ u \circ {\mathsf {t} }_{T_0 T''} \ &{} \text { if } b_{T'} \in S' \end{array} \right. \end{array} \right. \end{aligned}$$
    (16)

The spaces \({\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {S}}, {{\,\mathrm{End}\,}}(L))\) are defined as before, and the discrete covariant exterior derivative linking these spaces is defined as in (3) from the given induced discrete connection on \({{\,\mathrm{End}\,}}(L)\).

Remark 4

A discrete connection for the discrete bundle L over \({\mathcal {T}}\) is thus an element of \({\mathcal {C}}^1({\mathcal {S}}, {{\,\mathrm{End}\,}}(L))\), where the element of \({{\,\mathrm{End}\,}}(L)\) attached to each edge of \({\mathcal {S}}\) is bijective. Compare with the fact that, in the continuous setting, the difference between two connections is an endomorphism valued 1-form.

Theorem 1

(discrete Bianchi identity) The curvature of \((L, {\mathsf {t} })\), which is defined as an element of \({\mathcal {C}}^2({\mathcal {S}}, {{\,\mathrm{End}\,}}(L))\) by (14), has a covariant exterior derivative (element of \({\mathcal {C}}^3({\mathcal {S}}, {{\,\mathrm{End}\,}}(L))\)) which is zero.

Proof

That the discrete covariant exterior derivative of the curvature is zero expresses that for each 3-dimensional cube \(S(T'',T')\) a certain linear map from \(L(T'')\) to \(L(T')\) is zero. This linear map is a sum of maps of the form:

$$\begin{aligned} \pm {\mathsf {t} }_{T'T_1}{\mathsf {t} }_{T_1T_0}{\mathsf {t} }_{T_0T''}, \end{aligned}$$
(17)

where the cells \(T'' \unlhd T_0 \unlhd T_1 \unlhd T'\) represent vertices of the cube, in increasing order. The sum consists of two such contributions from the curvature of each of the six faces of the cube. We thus get twelve maps of the form (17). They cancel two by two; in fact each map \({\mathsf {t} }_{T'T_1}{\mathsf {t} }_{T_1T_0}{\mathsf {t} }_{T_0T''}\) appears twice in the sum, with different signs. \(\square \)

Remark 5

The type of cancellation appearing in the above proof is also considered on p. 372 in [62].

Remark 6

(consistency) One would like the discrete covariant exterior derivative to be in some sense consistent with a continuous one. Recall that the coboundary operator acting on (real valued) simplicial cochains is isomorphic to the exterior derivative acting on Whitney form, via the de Rham map. One would like a similar interpretation of the discrete covariant exterior derivative.

For cellular complexes, an analogue of Whitney forms was provided in [26], by solving recursively, the PDE system \({\mathrm {d}}^\star {\mathrm {d}}u = 0\) and \({\mathrm {d}}^\star u = 0\), or a discrete analogue. One motivation for identifying induced operators on subcells is to extend this construction to other differential complexes, where one wants to find preimages of cochains with coefficients. This connects with a broader theme of defining finite elements as solutions of local PDEs (possibly discretized at a subgrid scale).

This also raises the question of, to which extent, from a discrete vector bundle, one can reconstruct a continuous vector bundle. In the flat case this seems unproblematic. In the presence of curvature, a condition of small curvature might be necessary, to mimick that fibers vary continuously in the continuous setting. For instance, one could require that the maps in Lemma 2 should be close to each other, in some sense. As interesting and perhaps simpler special cases, one could consider the reconstruction of line bundles, and bundles over two-dimensional manifolds.

See [58] for similar considerations.

Remark 7

(gauge transformations and curvature) Discrete gauge transformations are defined as in Sect. 1.4, also in the presence of curvature.

Notice that the discrete curvature transforms naturally under discrete gauge tranformations. Indeed, consider a discrete connection \({\mathsf {t} }\) for L and a discrete connection \({\mathsf {t} }'\) for \(L'\), as well as gauge transformations \(\theta : L \rightarrow L'\) such that (5) holds. Then we have:

$$\begin{aligned} \theta _T {\mathsf {c} }_{\mathsf {t} }(T, T'') = {\mathsf {c} }_{{\mathsf {t} }'}(T, T'') \theta _{T''}. \end{aligned}$$
(18)

Also, given a gauge transformation \(\theta \) from \((L, {\mathsf {t} })\) to \((L', {\mathsf {t} }')\), there is an induced gauge transformation from \({{\,\mathrm{End}\,}}(L)\) to \({{\,\mathrm{End}\,}}(L')\), equipped with their induced connections. For a cube \(S(T'', T')\) it maps \(u : L(T'') \rightarrow L(T')\) to \(\theta _{T'} u \theta _{T''}^{-1} : L'(T'') \rightarrow L'(T')\). The above transformation of curvature can be seen as a special case.

Remark 8

(Chern classes) A motivation for developing a discrete Bianchi identity is to develop a corresponding notion of Chern classes. A first Chern class is defined in this spirit in [67]. The topic is discussed in Chapter 7 of [74].

4 Finite Element Systems

Definition 7

We fix a flat discrete vector bundle L on \({\mathcal {T}}\) in the above sense. A finite element system on \({\mathcal {T}}\) consists of the following data, which includes both spaces and operators:

  • We suppose that for each \(T \in {\mathcal {T}}\), and each \(k \in {\mathbb {Z}}\) we are given a vector space \(A^k(T)\). For \(k<0\) we suppose \(A^k(T) = 0\).

  • For every \(T \in {\mathcal {T}}\) and \(k \in {\mathbb {Z}}\), we have an operator \({\mathsf {d} }^k_T: A^k(T) \rightarrow A^{k+1}(T)\) called differential. Often we will denote it just as \({\mathsf {d} }\). We require \({\mathsf {d} }^{k+1}_T \circ {\mathsf {d} }^k_T = 0\). This makes \(A^{\scriptscriptstyle \bullet }(T)\) into a complex.

  • Given \(T, T'\) in \({\mathcal {T}}\) with \(T' \unlhd T\) we suppose we have restriction maps:

    $$\begin{aligned} {\mathsf {r} }^k_{T'T} : A^k(T) \rightarrow A^k(T'), \end{aligned}$$
    (19)

    subject to the commutation relations (when \(T'' \unlhd T' \unlhd T\)):

    • \({\mathsf {r} }_{T'T} {\mathsf {d} }^k_T = {\mathsf {d} }^k_{T'} {\mathsf {r} }_{T'T}\),

    • \({\mathsf {r} }_{T''T} = {\mathsf {r} }_{T''T'} {\mathsf {r} }_{T'T}\).

  • For any k-dimensional cell T in \({\mathcal {T}}\), we suppose we have an evaluation map \({\mathsf {e} }: A^k(T) \rightarrow L(T)\). We suppose that the following formula holds, for \(u \in A^{k-1}(T)\):

    $$\begin{aligned} {\mathsf {e} }_T {\mathsf {d} }_T u = \sum _{T' \in \partial T} {{\,\mathrm{{\mathrm {o}}}\,}}(T, T') {\mathsf {t} }_{TT'} {\mathsf {e} }_{T'} {\mathsf {r} }_{T'T} u. \end{aligned}$$
    (20)

    See Remarks 11 and 14 below, for the interpretation of this identity as a generalized Stokes’ identity.

Remark 9

(presheaf interpretation) The first three points in the definition can be rephrased in terms of categories and sheaves. First, the cellular complex \({\mathcal {T}}\) may be considered as a category, where the objects are the cells and the morphisms are the inclusion maps. Complexes of vector spaces also constitute a category. The first three points then say that the family \(A^{\scriptscriptstyle \bullet }(T)\), indexed by \(T \in {\mathcal {T}}\), equipped with restriction operators associated with inclusions maps, is a contravariant functor from \({\mathcal {T}}\) to the category of complexes of vector spaces. It is therefore a presheaf of complexes (according to the definition in [56] Chapter 17).

Remark 10

(inverse system interpretation) The cellular complex \({\mathcal {T}}\) can also be interpreted as a partially ordered set, the order being the inclusion relation. Then the family \(A^{\scriptscriptstyle \bullet }(T)\), indexed by \(T \in {\mathcal {T}}\), equipped with restriction operators, constitutes an inverse system (also called a projective system) of complexes. See for instance [56] §2.1.

Remark 11

(Stokes’ theorem) Identity (20) is a generalization of Stokes’ theorem. Indeed Stokes’ theorem may be regarded as the special case where the spaces \(A^k(T)\) consist of smooth enough real valued k-forms on T, the discrete vector bundle is given simply by \(L(T) = {\mathbb {R}}\) and \({\mathsf {t} }_{TT'} = {\mathrm {id}}_{\mathbb {R}}\), \({\mathsf {r} }_{T'T}\) is pullback of differential forms by the canonical injection and the evaluation map \({\mathsf {e} }_T : A^k(T) \rightarrow {\mathbb {R}}\) is integration of a k-form on a k-dimensional cell.

Definition 8

(gluing spaces) If \({\mathcal {T}}'\) is a cellular subcomplex of \({\mathcal {T}}\), we define:

$$\begin{aligned} A^k({\mathcal {T}}') = \{&(u_T)_{T \in {\mathcal {T}}'} \in \bigoplus _{T \in {\mathcal {T}}'} A^k(T) \ : \ T' \unlhd T \Rightarrow u_{T'} = {\mathsf {r} }_{T'T} u_T \}. \end{aligned}$$
(21)

We notice that, in the special case where T is a cell and \({{\,\mathrm{Cl}\,}}(T)\) denotes the cellular complex consisting of all the subcells of T in \({\mathcal {T}}\), then the restriction maps provide an isomorphism:

$$\begin{aligned} {\mathsf {r} }: A^{\scriptscriptstyle \bullet }(T) \rightarrow A^{\scriptscriptstyle \bullet }({{\,\mathrm{Cl}\,}}(T)). \end{aligned}$$
(22)

In what follows we will usually not distinguish between \(A^{\scriptscriptstyle \bullet }(T)\) and \(A^{\scriptscriptstyle \bullet }({{\,\mathrm{Cl}\,}}(T))\).

Remark 12

(continuity) The condition that, for \(T' \unlhd T\) we have \(u_{T'} = {\mathsf {r} }_{T'T} u_T\), for elements u of \(A^k({\mathcal {T}}')\), can be interpreted as a continuity condition. Indeed when two cells have a common face, the condition enforces the two restrictions to the common face to be equal.

Remark 13

(glued spaces are inverse limits) If \({\mathcal {T}}'\) is a cellular subcomplex of \({\mathcal {T}}\), the spaces \(A^k(T)\) with \(T\in {\mathcal {T}}'\) constitute an inverse system, see Remark 10. Then \(A^k({\mathcal {T}}')\) is an inverse limit, and this defines it up to unique isomorphism. See for instance [56] Equation (2.1.2) p. 36.

The notation (21) will be used in particular in the following two cases:

  • \({\mathcal {T}}' = {\mathcal {T}}\). The spaces of the form \(A^k({\mathcal {T}})\) are those typically used in a Galerkin method to solve a PDE on the set covered by \({\mathcal {T}}\). Such spaces will be referred to as the global spaces, as opposed to the local spaces \(A^k(T)\) for \(T \in {\mathcal {T}}\).

  • \({\mathcal {T}}' = \partial T\) for a given \(T \in {\mathcal {T}}\). By that we mean the set of cells in \({\mathcal {T}}\) included in the boundary of a given cell \(T\in {\mathcal {T}}\). That is, \(\partial T\) denotes the cellular complex consisting of the strict subcells of T.

Remark 14

(reformulation of Stokes’ identity as a commutation relation) Another way of formulating (20) is that for any cellular subcomplex \({\mathcal {T}}'\) of \({\mathcal {T}}\), the evaluations \({\mathsf {e} }_T : A^k(T) \rightarrow L(T)\) (for \(T \in {\mathcal {T}}^{\prime k}\)) provide a morphism of complexes:

$$\begin{aligned} {\mathsf {e} }: A^{\scriptscriptstyle \bullet }({\mathcal {T}}')\rightarrow {\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}}', L). \end{aligned}$$
(23)

We will later provide conditions under which the evaluation morphism (23) induces isomorphisms on cohomology groups. This would be an analogue of de Rham’s theorem which asserts that the de Rham map, from real valued differential forms to real valued cellular cochains, gives isomorphisms between the respective cohomologies. We therefore refer to the map in (23) as the de Rham map.

We denote by \(A^k_0(T)\) the kernel of the induced map \({\mathsf {r} }: A^k(T) \rightarrow A^k(\partial T)\). We consider that the boundary of a point is empty, so that if T is a point \(A^k_0(T) = A^k(T)\).

Definition 9

(Soft finite element systems) We say that A admits extensions on \(T \in {\mathcal {T}}\), if the restriction map induces a surjection:

$$\begin{aligned} {\mathsf {r} }: A^{\scriptscriptstyle \bullet }(T) \rightarrow A^k(\partial T). \end{aligned}$$
(24)

We say that A admit extensions on \({\mathcal {T}}\) or is soft, if it admits extensions on each \(T\in {\mathcal {T}}\).

This notion corresponds to that of soft sheaves (faisceaux mous in French [49]), due to the following result:

Proposition 2

The FES A admits extensions on \({\mathcal {T}}\) if and only if, for any cellular complexes \({\mathcal {T}}'', \mathcal T'\) such that \({\mathcal {T}}'' \subseteq {\mathcal {T}}' \subseteq {\mathcal {T}}\), the restriction \(A^{\scriptscriptstyle \bullet }({\mathcal {T}}') \rightarrow A^{\scriptscriptstyle \bullet }({\mathcal {T}}'')\) is onto.

Proof

If one can extend from the boundary of a cell to the cell, then one can extend from subcomplexes to complexes, step by step, incrementing dimension by one each time. \(\square \)

Remark 15

(surjectivity of restrictions) In particular if A admits extensions, then, when \(T'\) is a subcell of T, the restriction \(A^{\scriptscriptstyle \bullet }(T) \rightarrow A^{\scriptscriptstyle \bullet }(T')\) is onto. However this is, in general, a strictly weaker condition than the extension property. To see this, consider for instance the finite element spaces \(A^0(T)\) consisting of \({\mathrm {P}}^1\) functions on a quadrilateral S, on its edges E and on its vertices V. Then the restriction from \(A^0(S)\) to each edge \(A^0(E)\) is onto, as are the other restrictions from faces to subfaces, but the restriction from \(A^0(S)\) to \(A^0(\partial S)\) is not onto, since the latter has dimension 4 but the former had dimension only 3. In practice therefore, finite element spaces on a square therefore include, in addition to the affine functions, a bilinear function.

Remark 16

(kernels of differentials) We define \(K(T) = {\mathrm {H}}^0(A^{\scriptscriptstyle \bullet }(T)) \approx \ker {\mathrm {d}}: A^0(T)\). We notice that we have induced maps \({\mathsf {r} }_{T'T} : K(T) \rightarrow K(T')\), whenever \(T' \unlhd T\). We also notice that we have a well defined map \(j_T: K(T) \approx {\mathrm {H}}^0(A^{\scriptscriptstyle \bullet }(T)) \rightarrow {\mathrm {H}}^0( {\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}}, L)) \approx L(T)\): starting with an element in K(T), restrict it to a vertex \(T'\) to get an element of \(K(T')\), evaluate it to get an element of \(L(T')\) and parallel transport it to get an element of L(T) (the composition of these steps is independent of the choice of vertex and path from the vertex to T).

Definition 10

(Exactness of a FES)

  • We say that \(A^{\scriptscriptstyle \bullet }\) is exact on a cell \(T \in {\mathcal {T}}\) when the following, equivalent, conditions hold:

    • The following sequence is exact:

      (25)

      and moreover the map \(j_T: K(T) \rightarrow L(T)\) defined in Remark 16 is an isomorphism.

    • The de Rham map \(A^{\scriptscriptstyle \bullet }(T) \rightarrow {\mathcal {C}}^{\scriptscriptstyle \bullet }({{\,\mathrm{Cl}\,}}(T), L)\) induces isomorphisms on cohomology.

  • We say that \(A^{\scriptscriptstyle \bullet }\) is locally exact on \({\mathcal {T}}\) when \(A^{\scriptscriptstyle \bullet }\) is exact on each \(T \in {\mathcal {T}}\).

Proof

The equivalence holds by Lemma 4. \(\square \)

Definition 11

We say that A is compatible when it is soft and is locally exact.

Remark 17

(The flat connections of upwinding and band gap computations) Some PDEs, such as convection diffusion equations, can be expressed with covariant derivatives [28], see also [83].

Consider the space of real valued differential k-forms on a domain U, denoted \({\varOmega }^k(U)\). Choose \(A\in {\varOmega }^1(U)\), called the connection 1-form. Define the covariant exterior derivative \({\mathrm {d}}_A\) by:

$$\begin{aligned} {\mathrm {d}}_A u = {\mathrm {d}}u + A \wedge u. \end{aligned}$$
(26)

Then we have:

$$\begin{aligned} {\mathrm {d}}_A {\mathrm {d}}_A u = ({\mathrm {d}}A) \wedge u. \end{aligned}$$
(27)

Then \({\mathrm {d}}A \in {\varOmega }^2(U)\) is identified as the curvature of A. We suppose \({\mathrm {d}}A = 0\), so that the operators \({\mathrm {d}}_A\) constitute a complex. For any contractible subdomain T of U we may choose \(\phi \in {\varOmega }^0(T)\) such that \({\mathrm {d}}\phi = A\). Then we have, for \(u \in {\varOmega }^k(T)\):

$$\begin{aligned} {\mathrm {d}}_A u = \exp (-\phi ) {\mathrm {d}}( \exp (\phi ) u ). \end{aligned}$$
(28)

Furthermore \(\phi \) is uniquely determined, if we impose, in addition, the value of \(\phi (x_T)\) for some point \(x_T \in T\).

For every cell \(T \in {\mathcal {T}}\), choose an interior point \(x_T \in T\). Let \(\phi _T : T \rightarrow {\mathbb {R}}\) be the unique function such that \(\phi _T(x_T) = 0\) and \({\mathrm {d}}\phi _T = A\). For \(u \in {\varOmega }^{k-1}(T)\) with \(k = \dim T\), we notice:

$$\begin{aligned} \int _T \exp (\phi _T) {\mathrm {d}}_A u&= \int _T {\mathrm {d}}\exp (\phi _T) u,\end{aligned}$$
(29)
$$\begin{aligned}&= \sum _{T' \unlhd T} {{\,\mathrm{{\mathrm {o}}}\,}}(T,T') \int _{T'} \exp (\phi _T) u|_{T'},\end{aligned}$$
(30)
$$\begin{aligned}&= \sum _{T' \unlhd T} {{\,\mathrm{{\mathrm {o}}}\,}}(T,T') \exp (\phi _{T}(x_{T'})) \int _{T'} \exp (\phi _{T'}) u|_{T'}. \end{aligned}$$
(31)

When T is k-dimensional, we let \({\mathsf {e} }_T : {\varOmega }^k(T) \rightarrow {\mathbb {R}}\) be the map:

$$\begin{aligned} {\mathsf {e} }_T : u \mapsto \int _T \exp (\phi _T) u. \end{aligned}$$
(32)

And, when \(T'\) is a codimension 1 face of T, we put:

$$\begin{aligned} {\mathsf {t} }_{TT'} = \exp (\phi _T(x_{T'})). \end{aligned}$$
(33)

Then the preceding identity becomes:

$$\begin{aligned} {\mathsf {e} }_T ({\mathrm {d}}_A u) = \sum _{T' \unlhd T} {{\,\mathrm{{\mathrm {o}}}\,}}(T,T') {\mathsf {t} }_{TT'} {\mathsf {e} }_{T'} u|_{T'}, \end{aligned}$$
(34)

as required in (20).

As a slight variant, consider complex-valued differential forms (but A still real valued), and let:

$$\begin{aligned} {\mathrm {d}}_A u = {\mathrm {d}}u + i A \wedge u, \end{aligned}$$
(35)

with comparable consequences. One can even restrict attention to A constant. On a torus, A is not in general globally of the form \({\mathrm {d}}\phi \), but of course locally this still holds and can be used in particular on individual cells. Such observations were made in [18, 44] in the context of band gap computations for photonic crystals. The corresponding numerical methods are variants of exponential fitting.

4.1 de Rham Type Theorems

The following theorem extends Proposition 5.16 in [37]:

Theorem 2

Suppose that the element system A is compatible. Then the evaluation maps \({\mathsf {e} }: A^{\scriptscriptstyle \bullet }({\mathcal {T}}) \rightarrow {\mathcal {C}}^{\scriptscriptstyle \bullet }({\mathcal {T}}, L)\) induce isomorphisms on cohomology groups.

Proof

Exactness gives that the map \(A^{\scriptscriptstyle \bullet }(T) \rightarrow {\mathcal {C}}^{\scriptscriptstyle \bullet }({{\,\mathrm{Cl}\,}}(T), L)\) induces isomorphims on cohomology groups.

From there the proof proceeds as in [37]. \(\square \)

We also have the following extension of Proposition 5.17 in [37]:

Theorem 3

Suppose that A has extensions. Then A is compatible if and only if the following condition holds:

For each \(T \in {\mathcal {T}}\) the sequence \(A^{\scriptscriptstyle \bullet }_0(T)\) has nontrivial cohomology only at index \(k = \dim T\), and there the induced map:

$$\begin{aligned} {\mathsf {e} }: {\mathrm {H}}^k A^{\scriptscriptstyle \bullet }_0(T) \rightarrow L(T), \end{aligned}$$
(36)

is an isomorphism (it is well defined by (20)).

Proof

(i) For cellular complexes consisting only of vertices, the equivalence trivially holds because, when T is a point, \(A^{\scriptscriptstyle \bullet }_0(T) = A^{\scriptscriptstyle \bullet }(T)\).

(ii) We suppose now that \(m >0\) and that the equivalence has been proved for cellular complexes consisting of cells of dimension at most \(n< m\). Consider a cellular complex consisting of cells of dimension at most m.

Let \(T\in {\mathcal {T}}\) be a cell of dimension m. We suppose that the finite element system A is compatible on the boundary of T. Since the boundary is \((m-1)\)-dimensional, we may apply the de Rham theorem 2 there. In other words \(A^{\scriptscriptstyle \bullet }(\partial T) \rightarrow {\mathcal {C}}^{\scriptscriptstyle \bullet }(\partial T,L)\) induces isomorphisms on cohomology.

We write the following diagram:

(37)

Comments:

  • The complex \({\mathcal {C}}^{\scriptscriptstyle \bullet }_0({{\,\mathrm{Cl}\,}}(T),L)\) is rather trivial. The terms consist of cochains that are zero on the boundary of T. In other words, the only nonzero space in the complex is at index \(k = \dim T\), where it is L(T).

  • On the rows, the second map is inclusion and the third arrow restriction. Both rows are short exact sequences of complexes.

  • The vertical maps are the de Rham map.

  • The diagram commutes.

We write the two long exact sequences corresponding to the two rows, and connect them by the map induced by the de Rham map.

The equivalence is now proved in two steps:

  • Suppose that (25) is exact. Then the first and fourth vertical maps are isomorphisms. By the induction hypothesis the second and fifth are isomorphisms. By the five lemma, the third one is an isomorphism. This can be stated by the condition formulated in the theorem.

  • Suppose that the stated condition holds. One applies again the five lemma to the long exact sequence, and obtains now that \(A^{\scriptscriptstyle \bullet }(T)\) has the same cohomology as \({\mathcal {C}}^{\scriptscriptstyle \bullet }({{\,\mathrm{Cl}\,}}(T), L)\).

\(\square \)

4.2 Extensions, Dimension Counts and Harmonic Interpolation

The following proposition almost exactly reproduces Proposition 2.2 in [38].

Proposition 3

Suppose that A is an element system and that \(T \in {\mathcal {T}}\). We are interested only in a fixed index \(k \in {\mathbb {N}}\). Suppose that, for each cell \(U \in \partial T\), each element v of \(A^k_0(U)\) can be extended to an element u of \(A^k(T)\) in such a way that, \({\mathsf {r} }_{UT} u = v\) and for each cell \(U' \in \partial T\) with the same dimension as U, but different from U, we have \({\mathsf {r} }_{U'T} u = 0\). Then \(A^k\) admits extensions on T.

Proof

In the situation described in the proposition, we denote by \({{\,\mathrm{{\mathsf {ext}}}\,}}_U v = u\) a chosen extension of v (from U to T).

Pick \(v \in A^k(\partial T)\). Define \(u_{-1}= 0 \in A^k(T)\).

Pick \(l \ge -1\) and suppose that we have a \(u_{l} \in A^k(T)\) such that v and \(u_l\) have the same restrictions on all l-dimensional cells in \(\partial T\). Put \(w_l = v - {\mathsf {r} }_{\partial T\, T} u_l \in A^k(\partial T)\). For each \((l+1)\)-dimensional cell U in \(\partial T\), remark that \({\mathsf {r} }_{U\partial T} w_l \in A^k_0(U)\), so we may extend it to the element \({{\,\mathrm{{\mathsf {ext}}}\,}}_U {\mathsf {r} }_{U\partial T} w_l \in A^k(T)\). Then put:

$$\begin{aligned} u_{l+1} = u_l + \sum _{U \, : \, \dim U = l+1} {{\,\mathrm{{\mathsf {ext}}}\,}}_U {\mathsf {r} }_{U\partial T} w_l. \end{aligned}$$
(38)

Then v and \(u_{l+1}\) have the same restrictions on all \((l+1)\)-dimensional cells in \(\partial T\).

We may repeat until \(l+1 = \dim T\) and then \(u_{l+1}\) is the required extension of v. \(\square \)

Proposition 4

(softness vs dimension counts) Let A be a FES on a cellular complex \({\mathcal {T}}\). Then:

  • We have:

    $$\begin{aligned} \dim A^k ({\mathcal {T}}) \le \sum _{ T\in {\mathcal {T}}}\dim A^k_0(T). \end{aligned}$$
    (39)
  • Equality holds in (39) if and only if \(A^k\) admits extensions on each \(T \in {\mathcal {T}}\).

Proof

The proof in [38] works verbatim. \(\square \)

Definition 12

Given a FES A on a cellular complex \({\mathcal {T}}\), a system of degrees of freedom is a choice of subspace \(F^k(T) \subseteq A^k(T)^\star \), for each \(k \in {\mathbb {N}}\) and \(T \in {\mathcal {T}}\). In that situation, we can define maps \({\varPhi }^k(T) : A^k(T) \rightarrow \bigoplus _{T' \unlhd T} F^k(T')^\star \) by, for \(u \in A^k(T)\):

$$\begin{aligned} {\varPhi }^k(T)u = (\langle \cdot , {\mathsf {r} }_{T'T} u \rangle )_{T' \unlhd T} \end{aligned}$$
(40)

where the brackets denote the canonical bilinear pairing \(F^k(T') \times A^k(T') \rightarrow {\mathbb {R}}\). We say that the system F is unisolvent on A if \({\varPhi }^k(T)\) is an isomorphism for each \(T \in {\mathcal {T}}\).

We will use the following result:

Proposition 5

(unisolvence of degrees of freedom and softness) Suppose that A is a FES on a cellular complex \({\mathcal {T}}\). Suppose that F is a system of degrees of freedom for A. Suppose that for each \(T \in {\mathcal {T}}\), the canonical map \(A^k_0(T) \rightarrow F^k(T)^\star \) is injective. Suppose that \(T \in {\mathcal {T}}\) is such that:

$$\begin{aligned} \dim A^k(T) \ge \sum _{T' \unlhd T} \dim F^k(T). \end{aligned}$$
(41)

Then F is unisolvent on A on the cellular complex \({{\,\mathrm{Cl}\,}}(T)\), A is soft on \({{\,\mathrm{Cl}\,}}(T)\) and equality holds in (41).

Proof

See Propositions 2.1 and 2.5 in [38]. \(\square \)

Example 1

For each cell \(T \in {\mathcal {T}}\), equip \(A^k(T)\) with a continuous scalar product \(\langle \cdot | \cdot \rangle \), typically a variant of the \({\mathrm {L}}^2\) product. We define a system of degrees of freedom \(F^k(T) \subseteq A^k(T)^\star \) as follows. For each k, we consider the following space of linear forms on \(A^k(T)\):

$$\begin{aligned} F^k(T)&= \{\langle \cdot | v \rangle \ : \ v \in {\mathsf {d} }A^{k-1}_0(T)\} \oplus \{ \langle {\mathrm {d}}\cdot | v \rangle \ : \ v \in {\mathsf {d} }A^{k}_0(T)\} \end{aligned}$$
(42)
$$\begin{aligned}&\qquad \oplus \{ l \circ {\mathsf {e} }_T \ : \ l \in L(T)^\star \}, \end{aligned}$$
(43)

where the last space in the direct sum should be included only for \(k = \dim T\).

We call these the harmonic degrees of freedom. For compatible finite element systems, these degrees of freedom are unisolvent.

If one considers that the linear forms in \(F^k(T)\) are defined on more general fields, these DoFs yield a commuting interpolator onto \(A^{\scriptscriptstyle \bullet }({\mathcal {T}})\), which we call the harmonic interpolator. For more on this topic see §2.4 of [38], in particular Proposition 2.8 of that paper.

Remark 18

(minimal spaces and harmonicity) If the degrees of freedom consisting only of the spaces \(F^k(T) = \{ l \circ {\mathsf {e} }_T \ : \ l \in L(T)^\star \}\) are unisolvent, then the FES is minimal, and the fields provide an analogue of Whitney forms. One can obtain such a FES inside any compatible FES by imposing the degrees of freedom (42) to be zero, while (43) are kept free. This generalizes the construction of Whitney forms on cellular complexes given in [26].

4.3 Discrete Vector Bundles: A Dual Picture

Notice that the degrees of freedom \(l \circ {\mathsf {e} }_T\) for \(l \in L(T)^\star \) appearing in (42) play a special role. In practice they often appear in a slightly different way, namely as integration against certain fields, forming a space M(T) which is more tangible than L(T) (the parallel transport operators acting on M(T) can be more natural for instance).

We now make some remarks on this alternative point of view.

We suppose that we have for each T a vector space M(T) and a bilinear form \(\langle \cdot , \cdot \rangle _T\) on \(A(T) \times M(T)\). Moreover, when \(T'\) has codimension 1 in T we suppose we have a bijective (linear) restriction map \(s_{T'T}: M(T) \rightarrow M(T')\), subject to the condition that \(s_{TT_0'}s_{T_0'T''} = s_{TT_1'}s_{T_1'T''}\). The generalized Stokes theorem takes the form, for \(\phi \in M(T)\) and \(u \in A^{k-1}(T)\):

$$\begin{aligned} \langle {\mathrm {d}}u, \phi \rangle _T = \sum _{T'} {{\,\mathrm{{\mathrm {o}}}\,}}(T, T') \langle {\mathsf {r} }_{T'T} u, s_{T'T} \phi \rangle _{T'}. \end{aligned}$$
(44)

In practice, this formula often arises as follows. The bilinear form \(\langle \cdot , \cdot \rangle _T\) on \(A(T) \times M(T)\) is the \({\mathrm {L}}^2\) scalar product (with respect to, say, the standard Euclidean metric). The space M(T) is the kernel of the formal adjoint of \({\mathrm {d}}\). Identity (44) is obtained by integration by parts, m times when \({\mathrm {d}}\) is a differential operator of order m. Only boundary terms remain, by definition of the kernel of the formal adjoint. For boundary cells \(T'\), the space \(M(T')\) could be obtained as the kernel of a formal adjoint, or could appear as natural restrictions to \(T'\) of elements of M(T).

For instance, one integrates the divergence of a vector field against the constants, which constitute the kernel of the gradient. Then the restriction operator on the constants is the usual trace, and the restriction operator on the vector field is the trace of the normal component.

We will be interested in more complicated examples, for instance, integration of vector fields against the kernel of the deformation operator (i.e. rigid motions) which is the formal adjoint of the divergence operator acting on symmetric matrices, and integration of functions against the kernel of the Airy operator (i.e. affine functions), which is the formal adjoint of the Saint-Venant compatibility operator.

These data provide the discrete vector bundle defined by \(L(T) = M(T)^\star \) and \({\mathsf {t} }_{TT'} = s_{T'T}^\star \). Moreover, it gives evaluation maps \({\mathsf {e} }_T: A^k(T) \rightarrow L(T)\) defined by \(u \mapsto \langle u, \cdot \rangle _T\).

Conversely, given the data L, \({\mathsf {t} }\) and \({\mathsf {e} }\), one can define \(M(T) = L(T)^\star \), \(\langle u, \phi \rangle _T = \phi ({\mathsf {e} }_T(u))\) for \(\phi \in M(T)\) and \(u \in A^k(T)\) and \(s_{T'T} = {\mathsf {t} }_{TT'}^\star \), so the two points of view are equivalent.

5 Elasticity

5.1 Spaces

We work in dimension 2.

  • We denote by \({\mathbb {V}}= {\mathbb {R}}^2\) the space of column vectors and by \({\mathbb {V}}^\textsc {t}\,\) the space of row vectors,

  • We denote by \({\mathbb {M}}= {\mathbb {R}}^{2 \times 2}\) the space of matrices.

  • We denote by \({\mathbb {S}}= {\mathbb {R}}^{2 \times 2}_{\mathrm {sym}}\) the space of symmetric \(2\times 2\) matrices and by \({\mathbb {K}}={\mathbb {R}}^{2 \times 2}_{{{\,\mathrm{skew}\,}}}\) the space of skewsymmetric \(2 \times 2\)-matrices.

If T is a subset of \({\mathbb {R}}^2\) (typically a simplex of dimension 0, 1 or 2, or an open subset of \({\mathbb {R}}^2\)), and \({\mathbb {E}}\) is a vector space (such as one of \({\mathbb {R}}, {\mathbb {V}}, {\mathbb {V}}^\textsc {t}\,, {\mathbb {M}}, {\mathbb {S}}, {\mathbb {K}}\), or a product of such spaces), we denote by \({\varGamma }(T, {\mathbb {E}})\) the set of maps from T to \({\mathbb {E}}\).

These maps should be smooth enough that differential operators and traces (in the sense of restrictions to subsets of the boundary) make sense, so that one can define a suitable finite element system as subspaces. To get softness, the regularity of the spaces should not be too big. Exactness under the differentials is also a regularity dependent issue. We will get back to the problem of getting the regularity of the fields right, to accommodate these constraints.

5.2 Differential Operators

We will use the following differential operators, on scalar, vector and matrix fields, defined on some connected domain in \({\mathbb {R}}^2\).

  • The gradient and curl of a scalar field are (row) vectorfields defined by:

    $$\begin{aligned} {{\,\mathrm{grad}\,}}[u]&= [\partial _1 u, \partial _2 u],\end{aligned}$$
    (45)
    $$\begin{aligned} {{\,\mathrm{curl}\,}}[u]&= [\partial _2 u, - \partial _1 u]. \end{aligned}$$
    (46)
  • The divergence and curl of (row) vectorfields are defined by:

    $$\begin{aligned} {{\,\mathrm{div}\,}}[u_1, u_2]&= \partial _1 u_1 + \partial _2 u_2,\end{aligned}$$
    (47)
    $$\begin{aligned} {{\,\mathrm{curl}\,}}[u_1, u_2]&= \partial _1 u_ 2 -\partial _2 u_1. \end{aligned}$$
    (48)
  • The gradient of a (column) vectorfield is defined by:

    $$\begin{aligned} {{\,\mathrm{grad}\,}}\left[ \begin{array}{r} u_1\\ u_2 \end{array} \right] = \left[ \begin{array}{cc} \partial _1 u_1 &{} \partial _2 u_1\\ \partial _1 u_2 &{} \partial _2 u_2 \end{array}\right] \end{aligned}$$
    (49)
  • The deformation of a (column) vectorfield is the symmetric part of its gradient:

    $$\begin{aligned} {{\,\mathrm{def}\,}}\left[ \begin{array}{r} u_1\\ u_2 \end{array} \right] = \left[ \begin{array}{cc} \partial _1 u_1 &{} 1/2(\partial _2 u_1 + \partial _1 u_2)\\ 1/2(\partial _1 u_2 + \partial _2 u_1) &{} \partial _2 u_2 \end{array}\right] \end{aligned}$$
    (50)
  • The divergence of a matrix field is the (column) vectorfield defined by:

    $$\begin{aligned} {{\,\mathrm{div}\,}}\left[ \begin{array}{rr} u_{11} &{} u_{12} \\ u_{21} &{} u_{22} \end{array} \right] = \left[ \begin{array}{r} \partial _1 u_{11} + \partial _2 u_{12}\\ \partial _1 u_{21} + \partial _2 u_{22} \end{array}\right] . \end{aligned}$$
    (51)
  • The Airy operator acts as follows on a scalar field u:

    $$\begin{aligned} {{\,\mathrm{airy}\,}}[u] = \left[ \begin{array}{rr} \partial _{22} u &{} -\partial _{21} u \\ -\partial _{12} u &{} \partial _{11} u \end{array} \right] \end{aligned}$$
    (52)
  • The Saint Venant operator is the formal adjoint of the Airy operator:

    $$\begin{aligned} {{\,\mathrm{sven}\,}}\left[ \begin{array}{rr} u_{11} &{} u_{12} \\ u_{21} &{} u_{22} \end{array} \right] = \partial _{22} u_{11} + \partial _{11} u_{22} - \partial _{12} u_{21} - \partial _{21} u_{12}. \end{aligned}$$
    (53)

    It encodes the Saint-Venant compatibility conditions for being a deformation tensor. The sven operator may also by interpreted as the linearization of scalar curvature around the standard metric.

Remark 19

We point out that, when \(\textsc {T}\,\) denotes transposition:

$$\begin{aligned} {{\,\mathrm{airy}\,}}u&= {{\,\mathrm{curl}\,}}\textsc {t}\,{{\,\mathrm{curl}\,}}u, \end{aligned}$$
(54)
$$\begin{aligned} {{\,\mathrm{sven}\,}}u&= {{\,\mathrm{curl}\,}}\textsc {t}\,{{\,\mathrm{curl}\,}}u. \end{aligned}$$
(55)

Remark 20

(Hessian) The Hessian of a scalar field u is:

$$\begin{aligned} {{\,\mathrm{hess}\,}}(u) = \left[ \begin{array}{rr} \partial _{11} u &{} \partial _{12} u \\ \partial _{21} u &{} \partial _{22} u \end{array} \right] \end{aligned}$$
(56)
  • We define the matrix J as:

    $$\begin{aligned} J = \left[ \begin{array}{ll} 0 &{} -1 \\ 1 &{} 0 \end{array} \right] \end{aligned}$$
    (57)

    It encodes a direct rotation around the origin by \(\pi /2\). Then the Hessian and the Airy operator are linked by:

    $$\begin{aligned} {{\,\mathrm{airy}\,}}(u) = J^\textsc {t}\,{{\,\mathrm{hess}\,}}(u) J, \end{aligned}$$
    (58)

    where \(J^\textsc {t}\,\) denotes the transpose of J.

  • We can also introduce the operator on matrices:

    $$\begin{aligned} K u = u^\textsc {t}\,- {{\,\mathrm{tr}\,}}(u)I_2. \end{aligned}$$
    (59)

    Then the Hessian and the Airy operator are related by:

    $$\begin{aligned} {{\,\mathrm{airy}\,}}(u) = - K {{\,\mathrm{hess}\,}}(u). \end{aligned}$$
    (60)

Remark 21

(Formulas in different bases) We will often work with an additional orthonormal oriented basis \((\tau , \nu )\) of \({\mathbb {V}}\). Well-known formulas will be used without further ado. For instance, for a scalar field u, \({{\,\mathrm{curl}\,}}u = \partial _\nu u \tau - \partial _\tau u \nu \). For a column vector field, one would write \({{\,\mathrm{curl}\,}}u = \partial _\tau u \cdot \nu - \partial _\nu u \cdot \tau \). Notice, however, that we have chosen to use differential operators only row wise. For a row vector field u, the formula thus becomes \({{\,\mathrm{curl}\,}}u = \partial _\tau u \nu - \partial _\nu u \tau \), given that \(\tau \) and \(\nu \) are column vectors.

Remark 22

(Differential operators act on rows) We let all differential operators act row wise. To account for differential operators acting column wise, we combine with transposition, denoted \(\textsc {t}\,: u \mapsto u^\textsc {t}\,\).

Remark 23

We let the \({{\,\mathrm{curl}\,}}\) operator act on matrices row wise. Then we have the formula:

$$\begin{aligned} {{\,\mathrm{curl}\,}}u = - J {{\,\mathrm{div}\,}}(K u), \end{aligned}$$
(61)

where J and K were introduced in (57) and (59). This can be used to prove invariance properties of the curl of matrices under orthogonal basis change.

5.3 Elasticity Complexes and Diagram Chasing

The preceding operators may be arranged into sequences as follows. Notice that we now use the letter \({\mathrm {H}}\) to denote Sobolev spaces (rather than cohomology groups).

Proposition 6

(Elasticity stress complex) We have a sequence:

(62)

Here:

$$\begin{aligned} {\mathrm {H}}^0_{{{\,\mathrm{div}\,}}}(U,{\mathbb {S}}) = \{u \in {\mathrm {H}}^0(U, {\mathbb {S}}) \ : \ {{\,\mathrm{div}\,}}u \in {\mathrm {H}}^0(U, {\mathbb {V}}) \}. \end{aligned}$$
(63)

The kernel of the Airy operator consists of the affine functions. The divergence operator is surjective. If U is contractible the sequence is exact.

Proposition 7

(Elasticity strain complex) We have a sequence:

(64)

Here:

$$\begin{aligned} {\mathrm {H}}^1_{{{\,\mathrm{sven}\,}}}(U,{\mathbb {S}}) = \{u \in {\mathrm {H}}^1(U, {\mathbb {S}}) \ : \ {{\,\mathrm{sven}\,}}u \in {\mathrm {H}}^0(U, {\mathbb {R}}) \}. \end{aligned}$$
(65)

The kernel of the deformation operator consists of the rigid motions (vector fields of the form \(x \mapsto a + b J x\) with \(a \in {\mathbb {R}}^2\) and \(b \in {\mathbb {R}}\)). The sven operator is surjective. If U is contractible, the sequence is exact.

These complexes can be deduced from vector-valued de Rham sequences by a diagram chase of the following type [10]:

Proposition 8

Suppose we have two complexes linked in a commuting diagram

(66)

Suppose furthermore that we have an index i such that:

  • for \(j <i\), \(\phi ^j\) is injective,

  • \(\phi ^i\) is bijective,

  • for \(j >i\), \(\phi ^j\) is surjective.

Then we get a sequence, with \({\mathbb {D}}= {\mathrm {d}}{\varPsi } {\mathrm {d}}\) and \({\varPsi } = (\phi ^i)^{-1}\):

(67)

Furthermore, if \(X^{\scriptscriptstyle \bullet }\) and \(Y^{\scriptscriptstyle \bullet }\) are exact, then this new sequence is also exact.

Proposition 9

We have the commuting diagram:

(68)

Here \(\textsc {t}\,\) denotes transposition and:

$$\begin{aligned} {{\,\mathrm{skew}\,}}\left[ \begin{array}{rr} u_{11} &{} u_{12} \\ u_{21} &{} u_{22} \end{array} \right] = u_{21} - u_{12}. \end{aligned}$$
(69)

The elasticity stress complex (62) comes from (68) by Proposition 8.

Proposition 10

We have a commuting diagram:

(70)

Here:

$$\begin{aligned} {\mathrm {H}}^1_{{{\,\mathrm{sven}\,}}}(U,{\mathbb {M}}) = \{u \in {\mathrm {H}}^1(U, {\mathbb {M}}) \ : \ {{\,\mathrm{sven}\,}}u \in {\mathrm {H}}^0(U, {\mathbb {R}}) \}. \end{aligned}$$
(71)

Moreover \(\textsc {t}\,\) denotes transposition and:

$$\begin{aligned} {{\,\mathrm{skew}\,}}[u] = \left[ \begin{array}{rr} 0 &{} u \\ - u &{} 0 \end{array} \right] . \end{aligned}$$
(72)

The elasticity strain complex (64) comes from (70) by Proposition 8.

Remark 24

(a variant with modified regularity) On the bottom row of diagram (68), the differential operators act row-wise and the Sobolev spaces are defined row-wise. The middle space in the bottom row is not stable under taking the transpose. One could achieve that by enforcing conditions on the vertical divergence throughout the complex:

(73)

Here:

$$\begin{aligned} {\mathrm {H}}^1_{{{\,\mathrm{div}\,}}\textsc {t}\,}(U, {\mathbb {V}})&= \{ u \in {\mathrm {H}}^1(U, {\mathbb {V}}) \ : \ {{\,\mathrm{div}\,}}u^\textsc {t}\,\in {\mathrm {H}}^1(U, {\mathbb {R}}) \},\end{aligned}$$
(74)
$$\begin{aligned} {\mathrm {H}}^0_{\scriptstyle {{\,\mathrm{div}\,}}, {{\,\mathrm{div}\,}}\textsc {t}\,}( U, {\mathbb {M}})&= \{u \in {\mathrm {H}}^0( U, {\mathbb {M}}) \ : \ {{\,\mathrm{div}\,}}u \in {\mathrm {H}}^0(U, {\mathbb {V}}) \text { and } {{\,\mathrm{div}\,}}u^\textsc {t}\,\in {\mathrm {H}}^0(U, {\mathbb {V}}) \}. \end{aligned}$$
(75)

The diagram chase applied to (73) yields the same elasticity complex as (68), namely (62).

Remark 25

(regularity couples rows) On the top-row of diagram (70), the differential operators act row-wise, but the Sobolev spaces have a regularity whose definition couples the rows. The middle space is stable under taking the transpose.

Remark 26

(Boundary conditions in the strain complex) Here we lower the regularity throughout the complex by 1, so that we consider in particular the space:

$$\begin{aligned} {\mathrm {H}}^0_{{{\,\mathrm{sven}\,}}}(U,{\mathbb {S}}) = \{ u \in {\mathrm {H}}^0(U, {\mathbb {S}}) \ : \ {{\,\mathrm{sven}\,}}u \in {\mathrm {H}}^{-1}(U, {\mathbb {R}}) \}. \end{aligned}$$
(76)

We are interested in finding the natural boundary conditions for this space. For u in this space, the \(\tau \tau \) component on the boundary makes sense. Indeed, there is \(u' \in {\mathrm {H}}^1(U, {\mathbb {S}})\) such that \({{\,\mathrm{sven}\,}}u' = {{\,\mathrm{sven}\,}}u\) and \(v \in {\mathrm {H}}^1(U, {\mathbb {V}})\) such that \({{\,\mathrm{def}\,}}v = u - u'\) (on noncontractible domains use the regular decomposition). Now \(u'\) has well defined traces on the boundary, in particular \(\tau \tau \) traces, say in \({\mathrm {L}}^2(\partial U)\). Moreover:

$$\begin{aligned} (({{\,\mathrm{def}\,}}v) \tau ) \cdot \tau = (({{\,\mathrm{grad}\,}}v) \tau ) \cdot \tau , \end{aligned}$$
(77)

and the trace of \(({{\,\mathrm{grad}\,}}v) \tau \) is well defined in \({\mathrm {H}}^{-1/2}(\partial U)\). But then, taking scalar product with \(\tau \) is problematic. The components of \(\tau \) are not in \({\mathrm {H}}^{1/2}(\partial U)\) on non-smooth domains, due to possible discontinuities. On a triangle, one can still conclude that the trace of \((({{\,\mathrm{def}\,}}v) \tau ) \cdot \tau \) is well defined in the dual of \({\mathrm {H}}^{1/2}_{00}\) of each face. But it is problematic that this not enough to define \(\tau \tau \) traces in, say, the dual of Lipschitz functions on the whole boundary.

Characterizing the space of traces seems simpler for smooth boundaries. The difficulties with triangles can then be expressed as being related to the presence of infinite extrinsic curvature at vertices.

One should also prove that an element of \({\mathrm {H}}^0_{{{\,\mathrm{sven}\,}}}(U,{\mathbb {S}})\) has zero \(\tau \tau \) traces iff it is the limit of elements of \({\mathrm {C}}^\infty _c(U, {\mathbb {S}})\).

Remark 27

(Strain complex with lower regularity) As an alternative to the elasticity strain complex (64), we can consider:

(78)

Here:

$$\begin{aligned} {\mathrm {H}}^1_{{{\,\mathrm{curl}\,}}\textsc {t}\,} (U, {\mathbb {V}})&= \{ u \in {\mathrm {H}}^1(U, {\mathbb {V}}) \ : \ {{\,\mathrm{curl}\,}}u^\textsc {t}\,\in {\mathrm {H}}^1(U) \},\end{aligned}$$
(79)
$$\begin{aligned} {\mathrm {H}}^0_{\scriptstyle {{\,\mathrm{curl}\,}}, {{\,\mathrm{sven}\,}}}(U,{\mathbb {S}})&= \{u \in {\mathrm {H}}^0(U, {\mathbb {S}}) \ : \ {{\,\mathrm{curl}\,}}u \in {\mathrm {H}}^0(U, {\mathbb {V}}) \text { and } {{\,\mathrm{sven}\,}}u \in {\mathrm {H}}^0(U, {\mathbb {R}}) \}. \end{aligned}$$
(80)

This complex can be deduced from the following diagram:

(81)

Here:

$$\begin{aligned} {\mathrm {H}}^0_{{\begin{matrix}\scriptstyle {{\,\mathrm{curl}\,}}, {{\,\mathrm{curl}\,}}\textsc {t}\,\\ \scriptstyle {{\,\mathrm{sven}\,}}\end{matrix}}} (U,{\mathbb {M}}) =&\{u \in {\mathrm {H}}^0(U, {\mathbb {M}}) \ : {{\,\mathrm{curl}\,}}u \in {\mathrm {H}}^0(U, {\mathbb {V}}) \wedge \end{aligned}$$
(82)
$$\begin{aligned}&{{\,\mathrm{curl}\,}}u^\textsc {t}\,\in {\mathrm {H}}^0(U, {\mathbb {V}}) \wedge {{\,\mathrm{sven}\,}}u \in {\mathrm {H}}^0(U, {\mathbb {R}}) \}. \end{aligned}$$
(83)

One may check that the \({{\,\mathrm{skew}\,}}\) operator on \({\mathrm {H}}^1(U, {\mathbb {R}})\) maps onto the antisymmetric elements of this space.

Remark 28

(regularity and partitions of unity) The spaces defined in (65) and (80) are stable under multiplication by smooth functions. Thus, partition of unity techniques apply to them, enabling one to glue together smooth enough fields. The regularity in (65) and (80) seems quite adapted to FES techniques, which is about gluing together finite element fields.

Notice that, on the other hand, the \({\mathrm {L}}^2\)-based graph norm space:

$$\begin{aligned} \{u \in {\mathrm {H}}^0(U, {\mathbb {S}}) \ : \ {{\,\mathrm{sven}\,}}u \in {\mathrm {H}}^0(U, {\mathbb {R}}) \}, \end{aligned}$$
(84)

is not stable under multiplication by smooth functions. It seems less amenable to FES techniques.

We see that we have several choices of Sobolev norms in the strain complex. In the stress complex (62), on the other hand, the situation is simpler. The last two spaces are dictated by the Hellinger–Reissner principle, and this fixes the first space.

In dimension 3, this suggests the following two choices of norms, in the elasticity complex. For higher regularity:

(85)

with:

$$\begin{aligned} {\mathcal {X}}^1 = \{u \in {\mathrm {H}}^1(U, {\mathbb {S}}) \ : \ {{\,\mathrm{curl}\,}}\textsc {t}\,{{\,\mathrm{curl}\,}}u \in {\mathrm {H}}^{0}(U, {\mathbb {S}})\}. \end{aligned}$$
(86)

For lower regularity:

(87)

with:

$$\begin{aligned} {\mathcal {Y}}^1 = \{u \in {\mathrm {H}}^0(U, {\mathbb {S}}) \ : \ {{\,\mathrm{curl}\,}}u \in {\mathrm {H}}^0(U, {\mathbb {M}}) \text { and } {{\,\mathrm{curl}\,}}\textsc {t}\,{{\,\mathrm{curl}\,}}u \in {\mathrm {H}}^{0}(U, {\mathbb {S}})\}. \end{aligned}$$
(88)

On the other hand, the complex:

(89)

constructed on the \({\mathrm {L}}^2\) based graph norm space:

$$\begin{aligned} {\mathcal {Z}}^1= \{u \in {\mathrm {H}}^0(U, {\mathbb {S}}) \ : \ {{\,\mathrm{curl}\,}}\textsc {t}\,{{\,\mathrm{curl}\,}}u \in {\mathrm {H}}^0(U, {\mathbb {S}}) \}, \end{aligned}$$
(90)

is avoided, as it is not stable under multiplication by smooth functions.

For Regge calculus, the functional framework of [27] was based on:

$$\begin{aligned} \{u \in {\mathrm {H}}^0(U, {\mathbb {S}}) \ : \ {{\,\mathrm{curl}\,}}\textsc {t}\,{{\,\mathrm{curl}\,}}u \in {\mathrm {H}}^{-1}(U, {\mathbb {S}}) \}, \end{aligned}$$
(91)

which corresponds to lowering the regularity by 1 throughout the complex (85).

Exactness properties of all these sequences can be deduced from results in [10].

5.4 Poincaré Operators

Poincaré and Koszul operators are central to the construction of the finite element de Rham complexes of [7, 52, 63]. They were also essential to the construction of the smooth finite element de Rham complexes in [35]. In [36] we provided similar operators for elasticity complexes. We detail them here, for the two different complexes we have in dimension 2. They will also be used for the construction of finite element elasticity complexes.

Stress elasticity complex We suppose that the domain U is starshaped with respect to the origin 0.

For \(x=(x_1,x_2) \in {\mathbb {R}}^2\) we define \(x^\textsc {r}=(-x_2,x_1)\). Both are identified with column vectors.

We define Poincaré operators for elasticity as follows.

Definition 13

We define \({{\,\mathrm{{\mathfrak {p}}}\,}}_1 : {\varGamma }(U,{\mathbb {S}}) \rightarrow {\varGamma }(U, {\mathbb {R}})\) by:

$$\begin{aligned} ({{\,\mathrm{{\mathfrak {p}}}\,}}_1 u)(x) = \int _0^1 (1-t) x^{\textsc {r}\textsc {t}\,} u(tx)x^\textsc {r}{\mathrm {d}}t. \end{aligned}$$
(92)

We define \({{\,\mathrm{{\mathfrak {p}}}\,}}_2 : {\varGamma }(U,{\mathbb {V}}) \rightarrow {\varGamma }(U, {\mathbb {S}})\) by:

$$\begin{aligned} ({{\,\mathrm{{\mathfrak {p}}}\,}}_2 u)(x)&= {\mathrm {sym}}\left( \int _0^1 t u(tx) x^\textsc {t}\,+ {{\,\mathrm{curl}\,}}(\int _0^1 t(1-t) x^{\textsc {r}\textsc {t}\,} u(tx) x {\mathrm {d}}t)\right) , \end{aligned}$$
(93)

where the \({{\,\mathrm{curl}\,}}\) acts rowwise to produce a matrix.

Proposition 11

We have the following identities.

  • Null-homotopy:

    $$\begin{aligned} {{\,\mathrm{{\mathfrak {p}}}\,}}_1 {{\,\mathrm{airy}\,}}u&= u - j(u), \end{aligned}$$
    (94)
    $$\begin{aligned} {{\,\mathrm{{\mathfrak {p}}}\,}}_2 {{\,\mathrm{div}\,}}v + {{\,\mathrm{airy}\,}}{{\,\mathrm{{\mathfrak {p}}}\,}}_1 v&= v, \end{aligned}$$
    (95)
    $$\begin{aligned} {{\,\mathrm{div}\,}}{{\,\mathrm{{\mathfrak {p}}}\,}}_2 w&= w. \end{aligned}$$
    (96)

    where j(u) is the affine function \(x \mapsto u(0) + {{\,\mathrm{grad}\,}}u (0) x\).

  • Sequence property:

    $$\begin{aligned} {{\,\mathrm{{\mathfrak {p}}}\,}}_1 {{\,\mathrm{{\mathfrak {p}}}\,}}_2 = 0. \end{aligned}$$
    (97)
  • These operators preserve polynomials, moreover:

    \({{\,\mathrm{{\mathfrak {p}}}\,}}_1\) increases polynomial degree by 2 (at most).

    \({{\,\mathrm{{\mathfrak {p}}}\,}}_2\) increases polynomial degree by 1 (at most).

We may then define two Koszul operators.

Remark that on constant fields u these operators reduce to:

$$\begin{aligned} {{\,\mathrm{{\mathfrak {p}}}\,}}_1 u (x) = 1/2 x^\textsc {r}u x^\textsc {r}, \end{aligned}$$
(98)

and:

$$\begin{aligned} {{\,\mathrm{{\mathfrak {p}}}\,}}_2 u (x) = 2/3 \left[ \begin{array}{cc} x_1 u_1 &{} 1/2(x_2 u_1 + x_1 u_2)\\ 1/2(x_1 u_2 + x_2 u_1) &{} x_2 u_2 \end{array}\right] \end{aligned}$$
(99)

More generally we let the Koszul operators \({{\,\mathrm{{\mathfrak {K}}}\,}}_i^r\) be the restrictions of \({{\,\mathrm{{\mathfrak {p}}}\,}}_i\) to homogeneous polynomials of degree r. We then have:

$$\begin{aligned} {{\,\mathrm{{\mathfrak {K}}}\,}}_1^r u (x)&= \frac{1}{(r+1)(r+2)}x^{\textsc {r}\textsc {t}\,}u(x) x^{\textsc {r}}, \end{aligned}$$
(100)
$$\begin{aligned} {{\,\mathrm{{\mathfrak {K}}}\,}}_2^r u (x)&= {\mathrm {sym}}\left( \frac{1}{r + 2} u (x) x^\textsc {t}\,- \frac{1}{(r+2) (r+3)} {{\,\mathrm{curl}\,}}( x^{\textsc {r}\textsc {t}\,} u (x)x) \right) . \end{aligned}$$
(101)

Strain elasticity complex For the strain elasticity complex, we also have Poincaré operators (we use the same notation). We suppose that the domain U is starshaped with respect to the origin 0. In practice, we will use these operators with respect to other base points, namely the central vertex of the Clough–Tocher split.

Definition 14

We define \({{\,\mathrm{{\mathfrak {p}}}\,}}_1 : {\varGamma }(U, {\mathbb {S}}) \rightarrow {\varGamma }(U, {\mathbb {V}})\) by:

$$\begin{aligned} {{\,\mathrm{{\mathfrak {p}}}\,}}_1 u = \int _{0}^{1}u(tx)^\textsc {t}\,{x} {\mathrm {d}}t +\int _{0}^{1}(1-t)x^{\textsc {r}} ({{\,\mathrm{curl}\,}}u(tx))^\textsc {t}\,x {\mathrm {d}}t, \end{aligned}$$
(102)

and \({{\,\mathrm{{\mathfrak {p}}}\,}}_2 : {\varGamma }(U, {\mathbb {R}}) \rightarrow {\varGamma }(U, {\mathbb {S}})\) by:

$$\begin{aligned} {{\,\mathrm{{\mathfrak {p}}}\,}}_{2}u = {x}^{\textsc {r}} \left( \int _{0}^{1}t(1-t)u(tx) {\mathrm {d}}t \right) {x}^{\textsc {r}\textsc {t}\,}. \end{aligned}$$
(103)

Proposition 12

The Poincaré operators have the following properties:

  • Null-homotopy: We have, for \(u\in {\varGamma }(U, {\mathbb {V}})\), \(v \in {\varGamma }(U, {\mathbb {S}})\) and \(w \in {\varGamma }(U, {\mathbb {R}})\):

    $$\begin{aligned} {{\,\mathrm{{\mathfrak {p}}}\,}}_{1} {{\,\mathrm{def}\,}}u&= u - j(u),\end{aligned}$$
    (104)
    $$\begin{aligned} {{\,\mathrm{{\mathfrak {p}}}\,}}_{2} {{\,\mathrm{sven}\,}}v + {{\,\mathrm{def}\,}}{{\,\mathrm{{\mathfrak {p}}}\,}}_{1} v&= v,\end{aligned}$$
    (105)
    $$\begin{aligned} {{\,\mathrm{sven}\,}}{{\,\mathrm{{\mathfrak {p}}}\,}}_{2} w&= w, \end{aligned}$$
    (106)

    where j(u) is the rigid motion \(x \mapsto u(0) + 1/2 {{\,\mathrm{curl}\,}}\textsc {t}\,u (0) x^\textsc {r}\).

  • Sequence property:

    $$\begin{aligned} {{\,\mathrm{{\mathfrak {p}}}\,}}_1 {{\,\mathrm{{\mathfrak {p}}}\,}}_2 = 0. \end{aligned}$$
    (107)
  • These operators preserve polynomials, moreover:

    \({{\,\mathrm{{\mathfrak {p}}}\,}}_1\) increases polynomial degree by 1 (at most).

    \({{\,\mathrm{{\mathfrak {p}}}\,}}_2\) increases polynomial degree by 2 (at most).

Definition 15

(Koszul operators) Taking the Poincaré operators on homogeneous polynomials of degree r, we obtain the Koszul operators. More generally, we let the operator \({{\,\mathrm{{\mathfrak {K}}}\,}}_{1}^{r}: {\varGamma }(U, {\mathbb {S}}) \mapsto {\varGamma }(U, {\mathbb {V}})\) be given by:

$$\begin{aligned} {{\,\mathrm{{\mathfrak {K}}}\,}}_{1}^{r}u = \frac{1}{r+1} u {x}+\frac{1}{(r+1)(r+2)}{x}^\textsc {r}({{\,\mathrm{curl}\,}}u)^\textsc {t}\,{x}, \end{aligned}$$
(108)

whereas the operator \({{\,\mathrm{{\mathfrak {K}}}\,}}_{2}^{r}: {\varGamma }(U, {\mathbb {R}}) \rightarrow {\varGamma }(U, {\mathbb {S}})\) is given by:

$$\begin{aligned} {{\,\mathrm{{\mathfrak {K}}}\,}}_{2}^{r} u = \frac{1}{(r+2)(r+3)}{x}^{\textsc {r}}u {x}^{\textsc {r}\textsc {t}\,}. \end{aligned}$$
(109)

The next lemma shows some regularity of these operators.

Lemma 6

For w piecewise smooth on the Clough–Tocher split \({\mathcal {R}}(T)\), we have \({{\,\mathrm{{\mathfrak {p}}}\,}}_{2} w \in {\mathrm {H}}^0_{{{\,\mathrm{curl}\,}}}(T, {\mathbb {S}})\).

Proof

By straightforward calculations, \((x^{\textsc {r}} x^{\textsc {r}\textsc {t}\,}) x=0\) and \( \textsc {t}\,{{\,\mathrm{curl}\,}}(x^{\textsc {r}} x^{\textsc {r}\textsc {t}\,}) x=0\). This implies that \(wx^{\textsc {r}\textsc {t}\,} x^{\textsc {r}}\) and \(w {{\,\mathrm{curl}\,}}(x^{\textsc {r}\textsc {t}\,} x^{\textsc {r}})\) have continuous tangential components even if w is discontinuous across the interior edges of the Clough–Tocher split. \(\square \)

6 FES for the Stress Complex

6.1 Induced Operators and Discrete Vector Bundle

We consider a vertex V, in an edge E, in a triangle T. The oriented unit tangent on E is denoted \(\tau \), and the normal is denoted \(\nu \), so that \((\tau , \nu )\) is an oriented orthonormal basis of \({\mathbb {V}}\).

Spaces and operators for the stress complex (62) may be arranged in the following commuting diagram:

Fig. 2
figure 2

Stress complex, restrictions and induced operators

Remark 29

With the preceding notations we have that, for the kernels of the initial differentials:

  • K(T) consists of affine functions.

  • K(E) consists of pairs (uv) of real valued functions on E such that v is constant and u is affine.

  • \(K(V) = {\mathbb {R}}\times {\mathbb {V}}\).

To complete the picture we need to define a discrete vector bundle. We take the dual point of view developed in Sect. 3.3 page 21.

  • We let M(T) denote the space of rigid motions. The rigid motions appear as the kernel of the formal adjoint of \({{\,\mathrm{div}\,}}: {\varGamma }(T, {\mathbb {S}}) \rightarrow {\varGamma }(T, {\mathbb {V}})\), acting on symmetric matrices, namely the deformation operator \({{\,\mathrm{def}\,}}\).

  • We let M(E) be the kernel of the (formal) adjoint of \({\mathsf {d} }^0_E : {\varGamma }(E, {\mathbb {R}}\times {\mathbb {R}}) \rightarrow {\varGamma }(E, {\mathbb {R}}\times {\mathbb {R}})\), which is:

    $$\begin{aligned} (u,v) \mapsto (\partial ^2_\tau v, \partial _{\tau } u). \end{aligned}$$
    (110)

    Therefore M(E) consists of pairs (uv) of functions on E, where u is constant and v is affine.

  • We let \(M(V) = {\mathbb {R}}\times {\mathbb {V}}\).

We define bijective restriction operators \(M(T) \rightarrow M(E)\) and \(M(E) \rightarrow M(V)\) as follows.

  • We define \(M(T) \rightarrow M(E)\) as the map sending a rigid motion \(\phi \) to the pair \((\phi \cdot \tau , \phi \cdot \nu )\), where restriction to E is implied. Indeed the tangent component of \(\phi \) on E is constant and the normal component on E is affine.

  • We define \(M(E) \rightarrow M(V)\) as the map sending \((\phi ,\psi ) \in M(E)\) to the pair \((-\partial _\tau \psi , \psi \tau - \phi \nu )\), evaluated at V, which is in M(V).

  • There is one commuting diagram to check, when V is the common vertex of two edges E and \(E'\), of T, namely that the two compositions \(M(T) \rightarrow M(E) \rightarrow M(V)\) and \(M(T) \rightarrow M(E') \rightarrow M(V)\) are equal. But, the composed restriction \(M(T) \rightarrow M(E) \rightarrow M(V)\) is:

    $$\begin{aligned} \phi \mapsto (-\partial _\tau (\phi \cdot \nu ), (\phi \cdot \nu ) \tau - (\phi \cdot \tau )\nu ) = (1/2{{\,\mathrm{curl}\,}}\phi (V), - J \phi (V)),\nonumber \\ \end{aligned}$$
    (111)

    which is independent of E.

We need bilinear pairings.

  • On \({\varGamma }(T, {\mathbb {V}}) \times M(T)\) we define \(\langle u, \phi \rangle _T = \int _T u \cdot \phi \).

  • On \({\varGamma }(E, {\mathbb {R}}\times {\mathbb {R}}) \times M(E)\) we define \(\langle (u,v), (\phi , \psi ) \rangle _E = \int _E u \phi + v \psi \).

  • On \({\varGamma }(V, {\mathbb {R}}\times {\mathbb {V}}) \times M(V)\) we define \(\langle (u,v), (\phi , \psi ) \rangle _V = u \phi + v \cdot \psi \).

We also need two Stokes-like identities. They are:

  • If \(u \in {\varGamma }(T, {\mathbb {S}})\) and \(\phi \in M(T)\), we write:

    $$\begin{aligned} \int _T {{\,\mathrm{div}\,}}u \cdot \phi&= \int _{\partial T} u \nu \cdot \phi , \end{aligned}$$
    (112)
    $$\begin{aligned}&= \int _{\partial T} (u \nu \cdot \tau )(\phi \cdot \tau ) + (u \nu \cdot \nu )(\phi \cdot \nu ). \end{aligned}$$
    (113)
  • If \((u,v) \in {\varGamma }(E, {\mathbb {R}}\times {\mathbb {R}})\) and \((\phi ,\psi )\in M(E)\), we have:

    $$\begin{aligned} \int _E {\mathsf {d} }^0_E (u,v) \cdot (\phi ,\psi )&= \int _E (- \partial _\tau v)\phi + (\partial _\tau ^2 u)\psi , \end{aligned}$$
    (114)
    $$\begin{aligned}&= \Big [ \partial _\tau u \psi - u \partial _\tau \psi - v \phi \Big ], \end{aligned}$$
    (115)
    $$\begin{aligned}&= \Big [ u(-\partial _\tau \psi ) + (\partial _\tau u \tau + v \nu ) \cdot (\psi \tau - \phi \nu ) \Big ]. \end{aligned}$$
    (116)

The brackets denote taking the difference of the values at endpoints. We state:

Proposition 13

The above data consisting of spaces \(M(\cdot )\) and restriction maps, provide, by dualization (as in Sect. 3.3), a discrete vector bundle with (flat) connection, where the fibers are all isomorphic to rigid motions. The provided bilinear pairings and the Stokes like identities are what is furthermore required for the definition of a FES.

Lemma 7

  • For any triangle T, the complex \({\mathcal {C}}^{\scriptscriptstyle \bullet }({{\,\mathrm{Cl}\,}}(T), M^\star )\) is exact except at index 0 where the kernel can be characterized as follows. For \(u \in {\mathcal {C}}^0({{\,\mathrm{Cl}\,}}(T), M^\star )\) we have \(\delta _{\mathsf {t} }u = 0\) iff u represents the degrees of freedom of an affine function—i.e. there exists an affine function v on T, such that u and v evaluate similarly against M(V) for each vertex V of T.

  • For any edge E, the complex \({\mathcal {C}}^{\scriptscriptstyle \bullet }({{\,\mathrm{Cl}\,}}(E), M^\star )\) is exact except at index 0 where the kernel can be characterized as follows. For \(u \in {\mathcal {C}}^0({{\,\mathrm{Cl}\,}}(E), M^\star )\) we have \(\delta _{\mathsf {t} }u = 0\) iff u represents the degrees of freedom of the restriction of an affine function—i.e. there exists an affine v on \({\mathbb {R}}^2\), such that u and v evaluate similarly against M(V) for each vertex V of E.

Proof

From Corollary 1. At index 0 the kernel of the discrete covariant exterior derivative has dimension 3. On the other hand, the affine functions naturally inject into this kernel. Surjectivity then follows from dimension equality. \(\square \)

6.2 Discrete Spaces

We now define finite element spaces for the stress complex, following [55]. Our main novelty is that by highlighting degrees of freedom involving the M(T) spaces, we are led to a natural reduction of this space (where stresses have dimension 9 on an element, reduced from 15), see Remark 32. Notice that in [55], the displacement is chosen in the finite element space \({\mathrm {P}}^1(T, {\mathbb {V}})\) rather than \({\mathrm {P}}^0({\mathcal {R}}(T), {\mathbb {V}})\). Thus their finite element pair is not part of a complex. A point of view emphasizing discrete complexes is developed in [4].

For a triangle T, we denote by \({\mathcal {R}}(T)\) the Clough–Tocher split of T.

Definition 16

(FE for the stress complex)

  • We define:

    $$\begin{aligned} A^0(T) = {\mathrm {C}}^1 {\mathrm {P}}^3 ({\mathcal {R}}(T), {\mathbb {R}}), \end{aligned}$$
    (117)

    \(A^0(T)\) is thus the Clough–Tocher space. The degrees of freedom are: values at vertices (3), values of the gradient at vertices (\(3 \times 2\)), integral of normal derivative on edges (3).

  • We define, following [55]:

    $$\begin{aligned} A^1(T) = {\mathrm {H}}^0_{{{\,\mathrm{div}\,}}} {\mathrm {P}}^1({\mathcal {R}}(T), {\mathbb {S}}), \end{aligned}$$
    (118)

    by which we mean symmetric matrix fields that are piecewise polynomial of degree at most 1, with continuous normal components on interior edges. The degrees of freedom are: on edges E, \(\int _E u \nu \cdot v\) for \(v \in {\mathrm {P}}^1(E, {\mathbb {V}})\) (\(3 \times 4\)), and on T, integration against \({\mathrm {P}}^0(T, {\mathbb {S}})\) (3).

  • We define:

    $$\begin{aligned} A^2(T)= {\mathrm {P}}^0({\mathcal {R}}(T), {\mathbb {V}}), \end{aligned}$$
    (119)

    that is the space of piecewise constant vector fields. The degrees of freedom are integration against \({\mathrm {P}}^1(T, {\mathbb {V}})\) (6).

These finite element spaces are represented in Fig. 3.

Fig. 3
figure 3

Johnson Mercier stress complex

Remark 30

Notice that:

  • for \(A^0(T)\), pairings of restrictions with M(V) at vertices V can be recovered from the DoFs.

  • for \(A^1(T)\), pairings of restrictions with M(E) at edges E can be recovered from the DoFs.

  • for \(A^2(T)\), pairings with M(T) can be recovered from the DoFs.

Theorem 4

(FE for the stress complex)

  • \(A^0(T)\) has dimension 12, and the provided DoFs are unisolvent.

  • \(A^1(T)\) has dimension 15, and the provided DoFs are unisolvent.

  • \(A^2(T)\) has dimension 6, and the provided DoFs are unisolvent.

  • The complex \(A^{\scriptscriptstyle \bullet }(T)\) is a resolution of the affine functions.

Proof

(i) For \(A^0(T)\) this is well known.

(ii) For \(A^2(T)\) one can consider the scalar analogue, and go via the dual result, that any \(u \in {\mathrm {P}}^1(T)\) is uniquely determined by the integrals on the three small triangles in \({\mathcal {R}}(T)\), since their isobarycentres are not colinear.

(iii) For \(A^1(T)\), this is proved in [55], also via the Clough–Tocher element. We provide a slight modification of that proof, exploiting the M DoFs (see Remark 30).

The space \({\mathrm {P}}^1({\mathcal {R}}(T), {\mathbb {S}})\) has dimension \(3 \times 3 \times 3 = 27\). Imposing continuity of the normal component on interior edges can be expressed with \(3 \times 2 \times 2 = 12\) constraints, so \(\dim A^1(T)\ge 27-12 = 15\).

Now let \(u \in A^1(T)\) and suppose that its DoFs are 0. It then follows that \({{\,\mathrm{div}\,}}u \in A^2(T)\) has DoFs 0, by integration by parts. So \({{\,\mathrm{div}\,}}u = 0\) and hence \(u = {{\,\mathrm{airy}\,}}v\) for some \(v \in {\mathrm {H}}^2(T)\). The second-order derivatives of v are in \({\mathrm {P}}^1({\mathcal {R}}(T))\), hence \(v \in A^0(T)\). Now the M(E)-DoFs of \({{\,\mathrm{airy}\,}}v\) are 0, so there exists \(w \in {\mathrm {P}}^1(T)\) such that v and w have the same M(V)-DoFs (see Lemma 7). We have \(u = {{\,\mathrm{airy}\,}}(v - w)\). On a given edge \(\partial _\tau \partial _\nu (v-w) = 0\) from the DoFs of u, so \(\partial _\nu (v-w)\) is affine, in fact constant. Therefore, since the vertex DoFs are zero, \(v-w = 0\) so \(u= 0\).

(iv) Exactness of \(A^{\scriptscriptstyle \bullet }(T)\) at index 1, was just proved. At index 0 the kernel is the space of affine functions. Exactness at index 2 then follows by dimension count. \(\square \)

Remark 31

For each edge E, let \(\chi _E\) be a nonzero affine map \(E \rightarrow {\mathbb {R}}\) such that \( \int \chi _E = 0\).

In \(A^1(T)\), we may think of the provided DoFs attached to an edge E as

  • Integrals of \(u \nu \cdot \nu \) against \({\mathrm {P}}^1(E)\) and of \(u \nu \cdot \tau \) against \({\mathrm {P}}^0(E)\), which together constitute pairings with M(E).

  • Integral of \(u \nu \cdot \tau \) against \(\chi _E\).

From this point of view it seems natural to replace the edge DoF in \(A^0(T)\) (namely \(u \mapsto \int _E \partial _\nu u\)) by \(u \mapsto \int (\partial _\tau \partial _\nu u) \chi _E\). In particular \(\int (\partial _\tau \partial _\nu u) \chi _E = 0\) iff \(\partial _\nu u\) is affine, which appeared as a step in the proof of Theorem 4.

Definition 17

(FES for the stress complex) We get a finite element system by appending the following spaces:

$$\begin{aligned} A^0(E)&= {\mathrm {P}}^3(E) \times {\mathrm {P}}^2(E), \end{aligned}$$
(120)
$$\begin{aligned} A^1(E)&= {\mathrm {P}}^1(E) \times {\mathrm {P}}^1(E), \end{aligned}$$
(121)
$$\begin{aligned} A^0(V)&= {\mathbb {R}}\times {\mathbb {V}}. \end{aligned}$$
(122)

A system of degrees of freedom is defined by:

$$\begin{aligned} F^0(T)&= 0,\end{aligned}$$
(123)
$$\begin{aligned} F^0(E)&= {\mathbb {R}}\{A^0(E) \ni (u,v) \mapsto \int _E (\partial _\tau v) \chi _E \},\end{aligned}$$
(124)
$$\begin{aligned} F^0(V)&= \{\langle \cdot , \phi \rangle _V \ : \ \phi \in M(V) \},\end{aligned}$$
(125)
$$\begin{aligned} F^1(T)&= \{A^1(T) \ni u \mapsto \int _T u \cdot v \ : \ v \in {\mathrm {P}}^0(T, {\mathbb {S}})\},\end{aligned}$$
(126)
$$\begin{aligned} F^1(E)&= \{\langle \cdot , \phi \rangle _E \ : \ \phi \in M(E) \} \oplus \end{aligned}$$
(127)
$$\begin{aligned}&\qquad {\mathbb {R}}\{A^1(E) \ni (u,v) \mapsto \int _E u \chi _E \},\end{aligned}$$
(128)
$$\begin{aligned} F^2(T)&= \{A^2(T) \ni u \mapsto \int _T u \cdot v \ : \ v \in {\mathrm {P}}^1(T, {\mathbb {V}}) \}. \end{aligned}$$
(129)

Proposition 14

The above finite element system is compatible and the system of degrees of freedom unisolvent.

Proof

The essential points were already proved in Theorem 4. The main addition is the unisolvence of the degrees of freedom on \(A^1(E)\), which is straigthforward. \(\square \)

Remark 32

(Minimal spaces) The preceding FE complex may be reduced as follows:

  • \({\tilde{A}}^0(T)\) is the reduced Clough–Tocher element where \(\partial _\nu u\) is affine on edges. The DoFs are now only pairings with M(V) at vertices. The dimension is 9.

  • \({\tilde{A}}^2(T)\) consists of divergence free elements of \({\mathrm {P}}^0({\mathcal {R}}(T), {\mathbb {V}})\), i.e. the elements that are continuous in the normal direction on interior edges. It can also be characterized as \({{\,\mathrm{curl}\,}}{\mathrm {C}}^0{\mathrm {P}}^1({\mathcal {R}}(T), {\mathbb {R}})\). The dimension is 3 and the degrees of freedom are now pairings with M(T) only.

  • \({\tilde{A}}^1(T)\) is the subspace of \({\mathrm {H}}^0_{{{\,\mathrm{div}\,}}} {\mathrm {P}}^1({\mathcal {R}}(T), {\mathbb {S}})\), consisting of elements u such that \({{\,\mathrm{div}\,}}u \in {\tilde{A}}^2(T)\) and, on any edge, \(u \nu \cdot \tau \in {\mathrm {P}}^0(E)\). The dimension is 9, and the degrees of freedom are pairings with M(E) on edges, only.

A compatible FES is obtained by appending

$$\begin{aligned} A^0(E)&= {\mathrm {P}}^3(E) \times {\mathrm {P}}^1(E),\end{aligned}$$
(130)
$$\begin{aligned} A^1(E)&= {\mathrm {P}}^0(E) \times {\mathrm {P}}^1(E),\end{aligned}$$
(131)
$$\begin{aligned} A^0(V)&= {\mathbb {R}}\times {\mathbb {V}}. \end{aligned}$$
(132)

As already asserted, natural degrees of freedom are:

$$\begin{aligned} {\tilde{F}}^0(T)&= 0,\end{aligned}$$
(133)
$$\begin{aligned} {\tilde{F}}^0(E)&= 0,\end{aligned}$$
(134)
$$\begin{aligned} {\tilde{F}}^0(V)&= \{\langle \cdot , \phi \rangle _V \ : \ \phi \in M(V) \},\end{aligned}$$
(135)
$$\begin{aligned} {\tilde{F}}^1(T)&= 0,\end{aligned}$$
(136)
$$\begin{aligned} {\tilde{F}}^1(E)&= \{\langle \cdot , \phi \rangle _E \ : \ \phi \in M(E) \} \end{aligned}$$
(137)
$$\begin{aligned} {\tilde{F}}^2(T)&= \{\langle \cdot , \phi \rangle _E \ : \ \phi \in M(T) \}. \end{aligned}$$
(138)

Remark 33

The Johnson Mercier stress complex can be obtained from standard finite element de Rham complexes by a discrete BGG diagram chase. See Fig. 4.

One could also exhibit an alternative diagram chase, based on Remark 24.

Fig. 4
figure 4

Diagram chase for the Johnson Mercier element

Remark 34

High order finite element stress complexes are provided in [4]. They seem to fit in our framework too. Their lowest order complex starts with the space \({\mathrm {C}}^1{\mathrm {P}}^4({\mathcal {R}}(T), {\mathbb {R}})\) and ends in \({\mathrm {P}}^1(T, {\mathbb {V}})\). The middle space of stresses augments \({\mathrm {P}}^2(T, {\mathbb {S}})\) with a 3-dimensional space, so has dimension 21.

7 FES for the Strain Complex

7.1 Induced Operators and Discrete Vector Bundle

We here consider now the strain complex (64). We identify induced spaces and operators on edges and vertices. They are summarized in the commuting diagram depicted in Fig. 5.

Again we consider a vertex V, in an edge E, in a triangle T. The oriented unit tangent on E is denoted \(\tau \), and the normal is denoted \(\nu \), so that \((\tau , \nu )\) is an oriented orthonormal basis of \({\mathbb {V}}\).

Fig. 5
figure 5

Straincomplex, restrictions and induced operators: high regularity

If we consider instead the complex of lower regularity, as in (78), the corresponding diagram is depicted in Fig. 6.

Fig. 6
figure 6

Straincomplex, restrictions and induced operators: low regularity

Remark 35

Notice that for continuous symmetric matrix fields u, \({{\,\mathrm{sven}\,}}u\) is square integrable iff on edges \(\partial _\nu u \tau \cdot \tau \) is continuous. This is checked by integration by parts. Recall also that in Regge calculus the matrix field is not required to be continuous, but \(u\tau \cdot \tau \) is, guaranteeing that the \({{\,\mathrm{sven}\,}}\) is measure valued.

The discrete vector bundle is defined as follows:

  • We let M(T) be the kernel of the Airy operator, namely the space of affine functions.

  • We let M(E) the space of pairs (uv) where u is an affine function on E and v is constant.

  • We let M(V) be the space \({\mathbb {V}}\times {\mathbb {R}}\).

We define restriction operators:

  • \(M(T) \rightarrow M(E) : \phi \mapsto (\phi |_E, \partial _\nu \phi |_E)\).

  • \(M(E) \rightarrow M(V) : (\phi , \psi ) \mapsto (\psi (V) \tau - \partial _\tau \phi (V) \nu , \phi (V))\).

  • The composition \(M(T) \rightarrow M(E) \rightarrow M(V)\) is then \(\phi \mapsto ({{\,\mathrm{curl}\,}}\phi (V), \phi (V))\), which is independent of E.

The pairings are:

  • on \({\varGamma }(T, {\mathbb {R}}) \times M(T)\) : \(\langle u, \phi \rangle = \int u \phi \).

  • on \({\varGamma }(E, {\mathbb {R}}^2 \times {\mathbb {R}}) \times M(E)\):

    $$\begin{aligned} \langle (u,v, u'), (\phi , \psi ) \rangle = \int _E u \psi + \partial _\tau v \phi - v \partial _\tau \phi - u' \phi . \end{aligned}$$
    (139)
  • on \({\varGamma }(V, {\mathbb {V}}\times {\mathbb {R}}) \times M(V)\): \(\langle (u, v) , (\phi , \psi ) \rangle = u \cdot \phi + v \psi \).

The Stokes-like identities are:

  • For \(u \in {\varGamma }(T, {\mathbb {S}})\) and \(\phi \in M(T)\), we have:

    $$\begin{aligned} \int _T {{\,\mathrm{sven}\,}}u \ \phi&= \int _{\partial T} {{\,\mathrm{curl}\,}}u \cdot \tau \phi + \int _{\partial T} u \tau \cdot \textsc {t}\,{{\,\mathrm{curl}\,}}\phi , \end{aligned}$$
    (140)
    $$\begin{aligned}&= \int _{\partial T} (\partial _\tau u \tau \cdot \nu - \partial _\nu u \tau \cdot \tau ) \phi + u \tau \cdot (\partial _\nu \phi \tau - \partial _\tau \phi \nu ),\end{aligned}$$
    (141)
    $$\begin{aligned}&= \int _{\partial T} u \tau \cdot \tau \partial _\nu \phi + \partial _\tau u\tau \cdot \nu \phi - u \tau \cdot \nu \partial _\tau \phi - \partial _\nu u \tau \cdot \tau \phi ,\end{aligned}$$
    (142)
    $$\begin{aligned}&= \sum _E \langle (u \tau \cdot \tau , u \tau \cdot \nu , \partial _\nu u\tau \cdot \tau ), (\phi , \partial _\nu \phi ) \rangle _E. \end{aligned}$$
    (143)
  • For \((u,v,u') \in {\varGamma } (E, {\mathbb {R}}^2 \times {\mathbb {R}})\) and \((\phi , \psi ) \in M(E)\):

    $$\begin{aligned}&\langle (\partial _\tau u, \frac{1}{2}(u' + \partial _\tau v), \partial _\tau u'), (\phi , \psi ) \rangle \end{aligned}$$
    (144)
    $$\begin{aligned}&\quad = \int _E \partial _\tau u \psi + \partial _\tau \frac{1}{2}(u' + \partial _\tau v) \phi - \frac{1}{2}(u' + \partial _\tau v) \partial _\tau \phi - \partial _\tau u' \phi , \end{aligned}$$
    (145)
    $$\begin{aligned}&\quad = \Big [ u \psi \Big ] + \Big [ \frac{1}{2}(u' + \partial _\tau v) \phi \Big ] - \int (u' + \partial _\tau v) \partial _\tau \phi - \Big [ u' \phi \Big ] + \int u' \partial _\tau \phi ,\end{aligned}$$
    (146)
    $$\begin{aligned}&\quad = \Big [ u \psi \Big ] + \Big [ \frac{1}{2}(u' + \partial _\tau v) \phi \Big ] - \Big [ v \partial _\tau \phi \Big ] - \Big [ u' \phi \Big ],\end{aligned}$$
    (147)
    $$\begin{aligned}&\quad = \Big [ u \psi \Big ] + \Big [ \frac{1}{2}(\partial _\tau v -u') \phi \Big ] - \Big [ v \partial _\tau \phi \Big ],\end{aligned}$$
    (148)
    $$\begin{aligned}&\quad = \Big [ \langle (u \tau + v \nu , \frac{1}{2}(\partial _\tau v -u')), (\psi \tau - \partial _\tau \phi \nu , \phi ) \rangle _{V} \Big ]. \end{aligned}$$
    (149)

    Here the brackets denote differences between values at the two vertices of E.

We state:

Proposition 15

The above data consisting of spaces \(M(\cdot )\) and restriction maps, provide, by dualization (as in Sect. 3.3), a discrete vector bundle with (flat) connection, where the fibers are all isomorphic to affine functions. The provided bilinear pairings and the Stokes like identities are what is furthermore required for the definition of a FES.

Lemma 8

  • For any triangle T, the complex \({\mathcal {C}}^{\scriptscriptstyle \bullet }({{\,\mathrm{Cl}\,}}(T), M^\star )\) is exact except at index 0 where the kernel can be characterized as follows. For \(u \in {\mathcal {C}}^0({{\,\mathrm{Cl}\,}}(T), M^\star )\) we have \(\delta _{\mathsf {t} }u = 0\) iff u represents the degrees of freedom of a rigid motion—i.e. there exists a rigid motion v on T, such that u and v evaluate similarly against M(V) for each vertex V of T.

  • For any edge E, the complex \({\mathcal {C}}^{\scriptscriptstyle \bullet }({{\,\mathrm{Cl}\,}}(E), M^\star )\) is exact except at index 0 where the kernel can be characterized as follows. For \(u \in {\mathcal {C}}^0({{\,\mathrm{Cl}\,}}(E), M^\star )\) we have \(\delta _{\mathsf {t} }u = 0\) iff u represents the degrees of freedom of the restriction of of rigid motion—i.e. there exists a rigid motion v on \({\mathbb {R}}^2\), such that u and v evaluate similarly against M(V) for each vertex V of E.

Proof

From Corollary 1. At index 0 the kernel of the discrete covariant exterior derivative has dimension 3. On the other hand, the rigid motions naturally inject into this kernel. Surjectivity then follows from dimension equality. \(\square \)

7.2 Discrete Spaces: Higher Regularity

For a triangle T, we denote by \({\mathcal {R}}(T)\) the Clough Tocher split of T.

Definition 18

(FE for the strain complex: definition à la Ciarlet)

  • We define:

    $$\begin{aligned} A^0(T) = {\mathrm {C}}^1 {\mathrm {P}}^3 ({\mathcal {R}}(T), {\mathbb {V}}), \end{aligned}$$
    (150)

    \(A^0(T)\) is thus the vector-valued variant of the Clough Tocher space. The degrees of freedom are: values at vertices (\(3 \times 2\)), values of the gradient at vertices (\(3 \times 4\)), integral of normal derivative on edges (\(3 \times 2\)).

  • We define:

    $$\begin{aligned} A^1(T) = {\mathrm {C}}^0_{{{\,\mathrm{sven}\,}}} {\mathrm {P}}^2({\mathcal {R}}(T), {\mathbb {S}}), \end{aligned}$$
    (151)

    by which we mean symmetric matrix fields that are piecewise polynomial of degree at most 2, are continuous, and have an integrable \({{\,\mathrm{sven}\,}}\). The degrees of freedom are: values at vertices (\(3 \times 3\)), pairings of edge restrictions with M(E) for each edge E (\(3 \times 3\)), integral against normal vector on edges (\(3 \times 2\)).

  • We define:

    $$\begin{aligned} A^2(T)= {\mathrm {P}}^0({\mathcal {R}}(T), {\mathbb {R}}), \end{aligned}$$
    (152)

    that is the space of piecewise constants. The degrees of freedom are pairings with M(T), namely integration against affine functions.

Remark 36

On \(A^0(T)\), pairings of restrictions to vertices, with M(V) at vertices V, providing the vertex values and vertex values of the \({{\,\mathrm{curl}\,}}\), constitute a subspace of the provided vertex DoFs.

On \(A^1(T)\), the edge DoFs involve normal derivatives through the restriction operators and tangential derivatives through the pairing with M(E).

The finite element spaces of Definition 18 are represented in Fig. 7.

Fig. 7
figure 7

Strain complex with high continuity

Proposition 16

The provided DoFs give interpolators commuting with the differential operators.

The preceding finite element spaces can be regarded as a finite element system, as follows.

Definition 19

(FES for the strain complex)

  • Differential operators and restrictions are defined according to Fig. 5.

  • The spaces \(A^0(T)\), \(A^1(T)\) and \(A^2(T)\) are defined as in Definition 18.

  • Spaces on edges E and vertices V are defined by:

    $$\begin{aligned} A^0(E)&= {\mathrm {P}}^3(E) \times {\mathrm {P}}^3(E) \times {\mathrm {P}}^2(E) \times {\mathrm {P}}^2(E), \end{aligned}$$
    (153)
    $$\begin{aligned} A^1(E)&= {\mathrm {P}}^2(E) \times {\mathrm {P}}^2(E) \times {\mathrm {P}}^2(E) \times {\mathrm {P}}^1(E), \end{aligned}$$
    (154)
    $$\begin{aligned} A^0(V)&= {\mathbb {V}}\times {\mathbb {M}}, \end{aligned}$$
    (155)
    $$\begin{aligned} A^1(V)&= {\mathbb {S}}. \end{aligned}$$
    (156)
  • A system of degrees of freedom F on A is defined by:

    $$\begin{aligned} F^0(T)&= 0, \end{aligned}$$
    (157)
    $$\begin{aligned} F^0(E)&= {\mathbb {R}}\{A^0(E) \ni (u,v,u',v') \mapsto \textstyle \int _E u' \} \oplus \end{aligned}$$
    (158)
    $$\begin{aligned}&\qquad {\mathbb {R}}\{A^0(E) \ni (u,v,u',v') \mapsto \textstyle \int _E v' \}, \end{aligned}$$
    (159)
    $$\begin{aligned} F^0(V)&= A^0(V)^\star \approx {\mathbb {V}}^\star \oplus {\mathbb {M}}^\star , \end{aligned}$$
    (160)
    $$\begin{aligned} F^1(T)&= 0, \end{aligned}$$
    (161)
    $$\begin{aligned} F^1(E)&= \{ \langle \cdot , \phi \rangle _E \ : \ \phi \in M(E) \} \oplus \end{aligned}$$
    (162)
    $$\begin{aligned}&\qquad {\mathbb {R}}\{A^1(E) \ni (u,v,w, u') \mapsto \textstyle \int _E v \} \oplus \end{aligned}$$
    (163)
    $$\begin{aligned}&\qquad {\mathbb {R}}\{A^1(E) \ni (u,v,w, u') \mapsto \textstyle \int _E w \}, \end{aligned}$$
    (164)
    $$\begin{aligned} F^1(V)&= A^1(V) = {\mathbb {S}}^\star , \end{aligned}$$
    (165)
    $$\begin{aligned} F^2(T)&= \{ \langle \cdot , \phi \rangle _T \ : \ \phi \in M(T) \}. \end{aligned}$$
    (166)

    (other spaces are set to 0).

Theorem 5

(FE for the strain complex)

  • \(A^0(T)\) has dimension 24, and the provided DoFs are unisolvent.

  • \(A^1(T)\) has dimension 24, and the provided DoFs are unisolvent.

  • \(A^2(T)\) has dimension 3, and the provided DoFs are unisolvent.

  • The sequence \(A^{\scriptscriptstyle \bullet }(T)\) is a resolution of the space RM of rigid motions.

Proof

(i) For \(A^0(T)\), the dimension count and the unisolvence of the degrees of freedom are standard. We also remark that the degrees of freedom corresponding to an edge E are unisolvent on \(A^0(E)\). At vertices, the corresponding result is trivial.

(ii) For \(A^2(T)\), the dimension count is trivial and the unisolvence of the DoFs is straightforward.

(iii) The space \({\mathrm {C}}^0 {\mathrm {P}}^2({\mathcal {R}}(T), {\mathbb {S}})\) has dimension \(10 \times 3 = 30\). For \(u \in {\mathrm {C}}^0 {\mathrm {P}}^2({\mathcal {R}}(T), {\mathbb {S}})\), in order to impose that \({{\,\mathrm{sven}\,}}u\) is integrable we impose that \(\partial _\nu u \tau \cdot \tau \) is continuous on the three interior edges. Since these fields are linear, this can be expressed as 6 constraints. This shows that \(\dim A^1(T) \ge 24\).

(iv) We now prove unisolvence of the degrees of freedom for \(A^1(T)\). Let \(u \in A^1(T)\) and suppose that the DoFs are all 0. Then \({{\,\mathrm{sven}\,}}u \in A^2(T)\) has 0 degrees of freedom, so it is 0. So we can choose \(v \in {\mathrm {H}}^2(T, {\mathbb {V}})\) so that \({{\,\mathrm{def}\,}}v = u\). The second-order derivatives of v can be recovered from the first order derivatives of u and therefore turn out to be linear. Therefore \(v \in A^0(T)\).

Since the M(E)-dofs of \({{\,\mathrm{def}\,}}v\) are 0, there exists a rigid motion w, which has the same M(V)-dofs as v (ie value and value of \({{\,\mathrm{curl}\,}}\)), by Lemma 8. We notice that \({{\,\mathrm{def}\,}}(v-w) = u\) and proceed to show that \(v-w = 0\), by showing that its degrees of freedom, as defined in \(A^0(T)\), are 0.

We have that \(v-w\) is 0 at vertices and that \({{\,\mathrm{grad}\,}}(v-w)\) is 0 at vertices (the symmetric part is \({{\,\mathrm{def}\,}}v = u\) and antisymmetric parts is essentially \({{\,\mathrm{curl}\,}}(v - w)\)).

It remains to prove that the integral of the normal derivative of \(v -w\) on edges is 0:

– We have that \(\int _E \partial _\nu (v-w) \cdot \nu = 0\) since this is one of the DOFs of u.

– We have that \(\int _E \partial _\tau (v-w) \cdot \nu =0\) by integration of a derivative. Since \(\int _E u \tau \cdot \nu = 0\), it follows that \(\int _E \partial _\nu (v-w) \cdot \tau =0\).

(v) This shows that \(\dim A^1 (T) = 24\). We have also showed that the sequence \(A^{\scriptscriptstyle \bullet }(T)\) is exact at index 1. It follows that the range of \({{\,\mathrm{sven}\,}}\) on \(A^1(T)\) has dimension \(\dim A^1(T) - \dim A^0(T) + \dim RM = 24 -24 + 3 = 3\). Therefore \({{\,\mathrm{sven}\,}}: A^1(T) \rightarrow A^2(T)\) is surjective. \(\square \)

Remark 37

The preceding proof of unisolvence for \(A^1(T)\) was written from the point of view of Definition 18. From the point of view of FES, as in the extended Definition 19, one would go via Proposition 5, with similar arguments. That way yields the additional important information that degrees of freedom attached to edges are unisolvent on the space of restrictions to the edge, which guarantees the appropriate global continuity of the finite element fields defined piecewise by their DoFs.

Remark 38

The finite element strain complex with high regularity can be obtained from finite element de Rham complexes by a discrete BGG diagram chase. See Fig. 8.

Fig. 8
figure 8

Diagram chase for the strain element with high regularity

In the next section, we will use the following consequence of Theorem 5:

Proposition 17

For any \(v \in A^2(T)\), there is a unique \(u \in A^1(T)\) such that \({{\,\mathrm{sven}\,}}u = v\), the restriction of u to \(\partial T\) is zero and \(\partial _\nu u\tau \cdot \tau \) is constant on each edge.

Proof

Indeed if we choose a constant \(c_E\) for each edge E, the data \((0,0,0,c_E) \in A^1(E)\) is compatible at vertices, so can be extended to an element u of \(A^1(T)\), which is unique since there are no interior degrees of freedom. The Stokes identity then takes the form, for any affine \(\phi \) on T:

$$\begin{aligned} \int {{\,\mathrm{sven}\,}}u \phi = - \sum _E c_E \int _E \phi . \end{aligned}$$
(167)

For any desired \(v= {{\,\mathrm{sven}\,}}u \in A^2(T)\), this uniquely determines the coefficients \(c_E\) of u. \(\square \)

Remark 39

(Minimal finite element strain complex with high regularity) One can get a minimal complex as follows.

We start with the modified reduced Clough Tocher space for \(A^0(T)\). Recall that one usually requires the normal derivative on edges to be affine. Instead we take the subspace of vectorfields u such that \({{\,\mathrm{def}\,}}u\) applied to the normal vector on edges is affine. The degrees of freedom are just vertex values and vertex values of the gradient.

For \(A^1(T)\), one takes the sum of the space \({{\,\mathrm{def}\,}}A^0(T)\) and the space defined in the preceding proposition, so that normal components on edges are affine. The degrees of freedom consisting of vertex values and pairing with M(E) for each edge E are then unisolvent. Then \(A^1(T) = {\mathrm {P}}^2(E) \times P^1(E) \times P^1(E) \times {\mathrm {P}}^1(E)\).

The space \(A^2(T)\) is unchanged.

The canonical DoFs give interpolators that commute with the differential operators.

7.3 Discrete Spaces: Lower Regularity

In the following, for each edge E we let \(\chi _E\) be a nonzero affine map \(E \rightarrow {\mathbb {R}}\) such that \( \int \chi _E = 0\). Notice that if \(u : E \rightarrow {\mathbb {R}}\) is affine and \(\int _E u \chi _E = 0\) then u is constant. We let \({\mathrm {C}}^0_{{{\,\mathrm{curl}\,}}\textsc {t}\,} {\mathrm {P}}^2 ({\mathcal {R}}(T), {\mathbb {V}})\) denote the space of continuous \({\mathrm {P}}^2\) vector fields with integrable \({{\,\mathrm{curl}\,}}\textsc {t}\,\).

Definition 20

(FE for the strain complex: low regularity)

  • \(A^0(T) = {\mathrm {C}}^0_{{{\,\mathrm{curl}\,}}\textsc {t}\,} {\mathrm {P}}^2 ({\mathcal {R}}(T), {\mathbb {V}})\). The degrees of freedom are:

    – at vertices, pairings of restrictions to vertices with M(V), in other words, vertex values (\(3 \times 2\)) and vertex values of the curl (\(3 \times 1\)),

    – at edges, \(u \mapsto \int _E {{\,\mathrm{def}\,}}u \tau \cdot \tau \chi _E\) and \( u \mapsto \int _E {{\,\mathrm{def}\,}}u \tau \cdot \nu \chi _E\) (\(3 \times 2\)).

  • \(A^1(T) = {{\,\mathrm{def}\,}}A^0(T) \oplus W(T)\), where W(T) is the space defined in Proposition 17. The degrees of freedom are, for each edge E, pairings of restrictions with M(E) (\(3 \times 3\)), and \(u \mapsto \int _E u \tau \cdot \tau \chi _E\) and \(u \mapsto \int _E u \tau \cdot \nu \chi _E\) (\(3 \times 2\)).

  • \(A^2(T) = {\mathrm {P}}^0({\mathcal {R}}(T), {\mathbb {R}})\), the space of piecewise constants. The degrees of freedom are pairings with M(T), namely integration against affine functions (3).

The finite element spaces of Definition 20 are represented in Fig. 9.

Fig. 9
figure 9

Strain complex with low continuity

Theorem 6

  • \(A^0(T)\) has dimension 15, and the provided degrees of freedom are unisolvent.

  • \(A^1(T)\) has dimension 15, and the provided degrees of freedom are unisolvent.

  • \(A^2(T)\) has dimension 3, and the provided degrees of freedom are unisolvent.

  • The sequence \(A^{\scriptscriptstyle \bullet }(T)\) resolves the rigid motions.

Proof

(i) We introduced this space in [35] (Proposition 3), but there we had different edge degrees of freedom (in particular, we had \(u \mapsto \int _E u \cdot \tau \)). In any case, this gives the dimension. We now check unisolvence. Let \(u \in A^0(T)\) have 0 DoFs. In particular, u is 0 at vertices as well as \({{\,\mathrm{curl}\,}}u\). Given preceding results it remains to be proved that u is 0 on each edge.

– We have that \({{\,\mathrm{def}\,}}u \tau \cdot \tau = \partial _\tau (u \cdot \tau )\) is affine and orthogonal to \(\chi _E\) hence constant. So \(u\cdot \tau \) is linear on each edge, hence 0.

– We have that \({{\,\mathrm{def}\,}}u \tau \cdot \nu = (1/2) (\partial _\tau (u \cdot \nu ) + \partial _\nu (u \cdot \tau )) \) is affine and orthogonal to \(\chi _E\), hence constant. Also \(\partial _\tau (u \cdot \nu ) - \partial _\nu (u \cdot \tau ) = {{\,\mathrm{curl}\,}}\textsc {t}\,u = 0\) on E, so \(\partial _\tau (u \cdot \nu )\) is constant so \(u \cdot \nu = 0\) on each edge.

(ii) The dimension of \(A^1(T)\) is \((15 - 3) + 3 = 15\) by construction.

(iii) Unisolvence on \(A^1(T)\). Choose \(u \in A^1(T)\) with 0 degrees of freedom. We then get \({{\,\mathrm{sven}\,}}u = 0\) from the Stokes identity, since the M(E) DoFs are zero. So we may choose \(v \in A^0(T)\) such that \(u = {{\,\mathrm{def}\,}}v\). We may find a rigid motion such that v and w have the same M(V) degrees of freedom. Then \({{\,\mathrm{def}\,}}(v-w) = u\) moreover the vertex degrees of freedom of \(v-w\) are 0. The remaining edge degrees of freedom of \(v-w\), are edge degrees of freedom of u, hence 0, so \(v-w = 0\). Hence \(u = 0\). \(\square \)

Proposition 18

We get a compatible FES by appending the spaces:

$$\begin{aligned} A^0(E)&= {\mathrm {P}}^2(E) \times {\mathrm {P}}^2(E) \times {\mathrm {P}}^1(E),\end{aligned}$$
(168)
$$\begin{aligned} A^1(E)&= {\mathrm {P}}^1(E) \times {\mathrm {P}}^1(E) \times {\mathrm {P}}^0(E),\end{aligned}$$
(169)
$$\begin{aligned} A^0(V)&= {\mathbb {V}}\times {\mathbb {R}}. \end{aligned}$$
(170)

The degrees of freedom are now described as:

$$\begin{aligned} F^0(V)&= \{A^0(V) \ni (u,v) \mapsto u \cdot \phi + v \psi \ : \ (\phi , \psi ) \in M(V) \},\end{aligned}$$
(171)
$$\begin{aligned} F^0(E)&= {\mathbb {R}}\{A^1(E) \ni (u,v,u') \mapsto \textstyle \int _E \partial _\tau u \chi _E \} \oplus \end{aligned}$$
(172)
$$\begin{aligned}&\quad {\mathbb {R}}\{A^1(E) \ni (u,v,u') \mapsto \textstyle \int _E\frac{1}{2}(u' + \partial _\tau v) \chi _E \},\end{aligned}$$
(173)
$$\begin{aligned} F^1(E)&= \{A^1(E) \ni u \mapsto \langle u, \phi \rangle _E \ : \ \phi \in M^1(E) \} \oplus \end{aligned}$$
(174)
$$\begin{aligned}&\quad {\mathbb {R}}\{A^1(E) \ni (u,v,u') \mapsto \textstyle \int u \chi _E \} \oplus \end{aligned}$$
(175)
$$\begin{aligned}&\quad {\mathbb {R}}\{A^1(E) \ni (u,v,u') \mapsto \textstyle \int v \chi _E \},\end{aligned}$$
(176)
$$\begin{aligned} F^2(T)&= \{A^2(T) \ni u \mapsto \textstyle \int _T u \phi \ : \ \phi \in M(T) \}. \end{aligned}$$
(177)

Proof

Unisolvence of the edge DoFs on the edge spaces can be checked by similar arguments. \(\square \)

Remark 40

(Alternative definition of W(T)) One can replace the space W(T) in Definition 20 by a construction with the Poincaré - Koszul operators. Indeed let \(x^\textsc {r}\) be the identity vector field, rotated by \(\pi /2\), with respect to an origin located at the central vertex of \({\mathcal {R}}(T)\). Consider the matrix field \(\omega = x^\textsc {r}(x^\textsc {r})^\textsc {t}\,\).

For any internal edge E, connecting the central vertex of \({\mathcal {R}}(T)\) with one of the vertices of T, with tangent vector \(\tau \) and normal vector \(\nu \), the matrix field \(\omega \) has the property that, on the edge, \(\omega \tau = 0\) and \(\partial _\nu \omega \tau \cdot \tau = 0\). See Lemma 6. Furthermore on any (external) edge E of T, \(\omega \tau \cdot \tau \in {\mathrm {P}}^0(E)\), \(\omega \tau \cdot \nu \in {\mathrm {P}}^1(E)\) and \(\partial _\nu \omega \tau \cdot \tau \in {\mathrm {P}}^0(E)\). Finally \({{\,\mathrm{sven}\,}}\omega \) is constant.

We can define \(W(T) = \{u \omega \ : u \in {\mathrm {P}}^0({\mathcal {R}}(T), {\mathbb {R}}) \}\). Indeed such \(u \omega \) will have restriction 0 to internal edges, so the \({{\,\mathrm{sven}\,}}\) can be computed classically and is proportional to u.

Remark 41

The finite element strain complex with lower regularity can be obtained from finite element de Rham complexes by a discrete BGG diagram chase. See Fig. 10.

Fig. 10
figure 10

Diagram chase for the strain complex with lower regularity

Remark 42

(minimal finite element strain complex with low regularity) We get a minimal complex by imposing all DoFs of the type, on edges E, integral against \(\chi _E\) to be zero. The dimensions are then 9 for the vector fields, 9 for the strain tensors and 3 for the scalars.

Notice that then \(A^1(E) = {\mathrm {P}}^0(E) \times {\mathrm {P}}^0(E) \times {\mathrm {P}}^0(E)\). We also have:

$$\begin{aligned} A^0(E) = \{(u,v,u')\in {\mathrm {P}}^1(E) \times {\mathrm {P}}^2(E) \times {\mathrm {P}}^1(E) \ : \ u' + \partial _\tau v \ \text { is constant} \}. \end{aligned}$$
(178)