Skip to main content
Springer logoLink to Springer
. 2016 Jul 22;3(1):22. doi: 10.1186/s40323-016-0077-5

An unstructured immersed finite element method for nonlinear solid mechanics

Thomas Rüberg 1,2,, Fehmi Cirak 3, José Manuel García Aznar 1
PMCID: PMC7175676  PMID: 32355635

Abstract

We present an immersed finite element technique for boundary-value and interface problems from nonlinear solid mechanics. Its key features are the implicit representation of domain boundaries and interfaces, the use of Nitsche’s method for the incorporation of boundary conditions, accurate numerical integration based on marching tetrahedrons and cut-element stabilisation by means of extrapolation. For discretisation structured and unstructured background meshes with Lagrange basis functions are considered. We show numerically and analytically that the introduced cut-element stabilisation technique provides an effective bound on the size of the Nitsche parameters and, in turn, leads to well-conditioned system matrices. In addition, we introduce a novel approach for representing and analysing geometries with sharp features (edges and corners) using an implicit geometry representation. This allows the computation of typical engineering parts composed of solid primitives without the need of boundary-fitted meshes.

Keywords: Immersed finite elements, Nonlinear solid mechanics, Nitsche’s method, CSG modelling, Cut-element stabilisation, Implicit geometry

Background

Conventional finite element methods (FEM) are an irreplaceable tool for the numerical analysis of a variety of physical and engineering problems. They rely on a conforming mesh which approximately matches the domain boundary and material interfaces. For this reason, mesh generation is an essential part of the workflow in FEM-based analyses [1]. Although the procedure is well-established, often the use of a boundary-conforming mesh can be limiting or even prohibitive. Fluid-structure interaction, large elastic deformations and shape optimisation are some applications where mesh entanglement can cause severe difficulties for conventional FEM.

In the last two decades or so, a number of finite element-based numerical methods have been introduced in order to eliminate the need for boundary-conforming meshes. Here, we restrict ourselves to immersed methods, also known as embedded of fictitious domain methods, that operate with a geometry-independent mesh, in the line of [26]. Since the mesh of an immersed domain method does not conform with the boundary of the physical domain, one of these methods’ main difficulties is the application of boundary conditions. Here, we choose Nitsche’s method [7] for the weak enforcement of Dirichlet boundary conditions because it gives optimal convergence rates without incurring major implementation difficulties. Moreover, the use Langrange multipliers together with its numerical intricacies, such as the fulfilment of the LBB-condition [8], are avoided. For alternative approaches, see [4, 914] among others.

A major difficulty of non-body-fitted methods is the accurate integration of the arising volume and surface integrals. Here, we make use of a tessellation concept which allows to incorporate standard, Gauß quadrature schemes. In the course of this development, a technique is presented which enables the representation of sharp domain features by performing constructive solid geometry (CSG) modelling directly on the embedding mesh. This approach poses a clear advantage in comparison to the conventional methods of geometry resolution because these sharp features are accurately reproduced and not chamfered even on coarse meshes.

Another pitfall of immersed finite element methods is the loss of numerical stability in cases where the intersection of a shape function support with the physical domain becomes very small. This issue has been successfully addressed in the context of b-spline finite elements [6, 12, 15]. In this work, we build up on this concept of constraining critical degrees of freedom and apply it to Lagrangian basis functions on unstructured meshes. Note that Burman et al. [16] introduced an alternative approach, the so-called ghost-penalty stabilisation method, which is based on an augmented bilinear form. Strongly related to stability are the method’s parameters and we show how to choose these parameters in the context of the introduced stabilisation techniques.

The method we present here is based on our previous works [6, 1719] and related to [2, 3, 16, 20, 21]. Although, as shown in the cited works, the method can be transferred to many physical applications, we focus on the problem class of nonlinear elasticity.

Weak enforcement of boundary and interface conditions

At first, we present the derivation of the proposed immersed finite element method as applied to boundary value problems from nonlinear solid mechanics. Using a weighted residual technique, we obtain the weak form of the problem and give its linearisation. Similarly, the expressions for material interface problems are subsequently derived.

Boundary value problems of nonlinear solid mechanics

Consider the boundary value problem for nonlinear elasticity in the reference domain ΩRnd, nd=2 or nd=3 (Fig. 1)

-DivP(u)=finΩu=u¯onΓDt(u)=t¯onΓN, 1

where u denotes the unknown displacement field, P is the first Piola-Kirchhoff stress tensor, Div is the divergence with respect to reference domain coordinates, and t(u)=P(u)n, with n the outward unit normal vector to Ω, is the boundary traction. The prescribed data are the volume force f, the prescribed displacement u¯ and the prescribed traction t¯. The boundary of Ω, denoted by Γ, is composed of disjoint sets, the Dirichlet boundary ΓD and the Neumann boundary ΓN, where the respective data are given.

Fig. 1.

Fig. 1

Embedded boundary value problem. Domain Ω embedded into the domain Ω with background mesh

In order to construct a weak form of the boundary value problem (1), a weighted residual approach is taken with the test function v. In mathematical terms, we operate with the Sobolev space H1(Ω), i.e. the vector fields whose components are all in H1(Ω), see, among others, [8] for the precise definition. Different from conventional FEM, we do not employ a constrained subspace with essential boundary conditions. The weighted residual method thus becomes:

FinduH1(Ω)R(u,v)=a(u,v)-Ωf·vdΩ-ΓNt¯·vdΓ-ΓDt(u)·vdΓ=0vH1(Ω), 2

with

a(u,v)=ΩS(u):E˙(v)dΩ. 3

Here, E˙ denotes the variation of the Euler-Green strain tensor (E=12(FF-I) with the deformation gradient F) and S=F-1P the second Piola-Kirchhoff stress tensor [22, 23]. In the applications section, we work with a compressible Neo-Hooke material with given energy density W(E) and for this hyperelastic case, the stress tensor becomes

S=WE. 4

Using a Newton method to solve the nonlinear Eq. (2), the k th iteration takes the form

DR(u(k),v)[Δu]=-R(u(k),v)andu(k+1)=u(k)+Δu, 5

where D(·)[Δu] denotes the derivative in direction of the increment Δu, which reads

DR(u,v)[Δu]=Da(u,v)[Δu]-ΓDDt(u)[Δu]·vdΓ 6

with

Da(u,v)[Δu]=Ω(Gradv):C^(u):(GradΔu)dΩ. 7

In this expression, C^ denotes the effective elasticity tensor [22]. For simplicity, it is assumed here that the prescribed volume and surface forces, f and t¯, are independent of the displacement u (dead load case). If these assumptions do not hold, the directional derivative of R(u,v) contains the derivatives of the applied force and traction terms. So far, expressions (2) and, consequently, (5) do not take into account the displacement boundary condition u=u¯ on ΓD. Therefore, the approach initially introduced by Nitsche [7] is adapted here and the following two terms are added to (5)

-ΓDDt(u)[v]·(Δu-u~)dΓandγΓD(Δu-u~)·vdΓ 8

with the predictor u~=u¯ in the first iteration (or the appropriate value in the first iteration of every load step) and u~=0 otherwise, corresponding to a displacement-controlled Newton method. The scalar γ>0, necessary for numerical stability, is discussed in “Numerical stability” section. In summary, the Newton step (5) including Nitsche’s approach to incorporate displacement boundary conditions reads

Da(u,v)[Δu]-ΓDDt(u)[Δu]·vdΓ-ΓDDt(u)[v]·ΔudΓ+γΓDΔu·vdΓ=-a(u,v)+Ωf·vdΩ+ΓNt¯·vdΓ+ΓDt(u)·vdΓ-ΓDDt(u)[v]·u~dΓ+γΓDu~·vdΓ, 9

where the iteration counter has been omitted for sake of legibility. The added terms (8) are zero for the exact solution and therefore the method is consistent by construction. Moreover, for hyperelastic materials expression (9) is symmetric and positive for the right choice of γ and non-softening material behaviour, see “Numerical stability” section. In the following, we abbreviate (9) by

A(u;Δu,v)=(u;v). 10

Material interfaces

The formalism presented above for the weak incorporation of displacement boundary conditions can be generalised to interface problems, see also [2, 3, 13]. For simplicity, let the reference domain be composed of two subdomains, Ω=Ω1Ω2, and let us ignore the Dirichlet boundary conditions on Ω. The treatment of such conditions is here essentially the same as in “Boundary value problems of nonlinear solid mechanics” section. We focus only on the conditions imposed on the material interface Γ=Ω1Ω2, see Fig. 2. In each subdomain Ωi the local equilibrium reads

-DivPi(ui)=fiinΩi. 11

Let u denote the compound displacement field, such that u|Ωi=ui, and define the compound test function v similarly. Moreover, for any compound function g, with g|Ωi=gi, the jump across Γ is denoted with

g=g1-g2. 12

For later use, also a weighted average {g} is defined on Γ as

{g}=βg1+(1-β)g2, 13

where 0β1 is some weighting parameter yet to be discussed. On the interface Γ the conditions are

u=uΓandt(u)=tΓ, 14

with prescribed jump functions uΓ and tΓ. These conditions represent the jump in the solid displacements and the traction equilibrium across the interface. In more complex situations, such as soft interfaces, a cohesive law can be imposed relating the interface traction tΓ to the displacement gap u, see [24]. Here, we assume that uΓ and tΓ are prescribed and that they are independent of the displacement u. Note that in the evaluation of the tractions ti the unique normal vector n=n1=-n2 as shown in Fig. 2 is used, where this choice is arbitrary.

Fig. 2.

Fig. 2

Interface problem. Rectangular domain Ω composed of two subdomains Ω1 and Ω2 with common interface Γ

Repetition of the steps as in the single-domain problem above yields the weighted residual method for interface problems

FinduiH1(Ωi)i=1,2,such thatR(u,v)=i=1,2ai(ui,vi)-Ωifi·vidΩ-Γt(u)·vdΓ=0viH1(Ωi). 15

Now the integrand of the interface term is rewritten as follows

t(u)·v=βt1(u1)+(1-β)t2(u2)·v+[(1-β)v1+βv2]·t(u)={t(u)}v+[(1-β)v1+βv2]·tΓ 16

employing the average term (13) and the interface conditions (14)2. Using a Newton method to solve the nonlinear problem (15) with (16) requires the directional derivative

DR(u,v)[Δu]=i=1,2Da(ui,vi)[Δui]-Γ{Dt(u)[Δu]}·vdΓ. 17

The interface condition (14)1 is now incorporated by adding terms akin to (8), namely

-Γ{Dt(u)[v]}·(Δu-u~Γ)dΓandγΓ(Δu-u~Γ)·vdΓ, 18

to expression (17). Again, the parameter γ>0 is yet to be discussed in the Appendix A and we use the predictor u~Γ=uΓ in the first iteration and zero afterwards. In summary, a step in a Newton iteration to solve the coupled interface problem reads

i=1,2Dai(ui,vi)[Δui]-Γ{Dt(u)[Δu]}·vdΓ-Γ{Dt(u)[v]}·ΔudΓ+γΓΔu·vdΓ=i=1,2Ωifi·vidΩ-ai(ui,vi)+Γ{t(u)}·vdΓ-Γ{Dt(u)[v]}·u~ΓdΓ+Γ(1-β)v1+βv2·tΓdΓ+γΓu~Γ·vdΓ. 19

Only the first two terms on the right hand side remain in the case of uΓ=0 and tΓ=0. As before, this expression is represented by the equation A(u;Δu,v)=(u;v), see (10), and we postpone the discussion of the parameters β and γ to Appendix A.

Immersed finite element method

Finite element discretisation

The linearised weighted residual Eqs. (9) and (19) form the basis of a finite element discretisation. To this end, a domain Ω of a simple shape, typically rectangular, is defined such that it fully contains the reference domain Ω. The following finite element discretisation is based on a triangulation of Ω instead of a geometry-conforming mesh of Ω itself (see Fig. 3). We use piece-wise polynomial basis functions φI(x) and write for the approximated displacement field

uh(x)=IuIφI(x). 20

There is no constraint on the chosen finite element space, but if the surface Γ overlaps with the boundary of the embedding domain (that is if Γ=ΓΩ), it can be more convenient to use an essential treatment of displacement boundary conditions [8] along this boundary. On the other hand, if non-nodal basis functions (like, for instance, higher-order b-splines) are used as the finite element basis, the above presented weak incorporation of the boundary conditions works perfectly well on this boundary part Γ too.

Fig. 3.

Fig. 3

FE discretisation. Geometry-conforming (left) and immersed (right)

Let the support of the basis function φI be denoted by supp(φI). Now all coefficients uI from the approximation (20) are discarded a priori if supp(φI)Ω=. By S we denote the set of the indices of the remaining coefficients and thus {φI}IS forms the full basis of the immersed finite element method. This basis is in general not stable [25] and requires further attention, which is given in “Numerical stability” section. Using the approximation (20), we reach the final system of equations

Ax=b 21

with the matrix and vector coefficients

A[Ind+a,Jnd+b]=A(u;ebφJ,eaφI)x[Jnd+b]=(ΔuJ)·ebb[Ind+a]=(u;eaφI) 22

for the zero-based indices I,JS, and using the coordinate directions 0a,b<nd (nd being the spatial dimension of the problem) and Cartesian unit vectors ea. Although this immersed finite element method seemingly leads to the same type of linear system as a conventional, geometry-conforming FEM, there are technical differences which will be discussed in the following: the representation of the boundary or interface Γ, the quadrature of elements traversed by this boundary, and the stabilisation of the basis for such elements. The choice of the Nitsche parameters γ and β is analysed in the Appendix A.

Above expressions hold analogously for interface problems. The main difference is that the two fields u1 and u2 are approximated in fashion of (20) independently on the same background mesh of Ω which encompasses both sub-domains Ω1 and Ω2. Consequently, the elements which are traversed by the material interface approximate both fields since the FE shape functions of the entire element are used even though the fields are only defined up to the interface on their respective side of the domain. Using two sets of shape functions on these elements allows us to represent a discontinuous derivative of the FE solution and can thus be compared to the element enrichment of XFEM [11]. A good illustration of this implementation detail can be found in [2].

Signed distance functions

The weak forms introduced in “Weak enforcement of boundary and interface conditions” section allow us to work with a finite element discretisation which is independent of the geometry, but still the volume and surface integrals, Ω(·)dΩ and Γ(·)dΓ, need geometry information. To this end, we classify the elements (for instance the quadrilaterals in the right picture of Fig. 3) by their location with respect to the physical domain Ω. If τI denotes any such element, we have the three cases:

  1. τIΩ=, the element is completely outside of Ω and can be ignored,

  2. τIΩ=τI, the element is completely inside and its treatment is straightforward as in any geometry-conforming FEM,

  3. τIΓ, the element is traversed by the domain’s boundary and requires special consideration.

Note that elements adjacent to the boundary of the embedding mesh (for instance the left or bottom boundaries in the right picture of Fig. 3) technically fall into the third category, but do not pose any difficulty apart from the identification of the element faces which lie on that boundary.

For above classification it is sufficient to have an oriented representation of the surface Γ=Ω. Therefore, the surface is either closed or assumed to be extended beyond the boundaries of Ω. Here, we assume that Γ is either given analytically or is approximated by means of a surface mesh composed of surface elements σJ,

ΓΓh=JσJ. 23

In order to avoid the tedious task of intersecting volume elements τI with surface elements σJ, an implicit geometry representation is introduced. Therefore, the signed distance function [26] is used which is defined as

distΓ(x)=s(x)minyΓ|x-y|,withs(x)=1ifxΩ-1ifxΩ. 24

In case of interface problems as introduced in “Material interfaces” section, the above definition of s(x) refers to Ω1 and Ω2 instead of Ω and its complement Ω\Ω. If Γ is represented by a mesh Γh, the signed distance function distΓh with respect to this mesh is used instead. Moreover, only a piece-wise polynomial approximation of this function is used

distΓh(x)=KdKφK(x)withdK=distΓ(xK), 25

where φK are the nodal finite element shape functions (not necessarily the same as in the approximation (20)) and the coefficients dK represent the value of the signed distance at the finite element nodes xK.

The representation (23) can be of higher polynomial degree, given by NURBS patches [1, 14, 27] or subdivision surfaces [28, 29]. But the computation of the coefficients dK in (25) and the quadrature described below are non-trivial tasks if the σJ have a degree higher than linear simplex elements (straight lines in two or flat triangles in three dimensions). In that case, the computation of the distances dK requires the solution of nonlinear equations, see, for instance, [30]. In the rest of this work, the σJ are always linear (nd-1)-simplex elements. Moreover, once only piece-wise linear elements are used for the surface representation (23), the optimal convergence rate of any higher-order method is impeded by this geometry approximation error, see [8].

Figure 4 shows a two-dimensional example where the boundary is composed of three parts: Γ0 is the part of the boundary of Ω that coincides with the box boundary Ω and does not require any special attention; Γ1 and Γ2 are separated parts which are immersed in the background grid. For the computation of the distance function distΓ, it is convenient to treat Γ1 and Γ2 separately as shown in the figure. The final distance function is then composed as the minimal value of these distances,

distΓ(x)=mindistΓ1(x),distΓ2(x). 26

See also [31] for arithmetic with distance functions. Figure 4 shows the iso-curves of the individual distance functions distΓi as well as of the composite function distΓ. The extension of this approach to a larger number of immersed surfaces is straightforward.

Fig. 4.

Fig. 4

Distance functions of a composite boundary. Geometric constellation (top left), distance functions of the boundary parts Γ1 (top right) and Γ2 (bottom right), composite distance function distΓ (bottom left)

Once the function distΓ has been determined, the above classification of volume elements τI is carried out by means of the nodal values dK of the distance function: if all dK of the element τI are strictly positive (negative), the element is inside (outside) of the domain. If a change in sign of the dK occurs, τI is traversed by the immersed boundary Γ.

It remains to outline how the coefficients dK for a given surface are computed. In case of an analytic surface representation by an implicit function, these coefficients are calculated directly. In case of an immersed surface mesh, one needs to find the surface element σK which contains the point xK closest to xK, see for instance [32] for such basic primitive tests as the closest point on a triangle to a point. With the knowledge of the closest element σK, it can be decided if xK lies on the positive or the negative side of this element in order to determine the sign s(xK) as defined in (24). This decision is based on the premise that the surface mesh is well oriented. Note that, when the closest point falls on an edge or a vertex, ambiguities can arise for the decision if a point is inside or outside the surface mesh [26], see the case shown in Fig. 5.

Fig. 5.

Fig. 5

Signed distance computation in the region of an acute corner. The grid point xK has the vertex B as closest point on the surface, but it lies on opposing sides with respect to the adjacent surface elements σ1 and σ2; based on the larger distance to the tangent planes of the surface elements σi, the element σ2 is chosen to determine the outside position of the point xK

At the acute corner in the figure, the region of points whose closest point is the vertex B, is delimited by the outer cone. For all points in this cone, σ1 and σ2 are possible choices as closest surface element. The cone contains the region ‘a’ in which the points are all outside with respect to both elements. The points in region ’b’ are outside with respect to one of the possible closest surface elements and inside with respect to the other. Hence, for this region the mentioned ambiguity can occur. One solution to this problem is to introduce angle-weighted vertex normal vectors [26], but this requires extra data structures. Here we choose the simpler approach shown in Fig. 5: the point xK has a larger distance to the extension plane of σ2 than to the extension plane of σ1. This distance is given by the inner product of the element normal vector and the distance vector between the considered grid point and the closest surface point (here, B). Choosing the element with a larger value of this distance resolves the ambiguity. The method is also used in three dimensions with the only difference being a larger set of candidates as closest elements.

Finally, we consider the numerical complexity of the distance function computation. If there are NΓ elements in the surface mesh and NΩ nodes in the volume mesh, a brute-force approach requires NΓ×NΩ closest point computations. In many cases, this number can be substantially reduced by precomputing a bounding box [32] of the surface Γh and assigning a default value for the dK of nodes outside of this box, but the essential complexity remains of order O(NΓ×NΩ). Complexity reduction is possible by generation of a hierarchy of bounding boxes [32] or using so-called marching methods, see e.g. [33].

Constructive solid geometry modelling

Now, we consider a different approach for integrating finite element analysis with geometric design, similar to the ideas presented in [34]. Specifically, we consider the construction of a three-dimensional geometry by means of CSG, see, for instance, [35, 36]. An example of such a modelling process is given in Fig. 6, where one begins with a cube as a workpiece and performs set operations with other geometric primitives until the desired geometry is obtained. These operations are commonly union , intersection , subtraction\and the set complement (). Based on De Morgan’s laws [36], it suffices to work with the canonical operations intersection and complement, and represent the other two as compositions thereof, more precisely AB=(AB) and A\B=AB.

Fig. 6.

Fig. 6

Pipeline of a CSG process. Intersection of a cube with a sphere and removal of three intersecting cylinders

The conventional finite element approach is to work through such a CSG pipeline, export a geometry representation and use a mesh generation software to create a body-fitted volume mesh for the numerical analysis. The direct modification for an immersed finite element method is to export a surface representation of the geometry and embed this into the mesh by the methods described in “Immersed finite element method” section. Here, a third way is suggested in which the set operations are directly applied to the embedding (non-conforming) volume mesh. As outlined above, it suffice to provide the complement and intersection operations only. The former is trivially achieved: the use of a signed distance function generates an in- and an outside partition of the mesh, reversing these partitions gives the complement. For this reason, all that need be explained is the intersection operation.

A simple two-dimensional example in Fig. 7 demonstrates the intersection operation: first the intermediate domain Ω1 is given via the distance function of a straight line Γ1, afterwards a second distance function to the line Γ2 yields the final domain Ω={xΩ:distΓ1(x)>0anddistΓ2(x)>0}. For sake of clarity, let us discuss the individual steps in this picture. First the line Γ1 is embedded into the shown 3×3-grid which fills out the square domain Ω. The elements τi0 are strictly inside the intermediate domain Ω1={xΩ:distΓ1(x)>0} and form the set I1. The elements τi2 are strictly outside and form the set O1. Now, the remaining elements form the set C1 and are triangulated such that the embedded boundary is approximated by triangle edges. The squares are first subdivided into two triangles each and then every such triangle is intersected by means of the nodal values of the signed distance function distΓ1 [37]. The resulting outcome is the left picture in Fig. 7 where the red square-shaped marks indicate the location of the intersection points.

Fig. 7.

Fig. 7

Intersection process. Domain partitioning and element tessellation for a straight boundary Γ1 (left), resulting constellation for intersection with another line Γ2 (middle); for comparison see the result of the immersion based on the composite distance function (right)

In the second embedding step, the distance function distΓ2 is used which gives rise to the element sets I2, O2 and C2. All elements which belong to the outside are directly assigned to the complementary domain Ω\Ω, that is O=O1O2. On the other hand, all elements of I1, which also belong to I2, are inside the final domain Ω, hence I=I1I2={τ20}. Finally, there are the intersection cases. Elements belonging to C1 and I2 (τ21) keep their status and sub-division. Elements from I1 and C2 (τ10) are subject to the same decomposition methods as C1. It remains to discuss the situation of the elements which belong to C1C2; the ones which are intersected by both boundaries, and in our example of Fig. 7 this is the element τ11. In this case, simply the composing triangles are intersected with Γ2 as if they were elements of their own. Proper categorisation of these simplex shapes defines the final domain Ω and its complement Ω\Ω, see the middle picture of Fig. 7.

The advantage of this approach becomes clear when looking at the right picture of Fig. 7. Shown is the result for the same target domain Ω, but first the composition of the individual distance functions distΓi is computed according to expression (26) and then the element intersections are constructed. Clearly, in the right picture the corner is chamfered whereas in the above outlined approach this geometric feature is preserved. This is the distinctive characteristic of the presented idea: by successively embedding the geometry primitives into the mesh, the sharp features at the primitive intersections are preserved. It is important to remark that the boundaries Γi have been represented exactly in this example, but this is solely owed to the fact that they are straight lines. In the more general situation of curved boundaries, they are again represented on the finite element mesh by piece-wise linear simplex elements. But, even though these surrogate boundaries do not exactly reproduce the given geometry, the here presented approach still allows to represent corners or edges at the intersection locations of the original primitives which lie inside of the finite elements.

The presented method for CSG modelling based on finite element meshes is straightforward to extent to three dimensions. In the plane case outlined so far, the rectangular elements are subdivided into two triangles which themselves are triangulated in order to recover the implicit surface in the form of triangle edges. This approach is akin to a two-dimensional version of marching cubes and in three dimensions we make use of a similar technique. The used three-dimensional element shapes are either tetrahedrons or hexahedrons. Figure 8 shows how a hexahedron is decomposed into six tetrahedrons such that it remains to consider this shape only. Given a tetrahedron with values of the signed distance function at its vertices we can classify the cases shown in the right part of the figure. Based on linear interpolation along the edges the zeros of the distance function are recovered and give rise to two volume tessellations τI- and τI+ whose common faces form the triangulated surface σI. Using these decompositions, the above outlined intersection operations of two geometry primitives can be carried out analogously in three dimensions.

Fig. 8.

Fig. 8

Element subdivision. Decomposition of a hexahedron into six tetrahedrons (left) and the fundamental cases of distance function values

Alternative approaches for increasing the quality of implicit geometry representations in the vicinity of sharp features (such as edges and corners) exist. In [38] the operations of surface reconstruction by means of marching cubes and the distance function computation are combined in order to generate a so-called directed distance field allowing for a better resolution of surface features. On the other hand, enriched distance functions are presented in [39] where additional edge and vertex descriptors augment the distance geometry representation. Although both approaches are promising concepts in the context of immersed finite element methods, they are not further considered in this work.

We conclude this paragraph by noting that the here used tessellation techniques also help to construct numerical integration schemes for the elements that are traversed by the boundary or interface. The cut elements are general polytopes for which quadrature rules are not easily obtained. There are many techniques that address this problem, such as moment-fitting [40], surface-only integration [41], and adaptive decomposition of the integration region [14, 42]. But since we have a tessellation in simplex shapes already available, we use composite Gauß type quadrature rules, see e.g., [11].

Numerical stability

Up to now, it has been shown how to derive an immersed finite element method for boundary value and interface problems, see (9) and (19), and how to compute the matrix coefficients of the linear system of equations. But the stable solution of this final system of Eq. (21) remains to be discussed, especially in view of the method’s parameters γ (for boundary value and interface problems) and β (for interface problems only).

Sources of instability

As an illustrative example, consider a one-dimensional problem

-αu=fx(0,xε)u=0x=0αu=0oru=0x=xε 27

for the domain Ω=(0,xε) and a constant material parameter α. The boundary conditions are a prescribed value of u=0 at the left end and either a zero derivative (homogeneous Neumann) or a zero function value (homogeneous Dirichlet) at the right end. Let Ω=(0,2h) be the embedding domain and two linear finite elements of size h are used for the discretisation, see Fig. 9. First, we consider the case with a homogeneous Neumann boundary condition at the right end. The left-side boundary condition is going to be incorporated essentially and the system matrix becomes

KN=αh1+ε-ε-εε. 28

Obviously, for ε1 this matrix recovers the standard finite element matrix for this problem with its known properties. The eigenvalues of this matrix have the values

λ1,2=α2h1+2ε±4ε2+1. 29

Clearly, the smaller eigevalue goes to zero for the limit ε0, that is the case of a vanishing cut element. As expected, the matrix KN is ill-conditioned for this limit.

Fig. 9.

Fig. 9

One-dimensional test example. Two linear finite elements with the right boundary inside the second element

We now turn to the Dirichlet case and evaluate the left-hand-side of expression (7) for this simple test problem. The resulting stiffness matrix has the form (replacing the surface integrals by point evaluation at xε)

hαKD=1+ε-ε-εε-ε-11-ε-εε-ε-1-ε1-εε+γhα(1-ε)2ε(1-ε)ε(1-ε)ε2. 30

Note that the expression for the system matrix has been multiplied by the factor hα. The expressions of the eigenvalues of KD are not easily determined, but the condition det(KD)>0 is more workable. Note that since the trace of the matrix is positive and equals λ1+λ2, the condition of a positive determinant (recall det(KD)=λ1λ2) is sufficient for positive definiteness. One gets

det(KD)=1h2εγhα-1(1+ε)>0γ>αhε. 31

Fulfilment of this condition guarantees that the matrix is positive definite for a fixed mesh size h, but unfortunately it implies γ for ε0. The use of a very large value for γ can lead to undesired numerical problems.

In the case of the interface problems and formulation (19), the situation is slightly better. The extra parameter β can be adjusted in a smart way such that a finite value of γ is always achievable. Such a choice is proposed in [43] where β depends on the material parameters of the subdomains and the sizes of the cut elements, |τIΩi|. Using this approach, the system matrix has always positive eigenvalues (for the considered problem class) with a finite value of γ. Nevertheless, the minimal eigenvalue goes to zero for vanishing sizes of the cut elements. Even though the parameter choices by [43] show a good performance in terms of the quality of the numerical results, the matrix condition number still cannot be bounded for a fixed mesh and arbitrary interface locations.

Stabilisation

The above indicated sources of numerical instability all stem from the same situation that for some degrees of freedom, the intersection of the support of their associated shape functions with the physical domain becomes very small,

sI=|supp(φI)Ω|h, 32

where supp(φI) denotes the support of shape function φI and h is a measure of the mesh size on Ω. In all above cases, Neumann, Dirichlet, or interface problem, this leads to severe ill-conditioning of the final system matrix. To solve this problem, the following approaches have been proposed, among others,

  1. Discarding all degrees of freedom with support intersection below a certain threshold, sI<εh;

  2. Adding a face-based stabilisation term [16];

  3. Constraining degenerate degrees of freedom [6, 12].

As reported, among others, in [12], the approach S-1 leads to a loss of approximation order. Although appealing due to its simplicity, this drawback can be prohibitive in some applications. An ad-hoc approach to remedy the stability problem is to locally adapt the finite element mesh in order to avoid the problem of too small values of sI. Even though simple at first sight, a robust realisation of this idea in three dimensions is not straightforward and mesh entanglement needs to be avoided. The support size sI is increased if specific nodes are moved away from the surface Γ, but there is an interesting alternative in which the points are snapped to the surface thereby generating a conforming mesh, see [44] for two-dimensional analysis of this idea.

Another approach, S-2, is proposed in [16] where the jump of the function gradients across certain element faces is added to the weak form in order to guarantee stability of the method. Other than the result (31), the system matrix stays well-conditioned for small values of γ in the limit ε0. This approach requires to evaluate surface integrals over interior mesh faces, a technicality which requires additional data structures in many codes, but does not add much to the overall difficulty of implementing an immersed finite element method. Nevertheless there is a drawback with this approach, since it introduces another weighting factor whose adjustment is not straightforward: for too small values of this factor the stabilisation effect disappears and for too large values the method’s accuracy is affected [16].

Finally, we consider S-3 which relies on the concept of coupling degrees of freedom with too small supports to other degrees of freedom from the interior of the domain. In order to outline this approach, the degrees of freedom shall first be classified according to the size sI of the intersection of their support with the domain, as defined in (32). In “Finite element discretisation” section, the set S has been introduced which contains all indices of shape functions for which sI is larger than zero. Introducing a threshold s^, the set S is now decomposed into the disjoint index sets, A and B with definition

A={IS:sIs^}andB={IS:sI<s^}. 33

The threshold s^ used in this classification has to depend on the mesh size h and should not be larger than one typical element size. The basic idea of Höllig et al. [12] is to constrain degrees of freedom from the set B to suitably chosen degrees of freedom from A(J), a subset of A,

JB:uJ=IA(J)AcIJuI 34

where the coefficients cIJ will be discussed further below. These constraints give rise to the modified shape function basis

uh(x)=IAuIφI(x)+JBuJφJ(x)=IAuIφI(x)+JBKA(J)cKJuKφJ(x)=IAuIφI(x)+JB(I)cIJφJ(x)=IAuIφ~I(x). 35

In this reordering of the finite element approximation (20) a new set B(I) is used which contains all indices J from B, such that IA(J). For the implementation of this stabilisation method, it is sufficient to work with expression (34), but the result of (35) demonstrates that effectively a modified shape function basis {φ~I}IA is generated and illustrates the notion of extended splines as given in [12]. Note also that B(I)= for all degrees of freedom that are not in the vicinity of the boundary and in that case φ~I=φI, so that most shape functions are not affected. Since the support size of the basis functions φ~I is larger, the bandwidth increases for these degrees of freedom. Therefore, it has to be remarked that only degrees of freedom in the vicinity of the boundary are affected. Moreover, the storage requirement of the final system matrix is of course not larger than it would be for the original (unstable) basis functions φI.

There are two open questions when using this approach: (i) the choice of the index set A(J) associated to J and (ii) the values of the constraint weights cIJ. The origin of this approach, as introduced in [12], is to stabilise b-spline discretisations. In this particular situation, the underlying mesh is logically Cartesian and an explicit expression of the coefficients cIJ can be given as a function of the multi-indices used to label that grid. See also [6] for a more intuitive interpretation of the arising extrapolation of Lagrange polynomials and its efficient implementation. The aim of this stabilisation procedure is to maintain the convergence order of the method and therefore to not lose the polynomial approximation quality of the approximation (20) due to the constraints (34). In other words, the modified basis functions φ~I introduced in (35) have to represent the same polynomials as the φI themselves.

In order to outline the procedure for obtaining A(J) and the corresponding coefficients cIJ, consider the situation depicted in Fig. 10. The degree of freedom uJ, JB, resides at node xJ and the size of the intersection of the support (hatched in the picture) with the domain Ω is below the threshold s^. Searching through the elements in the vicinity of xJ, one finds the element τK(J) whose connected degrees of freedom all belong to A. Any element entirely inside the domain Ω fulfils this condition. Normally, many such elements can be found and the closest is selected, where the distance between the element middle point and xJ is a possible way to measure the proximity. The selected element τK(J) gives rise to the index set A(J)A associated with uJ. Formally, we can write

A(J)={IA:supp(φI)τK(J)}. 36

Once this set is defined, the weights cIJ are calculated by evaluation of the basis of τK(J) at the node xI,

IA(J):cIJ=φI(xJ). 37

This choice of weights is an extension of the idea given in [15] where the weights are defined for non-uniform b-splines as dual functionals applied to the polynomials in a chosen grid element. Here the point evaluation of (37) is the corresponding dual functional of Lagrange polynomials [8]. Note that xJτK(J) and thus cIJ represents an extrapolation of the polynomial basis spanned in τK(J) to the outside point xJ, see also Fig. 10. The stabilisation procedure can be summarised as follows

  1. categorise A and B using a threshold s^, see (32) and (33)

  2. for all JB
    • find τK(J) with all degrees of freedom from A that is close to xJ,
    • define the constraint coefficients as cIJ=φI(xJ) for all IA(J)
  3. assemble the final system of equations using the constraint equations (34) applied to test and trial spaces

  4. after solving the global system, calculate the constrained degree of freedom uJ with JB according to (34).

Fig. 10.

Fig. 10

Cut-element stabilisation on a triangular mesh. Node xJ is the location a degree of freedom uJ, JB and the element τK(J) is used for constraining uJ

With respect to the implementation a few remarks have to be made. The code has to be able to search the elements in the neighbourhood of a given node. For instance, the element τK(J) in Fig. 10 does not lie in the support of φJ but in the ring of elements around that support. Theoretically, for very extreme shapes of Γ the nearest τK(J) to xJ could lie far away, but here we assume that the mesh is fine enough such that there is always an element nearby. Cusp-shaped domains are excluded from the onset. In addition, one has to evaluate the shape functions of τK(J) at xJ and this requires to find first the reference coordinate ξJ (outside of the reference element) such that the geometry representation of the chosen element represents xJ when evaluated at this coordinate, that is xK(J)(ξJ)=xJ. Here we restrict ourselves to meshes in which all elements are an affine transformation of the reference element. Higher-order geometry representations of the volume mesh are excluded, but they are also not necessary since the mesh, by design of the immersed method, need not conform to the geometry of Ω.

Numerical examples

At last, a few numerical examples are presented in order to study and demonstrate the performance of the immersed finite element method as presented here. Unless indicated otherwise, the spatial discretisation of all problems is carried out with linear finite elements. As shown in the appendix, the Nitsche parameter is chosen as γ=γ0αh with the mesh width h, the representative material parameter α and a dimensionless scalar γ0. The default choices for this parameter is γ0=10 and for interface problems the additional parameter is chosen as β=0.5. The threshold s^ used to distinguish between the degree of freedom sets A and B in the stabilisation of “Stabilisation” section is set to the size of one element.

Convergence and robustness analysis

At first, the method’s performance under variation of various parameters is assessed. For this purpose, an essentially one-dimensional Poisson problem is used as depicted in Fig. 11, left, with a forcing function f(x)=α2sin(αx1) and α=3π2xδ. The resulting exact solution is then u(x)=sin(αx1). The signed distance function is distΓ(x)=xδ-x1 and the boundary is represented exactly. At first, this problem is analysed using a structured mesh as shown in the figure. Figure 11, on the right, shows the analytic solution (solid black line) along the x1-axis and its derivative (dashed line) for a boundary location at xδ=67. The approximations uh and 1uh for a mesh with 5×5 elements (red) and a 10×10 element (blue) are also displayed. One can see that the numerical approximation uh coincides with the analytic solution at the finite element nodes and, moreover, at the boundary location at xδ.

Fig. 11.

Fig. 11

One-dimensional problem. Setup (left) and a comparison of exact with approximate solution and its derivative for xδ=67 (right)

The convergence of the method is shown in the left of Fig. 12, where the numerical errors in L2-norm and H1-seminorm are shown for an approximation with linear and a quadratic Lagrange polynomials. These results exhibit the expected optimal convergence rates [8]. In this graph, the boundary location is held fixed at xδ=67 and the mesh width h is decreased. On the other hand, the right side of Fig. 12 shows the smallest and largest eigenvalues of the system matrix in dependence of the boundary location for a non-stabilised implementation and for the stabilisation presented in “Stabilisation” section. Here, a fixed 40×40 mesh is used and the location of the boundary is at xδ=(34+ε)h with the parameter 0ε1. A Neumann boundary condition at xδ is considered and, hence, one has always a(uh,uh)>0 and λmin>0. One can clearly see that λminO(ε) for small ε and for the non-stabilised case (note that the figure shows in fact the inverse 1λmin). Clearly, the matrix condition number grows without bound. The stabilisation as outlined in “Stabilisation” section, however, guarantees a constant value of λmin well above zero. The largest eigenvalues coincide for both cases.

Fig. 12.

Fig. 12

Neumann problem. Convergence for xδ=67 (left) and smallest and largest matrix eigenvalues for a fixed mesh width h=0.025 and various boundary locations xδ=(34+ε)h

Now we turn to the problem with a Dirichlet boundary condition at xδ. Using the same variation of the location of this boundary as above, Fig. 13 shows the smallest eigenvalue λmin for the stabilised method and for the non-stabilised method for various values of γ0 (recall that γ=γ0h). One can see that without stabilisation the considered minimal eigenvalue changes sign for decreasing values of ε rendering the system matrix indefinite (and singular when the zero is crossed). In order to force λmin>0 one can increase the value of γ0, but for ε0 this value grows without bound and one gets effectively λmax which likewise deteriorates the condition number of the matrix, as already discussed in “Sources of instability” section.

Fig. 13.

Fig. 13

Dirichlet problem. Smallest eigenvalue for various boundary locations (h=0.025 and xδ=(34+ε)h)

Next, the stabilisation technique is applied to an unstructured mesh as shown in Fig. 14. Note that this case is not covered by the original idea of this technique as given by [12] which was only designed for b-spline basis functions on structured meshes. The left of Fig. 15 shows the convergence of the stabilised method for linear triangle elements and a fixed boundary location. Finally, the location of the boundary is varied again and the condition number for a Neumann problem is considered in the right of Fig. 15. Whereas in the non-stabilised case this value shows a very erratic behaviour with large peaks, the condition number for the stabilised method is almost constant at a low value.

Fig. 14.

Fig. 14

Unstructured mesh. Varying location of the right boundary at xδ

Fig. 15.

Fig. 15

Results for unstructured mesh. Convergence of the Neumann problem on the unstructured mesh for fixed xδ=67 (left) and the matrix condition number for various boundary locations 0.8xδ0.9 (right)

Now, an interface problem is considered. Figure 16 shows the computational domain that is composed of a circular domain Ω1 embedded in a square domain Ω2. On this domain, the Poisson problem -αiΔu=4 with material parameters α1=1 and α2=1000 is solved, subject to Dirichlet boundary conditions on the outer boundary Ω2. The geometric parameters are chosen as R=0.75 and L=2, respectively. This problem together with its analytic solution is taken from [2]. In the right graph of Fig. 16 the convergence behaviour is shown for different values of the interface weight factor β. For the three considered values β=0, 0.5 and 1, the curves are indistinguishable. Also optimal convergence rates are achieved for mesh sizes smaller than h0.02.

Fig. 16.

Fig. 16

Interface problem. Computational setup of a square with a circular inclusion (left), convergence behaviour for different interface weights β (right); note that these curves are not distinguishable

At last, we consider the influence of the geometry representation. As outlined in “Constructive solid geometry modelling” section, we have to approaches available: the use of a signed distance function representing the entire embedded surface and the successive embedding of the geometry primitives that form the final model. For simplicity, consider a square that coincides on two of its edges with the mesh boundary whereas the other two are represented implicitly. Figure 17 shows the effect of the introduced two approaches in the left and middle images, respectively. Clearly, the upper right corner is chamfered off in the first approach, but represented exactly in the second. As a numerical problem we have chosen -Δu=1 on a unit square subject to u=0 on the lower and left boundaries and u/n=0 on the other two boundaries. An analytic solution to this problem is available, for instance in [45] in the context of Poiseuille flow in a rectangular channel. The right graph in Fig. 17 shows the convergence rates for the two types of geometry modelling. Clearly, optimal convergence rates are obtained for both cases. Nevertheless the exact representation of the corner leads to a much smoother outcome with lower approximation errors for coarse mesh sizes.

Fig. 17.

Fig. 17

Influence of geometry representation. Implicit representations of a square (left: fully implicit, middle: mesh-based CSG) together with the contour colours of the solution to a Poisson equation, convergence of L2 error (right)

Mesh-embedded CSG

Here the domain as obtained by the CSG process of Fig. 6 is reconsidered, see also the left of Fig. 18. The embedding domain is Ω=(0,1)3 and equipped with a uniform hexahedral mesh. Following the mesh-based Boolean operations as introduced in “Constructive solid geometry modelling” section, the immersed geometry is obtained by

  1. intersection with a sphere of radius 0.65 and centred at (0.5, 0.5, 0.5), and

  2. successive subtraction of cylinders around the same centre with radius 0.3 and in the directions of the xi-coordinate axes.

Thus the domain Ω is obtained as shown in Fig. 18 and we assume that it is occupied by a hyperelastic solid. In a first analysis, linearised elasticity is assumed and the convergence is studied by using fundamental solution of elasticity U(x,y) (see, for instance, [46]) as an imposed analytic solution with a source point y located outside of the domain. Therefore, on the bottom (x3=0) the boundary displacements u¯(x)=U(x,y) are prescribed and the remaining boundaries are subject to the Neumann condition t¯=t(U)(x,y). For simplicity, the material parameters are chosen as λ=28.85 and μ=19.23. The right of Fig. 18 shows the convergence of the displacement solution and of the computed volume and surface area of the embedded domain. Quadratic convergence is observed for all considered quantities.

Fig. 18.

Fig. 18

CSG modelling. Embedded domain (left) and convergence behaviour of the displacement u, the domain’s volume V and surface area A

Next, a compressible Neo-Hookean material model [22, 23] with large deformations is used, based on the strain energy density

W(F)=λ2(logJ)2-μlogJ+μ2(trC-3),J=detFandC=FF, 38

with the deformation gradient F=I+Gradu. The material parameters are the same as in the linearised case above. For the example, the bottom boundary is held fixed and a twisting traction field is applied to the top surface with value t¯=10(x2-0.5,0.5-x1,0). The load is applied in 4 steps and within each step a Newton method is used to obtain the equilibrium state. The deformed geometry for these four load steps is shown in the images of Fig. 19 for a 403 grid of linear hexahedron elements.

Fig. 19.

Fig. 19

Large elastic deformation. Load steps 1–4; the surface is coloured by the stress component S33

Composite material

As a last example, the elastic deformation of a fibre-reinforced block of elastic material is considered. A block of dimension L×25L×L is reinforced by inclined fibres placed with a main axis separation of L3. The fibres are represented by cylinders with radius L15. The three-dimensional setup is shown in the left of Fig. 20 and on the right a two-dimensional view of the problem is depicted. The bottom surface is held fixed and the top surface is constrained in normal direction. The left and right surfaces are subject to a constant traction field t¯ in normal direction. The discretisation is carried out by a fixed mesh of dimension 50×20×50 as indicated on the back faces of the three-dimensional view. For comparison, we monitor the average horizontal displacement

U1=1|Ω|Ωu1(x)dΩ 39

throughout the composite body for a variety of fibre angles -35α35. Both domains Ω1 and Ω2 have the hyperelastic material law according to the energy (38) and the computations are carried out with large deformations. For comparison, a linearised situation is also considered.

Fig. 20.

Fig. 20

Fibre-reinforced material. Three-dimensional view (left) and front view (right); in this drawing α=10

The model parameters are chosen as L=1 and t¯=(1,0,0). The materials are represented by the Lamé parameters λ1=5.769, μ1=3.846, λ2=10λ1 and μ2=10μ1. Figure 21 shows the deformed configuration for fibre angles α=-35, α=0 and α=+35. In addition, the analysis of the average horizontal displacement U1 as a function of the considered fibre angles α is shown for the Neo-Hooke material and linearised elasticity. Although there are similarities between the large-deformation analysis and the linearised version, striking differences can be observed too. Most of all, the linear variant is completely symmetric with respect to the sign of α and has its largest value for α=0. In the large-deformation variant, on the other hand the result is a larger deformation for the negative fibre angles and smaller for positive angles. Overall, the body behaves less flexibly in the nonlinear analysis, but with a strong bias to an increased flexibility for negative fibre angles.

Fig. 21.

Fig. 21

Computational analysis of fibre-reinforced material. Deformed geometry with fibres coloured by S33 for α=-35 (top left), α=0 (top right), and α=+35 (bottom left); average horizontal displacement U1 for various fibre angles (bottom right)

Conclusions

Immersed finite element methods, that do not rely on a body-fitted mesh, are a promising alternative to conventional FEM for many applications. Especially in the case of complex three-dimensional geometries, moving interfaces, or design optimisation such methods allow for more flexible geometry processing and remove the repeated interaction with mesh generation software. Here, we present an immersed FEM for the problem class of nonlinear elasticity, based on a weak incorporation of Dirichlet boundary conditions and interface conditions with Nitsche’s method, an implicit geometry representation and accurate integration of the arising cut elements. We place emphasis on the implementation details such as the robust computation of the signed distance function and quadrature by means of tessellation. A common pitfall of non-body-fitted FEM, the loss of numerical stability in situations with degenerate function support, is analysed and we provide a stabilisation technique that is robust without affecting the convergence behaviour. Moreover, the choice of the parameters in the context of Nitsche’s method are thoroughly discussed.

We demonstrate a way to incorporate sharp features such as edges and vertices in our method by means of successively embedding the geometry primitives into the analysis mesh in a similar way as in constructive solid geometry modelling. Based on this idea, geometry modelling is directly integrated in the finite element analysis and there is no need for a mesh generation tool. The presented applications emphasise the potential of this approach, where large deformation analyses are carried out based on a trivial Cartesian background mesh.

A present shortcoming of the introduced approach is the restriction to linear approximation orders. Although the field approximation used in this FEM can be of arbitrary order, a gain in convergence order would be impeded by the geometry representation based on linear facets. In principle, the use of more accurate signed distance functions and the subsequent adaptation on the quadrature level to account for embedded higher-order surface representations is feasible.

Finally, we note that the presented method is ideally suited for the incorporation of h-adaptivity. A combination of this immersed FEM with hierarchical refinement techniques as shown, for instance, in [47] would render a powerful analysis toolbox, which yields accurate numerical predictions based only on the input of geometry primitives.

Author's contributions

The presented ideas are joint contribution of the three authors. TR implemented the numerical techniques and wrote the initial draft of the paper. JMGA and FC contributed to the revision of the draft. All authors read and approved the final manuscript.

Acknowledgements

This work was partially supported by the EPSRC (second author, Grant #EP/G008531/1), by the European Research Council (third author, Grant #ERC-2012-StG 306751), and by the Spanish Ministry of Economy and Competitiveness (third author, Grant #DPI2015-64221-C2-1-R).

Competing interests

The authors declare that they have no competing interests.

Appendix A: method parameters γ and β

In the following, estimates for the parameters γ (Penalty weighting parameter first appearing in (8)) and β (interface weighting parameter first appearing in (13)) are derived. These parameters only make sense with the Finite Element discretisation as the final goal. With a slight abuse of notation, the functions used in the following have to be understood as discrete FE solutions, but for simplicity the superscripts, for instance of uh, have been omitted.

Dirichlet boundary conditions

We develop an estimate for the parameter γ appearing in the linearised weighted residual equation (9). The material behaviour is assumed to be such that Da(u,v)[Δu] is an elliptic bilinear form. The aim is to show that A(u;w,w)>0 for any w0, where u is the current displacement solution. This gives

A(u;w,w)=Da(u,w)[w]-2ΓDDt(u)[w]·wdΓ+γΓDw·wdΓDa(u,w)[w]-2Dt(u)[w]ΓDwΓD+γwΓD2Da(u,w)[w]-2CDa(u,w)[w]wΓD+γwΓD2=Da(u,w)[w]-CwΓD2+(γ-C2)wΓD2. 40

Here, wΓD is the L2-norm over the Dirichlet boundary ΓD. The Cauchy-Schwarz inequality has been used from the first to the second line and, most importantly, the third line is based on the inverse inequality

C2Da(u,w)[w]Dt(u)[w]ΓD2. 41

This type of estimate is also presented in [3] for the case of Poisson’s equation. Knowledge of the constant C gives rise to the choice γ>C2 which renders the last line in (40) positive. Inserting the finite element trial functions (20) into (41) leads to the condition

C2Da(u,eaφI)[ebφJ]ΓDDt(u)[eaφI]·Dt(u)[ebφJ]dΓ 42

for all coordinate directions ea, 0a<nd, and all shape functions φI. Obviously, this condition is only non-trivial if the supports of φI and φJ overlap each other and intersect with the Dirichlet boundary ΓD. Therefore, we use the following abbreviations for these domain and boundary intersections

ΩIJ=Ω(supp(φI)supp(φJ))andΓIJ=ΓD(supp(φI)supp(φJ)). 43

The left-hand side of (42) can be re-written as

Da(u,eaφI)[ebφJ]=ΩIJGrad(ebφJ):C^(u):Grad(eaφI)dΩ, 44

and the right-hand side becomes

ΓIJC^(u):Grad(eaφI)n·C^(u):Grad(ebφJ)ndΓ=ΓIJC^(u):Grad(eaφI)nn:C^(u):Grad(ebφJ)dΓΓIJC^(u):Grad(eaφI):C^(u):Grad(ebφJ)dΓ. 45

Abbreviating the integrands in (44) and (45) with faIbJΩ and faIbJΓ, we obtain for the inverse inequality

C2ΩIJfaIbJΩdΩΓIJfaIbJΓdΓ. 46

Assuming continuity of the integrands, the mean value theorem of integration states that two points ξΩIJ and ηΓIJ exist such that the estimate becomes

C2faIbJΓ(η)faIbJΩ(ξ)|ΓIJ||ΩIJ|. 47

Without assumptions on the shape functions φI and the material behaviour, we cannot further reduce the ratio of the evaluated integrands. Nevertheless, if α denotes a characteristic material behaviour (for instance the bulk modulus), it is clear from (44) and (45) that this ratio scales like α2α=α. Here, we focus on controlling the second part of the right hand side of the estimate (47). Using a standard finite element basis, there are constellations in which ΩIJ0, whereas ΓIJ does not decrease: see, for instance the sliver test case in [16].

Employing the proposed stabilisation technique from “Stabilisation” section, where critical shape functions are essentially joined with neighbouring ones that have a non-degenerate support, the above geometric ratio can be safely estimated as

|ΓIJ||ΩIJ|hnd-1hnd=1h, 48

because the support sizes of the stabilised basis functions φ~I never fall below the stabilisation threshold s^ which is of order hnd. In conclusion, we can state that there exists a constant γ0 independent of the material and the mesh size h, such that

γ=γ0αh>C2 49

and, in turn, A(u;w,w)>0, see estimate (40).

Interface conditions

Next, we assess the choice of parameters in the linearised weighted residual equation (19) for the interface problems. To this end, the steps of (40) are repeated in an analogous manner with the function w=(w1,w2) and yield the estimate

A(u;w,w)Da1(u1,w1)[w1]+Da2(u2,w2)[w2]-DwΓ2+(γ-D2)wΓ2, 50

which is positive for wi0 and γ>D2. Here, D is the constant of the inverse estimate

D2Da1(u1,w1)[w1]+Da2(u2,w2)[w2]ΓβDt(u1)[w1]+(1-β)Dt(u2)[w2]2dΓ. 51

Using the “Peter-Paul inequality” with some δ>0 (that is, the estimate 2abδa2+δ-1b2) one gets

D2Da1(u1,w1)[w1]+Da2(u2,w2)[w2](1+δ)β2Γ(Dt(u1)[w1])2dΓ+(1+δ-1)(1-β)2Γ(Dt(u1)[w1])2dΓ. 52

Let Ci denote the constant of (41) for the subdomain Ωi, choose δ=((1-β)2C22)/(β2C12), and insert the inverse inequality (41) into the last expression in order to get

D2β2C12+(1-β)2C22. 53

Based on the discussion above we know that the stabilisation technique given in “Stabilisation” section keeps the values of Ci bounded: therefore D according to (53) is well-behaved, independent of the choice of 0β1. Nevertheless, in [43] a parameter choice for β is presented which keeps the value of D bounded even for a non-stabilised finite element basis. Their choice is, adapted to the notation used here, β=C1-1/(C1-1+C2-1) and this value controls nicely the right-hand-side of expression (53) for unbounded values of Ci (note that in case of geometric constellations for which C1 is large the counterpart C2 is small, and vice versa). But it has to be remarked that in certain types of applications (e.g. fluid-structure interaction [48]) it is convenient to freely choose the parameter β without stability restrictions. Moreover, this special choice of β maintains A(u;w,w)>0 for a finite value of γ, but does not prevent unbounded values of the condition number of the system matrix. With the here presented stabilisation technique, the choice of β does not affect stability and γ=γ0(α1+α2)/h provides a safe choice for the characteristic material parameters αi.

Contributor Information

Thomas Rüberg, Email: thomas.rueberg@gmx.de.

Fehmi Cirak, Email: f.cirak@eng.cam.ac.uk.

José Manuel García Aznar, Email: jmgaraz@unizar.es.

References

  • 1.Cottrell JA, Hughes TJ, Bazilevs Y. Isogeometric analysis: toward integration of CAD and FEA. New York: Wiley; 2009. [Google Scholar]
  • 2.Hansbo A, Hansbo P. An unfitted finite element method, based on Nitsche’s method, for elliptic interface problem. Comput Methods Appl Mech Eng. 2002;191:5537–5552. doi: 10.1016/S0045-7825(02)00524-8. [DOI] [Google Scholar]
  • 3.Dolbow J, Harari I. An efficient finite element method for embedded interface problems. Int J Numer Methods Eng. 2009;78:229–252. doi: 10.1002/nme.2486. [DOI] [Google Scholar]
  • 4.Sanches R, Bornemann P, Cirak F. Immersed b-spline (i-spline) finite element method for geometrically complex domains. Comput Methods Appl Mech Eng. 2011;200(13):1432–1445. doi: 10.1016/j.cma.2010.12.008. [DOI] [Google Scholar]
  • 5.Rüberg T, Cirak F. An immersed finite element method with integral equation correction. Int J Numer Methods Eng. 2011;86:93–114. doi: 10.1002/nme.3057. [DOI] [Google Scholar]
  • 6.Rüberg T, Cirak F. Subdivision-stabilised immersed b-spline finite elements for moving boundary flows. Comput Methods Appl Mech Eng. 2011;209–212:266–283. [Google Scholar]
  • 7.Nitsche J. Über ein Variationsprinzip zur Lösung von Dirichlet-Problemen bei Verwendung von Teilräumen, die keinen Randbedingungen unterworfen sind. In: Abhandlungen aus dem Mathematischen Seminar der Universität Hamburg, vol. 36. Berlin: Springer; 1971. p. 9–15.
  • 8.Ern A, Guermond JL. Theory and practice of finite elements. Berlin: Springer; 2004. [Google Scholar]
  • 9.Courant R. Variational methods for the solution of problems of equilibrium and vibrations. Bull Am Math Soc. 1943;49(1):1–23. doi: 10.1090/S0002-9904-1943-07818-4. [DOI] [Google Scholar]
  • 10.Babuška I. The finite element method with Lagrangian multipliers. Numerische Mathematik. 1973;20(3):179–192. doi: 10.1007/BF01436561. [DOI] [Google Scholar]
  • 11.Fries T-P, Belytschko T. The extended/generalized finite element method: an overview of the method and its applications. Int J Numer Methods Eng. 2010;84(3):253–304. [Google Scholar]
  • 12.Höllig K, Reif U, Wipper J. Weighted extended B-spline approximation of Dirichlet problems. SIAM J Numer Anal. 2001;39:442–462. doi: 10.1137/S0036142900373208. [DOI] [Google Scholar]
  • 13.Legrain G, Allais R, Cartraud P. On the use of the extended finite element method with quadtree/octree meshes. Int J Numer Methods Eng. 2011;86(6):717–743. doi: 10.1002/nme.3070. [DOI] [Google Scholar]
  • 14.Schillinger D, Dedè L, Scott MA, Evans JA, Borden MJ, Rank E, Hughes TJR. An isogeometric design-through-analysis methodology based on adaptive hierarchical refinement of nurbs, immersed boundary methods, and t-spline CAD surfaces. Comput Methods Appl Mech Eng. 2012;249–252:116–150. doi: 10.1016/j.cma.2012.03.017. [DOI] [Google Scholar]
  • 15.Höllig K, Reif U. Nonuniform web-splines. Comput Aided Geom Des. 2003;20(5):277–294. doi: 10.1016/S0167-8396(03)00045-1. [DOI] [Google Scholar]
  • 16.Burman E, Hansbo P. Fictitious domain finite element methods using cut elements: II. A stabilized Nitsche method. Appl Numer Math. 2012;62(4):328–341. doi: 10.1016/j.apnum.2011.01.008. [DOI] [Google Scholar]
  • 17.Rüberg T, Cirak F. A fixed-grid b-spline finite element technique for fluid-structure interaction. Int J Numer Methods Fluids. 2014;74:623–660. doi: 10.1002/fld.3864. [DOI] [Google Scholar]
  • 18.Rüberg T, Aznar JMG. Numerical simulation of solid deformation driven by creeping flow using an immersed finite element method. Adv Model Simul Eng Sci. 2016;3(1):1–31. doi: 10.1186/s40323-015-0055-3. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 19.Bandara K, Rüberg T, Cirak F. Shape optimisation with multiresolution subdivision surfaces and immersed finite elements. Comput Methods Appl Mech Eng. 2016;300:510–539. doi: 10.1016/j.cma.2015.11.015. [DOI] [Google Scholar]
  • 20.Hansbo A, Hansbo P. A finite element method for the simulation of strong and weak discontinuities in solid mechanics. Comput Methods Appl Mech Eng. 2004;193(33):3523–3540. doi: 10.1016/j.cma.2003.12.041. [DOI] [Google Scholar]
  • 21.Mergheim J, Steinmann P. A geometrically nonlinear FE approach for the simulation of strong and weak discontinuities. Comput Methods Appl Mech Eng. 2006;195(37):5037–5052. doi: 10.1016/j.cma.2005.05.057. [DOI] [Google Scholar]
  • 22.Holzapfel GA. Nonlinear solid mechanics: a continuum approach for engineering. New York: Wiley; 2000. [Google Scholar]
  • 23.Wriggers P. Nonlinear finite element methods. Berlin: Springer; 2008. [Google Scholar]
  • 24.Ortiz M, Pandolfi A. Finite-deformation irreversible cohesive elements for three-dimensional crack-propagation analysis. Int J Numer Methods Eng. 1999;44(9):1267–1282. doi: 10.1002/(SICI)1097-0207(19990330)44:9&#x0003c;1267::AID-NME486&#x0003e;3.0.CO;2-7. [DOI] [Google Scholar]
  • 25.Höllig K, Reif U, Wipper J. B-spline approximation of Neumann problems. Technical report. Germany: University of Stuttgart; 2001. [Google Scholar]
  • 26.Jones M, Bærentzen JA, Šrámek M. 3D distance fields: a survey of techniques and applications. IEEE Trans Vis Comput Graph. 2006;12(4):581–599. doi: 10.1109/TVCG.2006.56. [DOI] [PubMed] [Google Scholar]
  • 27.Piegl L, Tiller W. The NURBS book. 1997. Monographs in visual communication. Berlin: Springer; 1997. [Google Scholar]
  • 28.Jörg P, Reif U Subdivision Surfaces. Geometry and Computing, vol 3. Berlin: Springer; 2008. doi:10.1007/978-3-540-76406-9.
  • 29.Cirak F, Ortiz M, Schröder P. Subdivision surfaces: a new paradigm for thin-shell finite-element analysis. Int J Numer Methods Eng. 2000;47(12):2039–2072. doi: 10.1002/(SICI)1097-0207(20000430)47:12&#x0003c;2039::AID-NME872&#x0003e;3.0.CO;2-1. [DOI] [Google Scholar]
  • 30.Pabst HF, Springer JP, Schollmeyer A, Lenhardt R, Lessig C, Froehlich R. Ray casting of trimmed NURBS surfaces on the GPU. In: Knoll A, Wald I, Parker S, Hansen C, editors. IEEE Symposium on interactive ray tracing. Piscataway: IEEE; 2006. pp. 151–160. [Google Scholar]
  • 31.Shapiro V. Real functions for representation of rigid solids. Comput Aided Geom Des. 1994;11(2):153–175. doi: 10.1016/0167-8396(94)90030-2. [DOI] [Google Scholar]
  • 32.Ericson C. Real-time collision detection. Boca Raton: CRC Press; 2004. [Google Scholar]
  • 33.Mauch SP. Efficient algorithms for solving static Hamilton-Jacobi equations. PhD thesis. Pasadena: Calinfornia Institute of Technology; 2003. [Google Scholar]
  • 34.Rank E, Ruess M, Kollmannsberger S, Schillinger D, Düster A. Geometric modeling, isogeometric analysis and the finite cell method. Comput Methods Appl Mech Eng. 2012;249–252:104–115. doi: 10.1016/j.cma.2012.05.022. [DOI] [Google Scholar]
  • 35.Pasko A, Adzhiev V, Sourin A, Savchenko V. Function representation in geometric modeling: concepts, implementation and applications. Vis Comput. 1995;11(8):429–446. doi: 10.1007/BF02464333. [DOI] [Google Scholar]
  • 36.Duff T. Interval arithmetic recursive subdivision for implicit functions and constructive solid geometry. In: ACM SIGGRAPH computer graphics, vol. 26. New York: ACM; 1992. p. 131–38.
  • 37.Sukumar N, Chopp DL, Moës N, Belytschko T. Modeling holes and inclusions by level sets in the extended finite-element method. Comput Methods Appl Mech Eng. 2001;190(46):6183–6200. doi: 10.1016/S0045-7825(01)00215-8. [DOI] [Google Scholar]
  • 38.Kobbelt LP, Botsch M, Schwanecke U, Seidel HP. Feature sensitive surface extraction from volume data. In: Pocock L, editor. Proceedings of the 28th annual conference on computer graphics and interactive techniques. New York: ACM; 2001. pp. 57–66. [Google Scholar]
  • 39.Song X, Jüttler B. Modeling and 3D object reconstruction by implicitly defined surfaces with sharp features. Comput Graph. 2009;33(3):321–330. doi: 10.1016/j.cag.2009.03.021. [DOI] [Google Scholar]
  • 40.Müller B, Kummer F, Oberlack M. Highly accurate surface and volume integration on implicit domains by means of moment-fitting. Int J Numer Methods Eng. 2013;96(8):512–528. doi: 10.1002/nme.4569. [DOI] [Google Scholar]
  • 41.Sudhakar Y, de Almeida JM, Wall WA. An accurate, robust, and easy-to-implement method for integration over arbitrary polyhedra: application to embedded interface methods. J Comput Phys. 2014;273:393–415. doi: 10.1016/j.jcp.2014.05.019. [DOI] [Google Scholar]
  • 42.Düster A, Parvizian J, Yang Z, Rank E. The finite cell method for three-dimensional problems of solid mechanics. Comput Methods Appl Mech Eng. 2008;197(45):3768–3782. doi: 10.1016/j.cma.2008.02.036. [DOI] [Google Scholar]
  • 43.Annavarapu C, Hautefeuille M, Dolbow JE. A robust Nitsche’s formulation for interface problems. Comput Methods Appl Mech Eng. 2012;225:44–54. doi: 10.1016/j.cma.2012.03.008. [DOI] [Google Scholar]
  • 44.Rangarajan R, Lew AJ. Universal meshes: a method for triangulating planar curved domains immersed in nonconforming meshes. Int J Numer Methods Eng. 2014;98(4):236–264. doi: 10.1002/nme.4624. [DOI] [Google Scholar]
  • 45.White FM, Corfield I. Viscous fluid flow. New York: McGraw-Hill; 2006. [Google Scholar]
  • 46.McLean WC. Strongly elliptic systems and boundary integral equations. Cambridge: Cambridge University Press; 2000. [Google Scholar]
  • 47.Bornemann P, Cirak F. A subdivision-based implementation of the hierarchical b-spline finite element method. Comput Methods Appl Mech Eng. 2013;253:584–598. doi: 10.1016/j.cma.2012.06.023. [DOI] [Google Scholar]
  • 48.Bazilevs Y, Hsu M-C, Scott M. Isogeometric fluid-structure interaction analysis with emphasis on non-matching discretizations, and with application to wind turbines. Comput Methods Appl Mech Eng. 2012;249:28–41. doi: 10.1016/j.cma.2012.03.028. [DOI] [Google Scholar]

Articles from Advanced Modeling and Simulation in Engineering Sciences are provided here courtesy of Springer

RESOURCES