35

Lehrstuhl für Informatik 10 (Systemsimulation) · a solver that uses the Schur complement method for this task in this thesis. It will be shown, that, as for the Stokes system, equation

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

  • FRIEDRICH-ALEXANDER-UNIVERSITÄT ERLANGEN-NÜRNBERGTECHNISCHE FAKULTÄT • DEPARTMENT INFORMATIK

    Lehrstuhl für Informatik 10 (Systemsimulation)

    A Solver for Linear Elasticity in Hierarchical Hybrid Grids

    René Müller

    Bachelorarbeit

  • A Solver for Linear Elasticity in Hierarchical Hybrid Grids

    René MüllerBachelorarbeit

    Aufgabensteller: Prof. Dr. U. Rüde

    Betreuer: Dr. B. Gmeiner

    Bearbeitungszeitraum: 01.08.2014 - 30.11.2014

  • Erklärung:

    Ich versichere, dass ich die Arbeit ohne fremde Hilfe und ohne Benutzung anderer als der angege-benen Quellen angefertigt habe und dass die Arbeit in gleicher oder ähnlicher Form noch keineranderen Prüfungsbehörde vorgelegen hat und von dieser als Teil einer Prüfungsleistung angenom-men wurde. Alle Ausführungen, die wörtlich oder sinngemäÿ übernommen wurden, sind als solchegekennzeichnet.

    Der Universität Erlangen-Nürnberg, vertreten durch den Lehrstuhl für Systemsimulation (Infor-matik 10), wird für Zwecke der Forschung und Lehre ein einfaches, kostenloses, zeitlich und örtlichunbeschränktes Nutzungsrecht an den Arbeitsergebnissen der Bachelorarbeit einschlieÿlich etwaigerSchutzrechte und Urheberrechte eingeräumt.

    Erlangen, den 28. November 2014 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

  • Abstract

    Structural mechanics is a very important application �eld of the Finite Element Method[2,7,13]. It can be said, that the Finite Element Method has its roots in structural mechanics.Systems of elliptic di�erential equations with initial and boundary values often have to be solvedin Computational Solid Mechanics (CSM). One popular example of an elliptic boundary valueproblem is the Lamé equation. This equation depicts the main di�erential equation in elasto-dynamics. There are di�erent ways to solve the Lamé equation numerically. Some examples arediscretization by Finite Di�erences, Finite Elements or Finite Volumes. In the past it turnedout that Finite Elements work very well especially for elliptic di�erential equations. There hasbeen a lot of research on the numerical solution of the Lamé equation and problems in linearelasticity in general [2, 7, 12].Another focus in this context is the treatment of nearly incompressible material, like rubber.Since nearly incompressible material has some complicated characteristics and it is an importantcomponent in many industrial applications, e.g. rubber as sealant or main element of tires inautomotive industry, researchers worldwide have been dealing with it. There exists a lot ofliterature with di�erent approaches to this kind of material [2, 12]. Most of this approacheshave in common, that they use an alternate form of the Lamé equation to solve problems inlinear elasticity including nearly incompressible material. The derivation of this alternate formwill also be shortly introduced in this thesis. Wobker and Turek present Vanka-type smoothersfor the solution of the Lamé equation in their paper [12]. Contrary to this, we want to presenta solver that uses the Schur complement method for this task in this thesis. It will be shown,that, as for the Stokes system, equation systems similar to saddle-point problems emerge in thisspecial �eld of Computational Solid Mechanics. There already exists a solver for the discreteincompressible Stokes equations at the chair for systemsimulation at University of Erlangen-Nürnberg. Since the Stokes system with variable viscosity leads to a similar problem as in linearelasticity, this solver will be studied and extended. By means of di�erent test con�gurationsthe correctness and convergence of the new solver will be analysed.

    4

  • Contents

    1 Introduction 9

    1.1 Research objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.2 Structure of the thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    2 Theoretical background 10

    2.1 Linear elasticity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.2 Nearly incompressible material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

    3 Derivation of the algorithm for the mixed problem 14

    3.1 Pressure Correction Scheme for the Stokes system . . . . . . . . . . . . . . . . . . . 143.2 Pressure Correction Scheme for the mixed problem in linear elasticity . . . . . . . . 14

    4 Numerical analysis 17

    4.1 Constant and linear functions with Dirichlet boundary conditions . . . . . . . . . . . 174.1.1 Description of the con�gurations . . . . . . . . . . . . . . . . . . . . . . . . . 174.1.2 Development of the error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

    4.2 Cubic and trigonometric functions with Dirichlet boundary conditions . . . . . . . . 214.2.1 General convergence of Finite Element Method . . . . . . . . . . . . . . . . . 214.2.2 Description of the con�gurations . . . . . . . . . . . . . . . . . . . . . . . . . 224.2.3 Development of the discretization error . . . . . . . . . . . . . . . . . . . . . 22

    4.3 Neumann boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.3.1 Linear function with Neumann boundary conditions . . . . . . . . . . . . . . 234.3.2 Showcase: rumble strip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

    5 Conclusion, limitations and prospective research 33

    5.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335.2 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335.3 Prospective research . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

    5

  • List of Figures

    1 Structure of the thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Lateral compression of a body due to a longitudinal stretching whose relationship is

    given by Poisson's ratio ν. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 State of stress of an in�nitesimal volument element in a 3D continuum. . . . . . . . 114 Pressure Correction Scheme for the Stokes system [3]. . . . . . . . . . . . . . . . . . 155 Preconditioned Pressure Correction Scheme for the mixed problem. . . . . . . . . . . 166 Centered unit cube . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 Rigid body mode of an unit cube that is translated only in x-direction. . . . . . . . . 188 Distorted cube by an one-dimensional force in x-direction. . . . . . . . . . . . . . . . 199 Cube under force F . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1910 Development of the Euclidean norm of the error for ~u1. The number of iterations

    refers to the number of calculations of ~u in step 2 of �gure 5. . . . . . . . . . . . . . 2011 Development of the scaled Euclidean norm of the error for ~u2. The number of itera-

    tions refers to the number of calculations of ~u in step 2 of �gure 5. . . . . . . . . . . 2012 Displacement ~u2 in x-, y- and z-direction along the middle chords of the unit cube

    visualized by slices in paraview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2113 Comparison of computed values and exact solution along the coordinates [x, 0.5, 0.5]

    of the cube for ~u3 with a mesh size of18 . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    14 Comparison of computed values and exact solution along the coordinates [0.5, y, 0.5]and [0.5, 0.5, z] of the cube for ~u3 with a mesh size of

    18 . . . . . . . . . . . . . . . . . 23

    15 Comparison of computed values and exact solution along the coordinates [x, 0.5, 0.5]of the cube for ~u3 with a mesh size of

    116 . . . . . . . . . . . . . . . . . . . . . . . . . 24

    16 Comparison of computed values and exact solution along the coordinates [0.5, y, 0.5]and [0.5, 0.5, z] of the cube for ~u3 with a mesh size of

    116 . . . . . . . . . . . . . . . . 24

    17 Comparison of computed values and exact solution along the coordinates [x, 0.5, 0.5]of the cube for ~u3 with a mesh size of

    132 . . . . . . . . . . . . . . . . . . . . . . . . . 24

    18 Comparison of computed values and exact solution along the coordinates [0.5, y, 0.5]and [0.5, 0.5, z] of the cube for ~u3 with a mesh size of

    132 . . . . . . . . . . . . . . . . 24

    19 Comparison of computed values and exact solution along the coordinates [x, 0.5, 0.5]of the cube for ~u4 with a mesh size of

    18 . . . . . . . . . . . . . . . . . . . . . . . . . . 24

    20 Comparison of computed values and exact solution along the coordinates [0.5, y, 0.5]of the cube for ~u4 with a mesh size of

    18 . . . . . . . . . . . . . . . . . . . . . . . . . . 24

    21 Comparison of computed values and exact solution along the coordinates [0.5, 0.5,z] of the cube for ~u4 with a mesh size of

    18 . . . . . . . . . . . . . . . . . . . . . . . . 25

    22 Comparison of computed values and exact solution along the coordinates [x, 0.5, 0.5]of the cube for ~u4 with a mesh size of

    116 . . . . . . . . . . . . . . . . . . . . . . . . . 25

    23 Comparison of computed values and exact solution along the coordinates [0.5, y, 0.5]of the cube for ~u4 with a mesh size of

    116 . . . . . . . . . . . . . . . . . . . . . . . . . 25

    24 Comparison of computed values and exact solution along the coordinates [0.5, 0.5,z] of the cube for ~u4 with a mesh size of

    116 . . . . . . . . . . . . . . . . . . . . . . . . 25

    25 Comparison of computed values and exact solution along the coordinates [x, 0.5, 0.5]of the cube for ~u4 with a mesh size of

    132 . . . . . . . . . . . . . . . . . . . . . . . . . 26

    26 Comparison of computed values and exact solution along the coordinates [0.5, y, 0.5]of the cube for ~u4 with a mesh size of

    132 . . . . . . . . . . . . . . . . . . . . . . . . . 26

    27 Comparison of computed values and exact solution along the coordinates [0.5, 0.5,z] of the cube for ~u4 with a mesh size of

    132 . . . . . . . . . . . . . . . . . . . . . . . . 26

    28 Surface stresses on the unit cube. Dirichlet boundary is on the back side. . . . . . . 2729 Comparison of computed values and exact solution along the coordinates [x, 0, 0] of

    the cube for ~u6 with a mesh size of18 . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

    30 Comparison of computed values and exact solution along the coordinates [0, y, 0]and [0, 0, z] of the cube for ~u6 with a mesh size of

    18 . . . . . . . . . . . . . . . . . . . 29

    31 Comparison of computed values and exact solution along the coordinates [x, 0, 0] ofthe cube for ~u6 with a mesh size of

    116 . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

    32 Comparison of computed values and exact solution along the coordinates [0, y, 0]and [0, 0, z] of the cube for ~u6 with a mesh size of

    116 . . . . . . . . . . . . . . . . . . 29

    6

  • 33 Comparison of computed values and exact solution along the coordinates [x, 0, 0] ofthe cube for ~u6 with a mesh size of

    132 . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

    34 Comparison of computed values and exact solution along the coordinates [0, y, 0]and [0, 0, z] of the cube for ~u6 with a mesh size of

    132 . . . . . . . . . . . . . . . . . . 29

    35 Normal stresses in x-, y- and z-direction for ~u6 along the axis in a slice through thecube centered at coordinates [0,0,0] with a mesh size of 132 . . . . . . . . . . . . . . . 30

    36 Rumble strip load 1: Con�guration . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3037 Rumble strip load 1: Distribution of von Mises stresses in Pa with mesh size 132 . . . 3038 Rumble strip load 2: Con�guration . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3139 Rumble strip load 2: Distribution of von Mises stresses in Pa with mesh size 132 . . . 3140 Rumble strip load 3: Con�guration . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3141 Rumble strip load 3: Distribution of von Mises stresses in Pa with mesh size 132 . . . 31

    7

  • List of Tables

    1 Euclidean norm of the error of ~u3, ~u4 and ~u5 for di�erent mesh sizes. . . . . . . . . . 222 Convergence rate of the error of ~u3, ~u4 and ~u5. . . . . . . . . . . . . . . . . . . . . . 223 Number of grid points on the faces of the unit cube. . . . . . . . . . . . . . . . . . . 284 Rumble strip: Maximum von Mises stresses for load 1,2 and 3 for di�erent mesh sizes. 31

    8

  • Introduction,mresearchmobjectivesm andmthesismstructurem5Chapterm1)

    Theoreticalmbackgroundm5Chapterm2)Linearmelasticity Nearlymincompressiblemmaterial

    Derivationmofmthemalgorithmmformthemmixedmproblemm5Chapterm3)PressuremCorrectionmSchememformthemStokesmsystem

    PressuremCorrectionmSchememformthemmixedmproblemminmlinearmelasticity

    Numericalmanalysism5Chapterm4)

    Conclusion,mlimitationsmandmprospectivemresearchm5Chapterm5)

    Dirichlet boundarymconditionsm Neumannmboundarymconditions

    Convergencemofmthemsolver

    Figure 1: Structure of the thesis

    1 Introduction

    1.1 Research objectives

    The chair for systemsimulation at University of Erlangen-Nürnberg has developed a solver for thesolution of the discrete incompressible Stokes equations. This solver is based on the discretizationby Finite Elements and the library Hierarchical Hybrid Grids (HHG) [1, 4]. The discrete Stokesequations are solved using the Schur complement method and the Pressure Correction Scheme thatwas implemented by Björn Gmeiner in his PhD thesis [3]. With the help of some changes in thealgorithm, it is possible to adapt the existing Stokes solver to applications in the �eld of Compu-tational Solid Mechanics (CSM). It is the main goal of this thesis to provide a tool that deliversreliable results for computations in structural mechanics. Furthermore, the accuracy of the solvershall be proved by several meaningful test cases and �nally, this thesis shall be the basis for furtherresearch in the �eld of linear elasticity.

    Before answering the tasks of the present thesis, a detailed overview of the structure of this thesisis illustrated in the next subsection 1.2.

    1.2 Structure of the thesis

    The present thesis will address its major objectives in �ve chapters and is structured as follows.After a short introduction into the considered problem and the main goals of this paper, there aresome remarks about the fundamentals of the theory of linear elasticity. By introducing certainrelationships and equations of mechanical science, this will lead to the formulation of the Laméequation. Thereafter, this theory will be enlarged for the treatment of nearly incompressible ma-terial, since iterative solvers for the Lamé equation fail for this kind of material, as we will see.As a result, the pure displacement formulation of the Lamé equation is transferred into a mixedformulation that contains the pressure function besides the displacement. The third part of thepresent thesis is a display of the derivation of the algorithm for the mixed problem. In additionto preliminary considerations about the existing algorithm for the solution of the discrete incom-pressible Stokes equations, some modi�cations of this solver will be described. These modi�cationslead to the solver that enables calculations in the context of structural mechanics. Subsequently,numerical studies are provided in chapter four. Error analyses serve as a kind of veri�cation of thealgorithm. Di�erent con�gurations are considered to give an impression on how the solver behavesunder various prerequisites. Dirichlet as well as Neumann boundary conditions will be considered.Another interesting aspect of this chapter is the study of the convergence rate of the solver. Finally,some concluding remarks about limitations of this work as well as prospective research round o�this thesis.Figure 1 illustrates the structure of this thesis once again.

    9

  • 2 Theoretical background

    Before starting with the description of the algorithm of the solver for structural mechanics in chapter3, it is necessary to introduce some elementary theory of linear elasticity in this section. Thereafter,some characteristics of nearly incompressible material are described.

    2.1 Linear elasticity

    Elasticity treats the deformation of solid bodies who are under the impact of external loads. Todescribe the deformation by linear equations, it is necessary to assume only small displacements.Another requirement is, that the material properties are constant, homogeneous and isotropic.

    Assuming the above prerequisites, the following relationship between the strains and the displace-ments can be expressed:

    � =1

    2

    (∇~u+∇~uT

    ). (1)

    � is called the Cauchy strain tensor. This tensor consists of 9 components that fully describe thestate of deformation of an in�nitesimal volume element:

    � =

    �x γxy γxzγyx �y γyzγzx γzy �z

    .On the diagonal there are the normal strains due to normal stresses. The other components arestrains due to shear stresses. � is symmetric. Thus, the tensor only contains 6 independent compo-nents and � can be described by a vector notation:

    � =

    �x�y�zγxyγyzγxz

    .Furthermore, the linear law of Hooke for isotropic materials puts the Cauchy stress tensor σin relation to the strains and the two Lamé material constants µ as well as λ:

    σ = 2µ�+ λ tr(�)I. (2)

    Here, µ is the modulus of shear and λ stands for Lamé's �rst parameter. tr is the trace functionand I the identity matrix. µ and λ are de�ned as follows [11]:

    µ = E2(1+ν) , λ =Eν

    (1+ν)(1−2ν) .

    E stands for Young's modulus and ν for material Poisson's ratio. Both are derived by the two Laméconstants µ and λ [11]:

    E = µ(3λ+2µ)λ+µ , ν =λ

    2(λ+µ) .

    The material constants µ, λ and E have the unit Pa = Nm2 , Poisson's ratio ν is dimensionless. Thisis because ν describes the lateral contraction and it is de�ned as the linear negative relationship ofthe stretching or compression in lateral direction relatively to the change of the length: ν = − �yy�xx .Figure 2 illustrates this. For positive Poisson's ratio there is a lateral compression �yy in the case ofa longitudinal stretching �xx and a lateral stretching �yy in the case of a longitudinal compression�xx. Negative Poisson ratios have a reversed relationship. For materials with a Poisson ratio greaterthan 0.5 there is a loss in volume due to a tensile loading to regard. Hence, ν is a very importantmaterial constant in elasticity as we will also see in the next subsection.

    Hooke's law (2) can be expressed in matrix notation as follows:

    σ = C� ⇒ � = C−1σ. (3)

    C represents the material speci�c matrix that is de�ned in the following way [2]:

    10

  • εxx

    εyy

    Figure 2: Lateral compression of a body due to a longitudinal stretching whose relationship isgiven by Poisson's ratio ν.

    y

    z

    x σxτxy

    τxzτyz

    τyxσy

    τzyτzx

    σz

    Figure 3: State of stress of an in�nitesimal volument element in a 3D continuum.

    C = E(1+ν)(1−2ν)

    1− ν ν ν 0 0 0ν 1− ν ν 0 0 0ν ν 1− ν 0 0 00 0 0 1− 2ν 0 00 0 0 0 1− 2ν 00 0 0 0 0 1− 2ν

    .

    The inverse of C [2] has the form

    C−1 = 1E

    1 −ν −ν 0 0 0−ν 1 −ν 0 0 0−ν −ν 1 0 0 00 0 0 1 + ν 0 00 0 0 0 1 + ν 00 0 0 0 0 1 + ν

    .

    That means, with given strains the stresses can be calculated and reversed. The Cauchy stresstensor σ consists of 9 components as the strain tensor �. Because of the symmetry, we can alsode�ne a short vector representation for σ:

    σ =

    σx τxy τxzτyx σy τyzτzx τzy σz

    =σxσyσzτxyτyzτxz

    .

    σx, σy and σz stand for the normal stresses, the other components for the shear stresses. Figure 3intends to illustrate the state of stress of an in�nitesimal volume element in a 3D continuum.

    The linear relationship of the stresses and the strains now reads as follows:

    11

  • σxσyσzτxyτyzτxz

    =E

    (1+ν)(1−2ν)

    1− ν ν ν 0 0 0ν 1− ν ν 0 0 0ν ν 1− ν 0 0 00 0 0 1− 2ν 0 00 0 0 0 1− 2ν 00 0 0 0 0 1− 2ν

    �x�y�zγxyγyzγxz

    .

    With a given strain tensor, the displacement vector ~u =(u, v, w

    )Tis obtained by the integration

    of the following equations:

    �x =∂u

    ∂x, �y =

    ∂v

    ∂y, �z =

    ∂w

    ∂z, γxy =

    (∂u

    ∂y+∂v

    ∂x

    ), γyz =

    (∂v

    ∂z+∂w

    ∂y

    ), γxz =

    (∂u

    ∂z+∂w

    ∂x

    ). (4)

    By inserting Hooke's law (2) into the momentum equation

    − div σ = ~f, (5)

    �nally the Lamé equation with given boundary conditions can be expressed:

    −2µ div �− λ grad div ~u = ~f, x ∈ Ω~u = ~uD, x ∈ ΓDσ~n = ~t, x ∈ ΓN .

    (6)

    On the Dirichlet boundaries, denoted by ΓD, displacements are prede�ned by a function. Neumannboundary conditions are described by stress vectors ~t that are yielded by the product of the stresstensor σ and the surface normal ~n at every point on the Neumann boundaries. This form of theLamé equation is denoted as pure displacement formulation, because it only depends on thedeformation vector ~u. For nearly incompressible material, iterative solver using that formulationfail as we can see in the next subsection.

    2.2 Nearly incompressible material

    There are some speci�c features concerning nearly incompressible material. For this material,Poisson's ratio ν is close to 0.5. The e�ect becomes clear when looking at the de�nition of the twoLamé material constants once again [11]:

    µ = E2(1+ν) , λ =Eν

    (1+ν)(1−2ν) .

    If ν is near by 0.5, Lamé's �rst parameter λ tends to in�nity. Two problems exist when applyingthe pure displacement equation (6) to nearly incompressible material according to [12]. Wobkerand Turek state, that "iterative solving schemes deteriorate due to a high condition number of theresulting system matrix" [12, p. 33]. Another aspect to be aware of is volume locking. Thismeans, the error of the Finite Element computation is "signi�cantly larger than the approximationerror" as it is stated in [2].In order to achieve a good solution for nearly incompressible material, the pure displacement formu-lation (6) has to be transferred into a mixed formulation. By introducing the pressure function

    p := −λ div ~u

    and inserting it into the Lamé equation (6), we get a mixed problem:

    −2µ div �+∇p = ~f, x ∈ Ω

    −div ~u− 1λp = 0, x ∈ Ω

    ~u = ~uD, x ∈ ΓDσ~n = ~t, x ∈ ΓN .

    (7)

    Now there is a system of two partial di�erential equations with two unknowns to be solved, dis-placement ~u and pressure p. For ν close to 0.5, the factor 1λ tends to zero and the resulting problem

    12

  • has the shape of a saddle point problem with penalty term 1λ .

    Saddle point problems are problems that lead to a system of linear equations in block form withthe (n+m) x (n+m) - matrix M consisting of n x n - matrix A, n x m - matrix BT and m x m -matrix 0:

    M~x = ~f ⇔(A BT

    B 0

    )(~up

    )=

    (~fg

    ). (8)

    One popular example of a saddle point problem are the discrete incompressible Stokes equations:

    −η∆~u+∇p = ~fdiv ~u = 0.

    (9)

    Here, block A is formed by the Laplace operator ∆ scaled with viscosity η and block BT by theNabla operator ∇.

    There exist various methods for the numerical solution of saddle point problems. In the nextsection, there will be a presentation of one of these methods that we choose for our solver.

    13

  • 3 Derivation of the algorithm for the mixed problem

    As mentioned previously, there already exists a working solver for the solution of the discreteincompressible Stokes equations (9) developed by the chair for systemsimulation at University ofErlangen-Nürnberg. This solver represents the basis for the numerical solution of problems in linearelasticity. To get a better understanding of the solver of the mixed problem (7), a few details aboutthe basic algorithm for the solution of the Stokes system are necessary to be given in advance.Afterwards, the modi�ed algorithm for the mixed problem will be explained.

    3.1 Pressure Correction Scheme for the Stokes system

    This subsection mainly refers to paper [3]. In the following, the Schur complement method aswell as the Pressure Correction Scheme are discussed. With the aid of these approaches, thediscrete incompressible Stokes equations (9) can be solved numerically. To get started, we havea look once again at the structure of a saddle point problem (8). It reveals a system of linearequations with a system matrix M that can be subdivided in four submatrices A , B, BT and 0.Moreover, there are two unknowns ~u and p and the right hand side is given by functions ~f and gthat is zero for the Stokes system. The linear system of equations can be written as follows:

    I :A~u+BT p = ~f

    II :B~u = 0.(10)

    By multiplying equation I of (10) with A−1 and B we get:

    I′

    : B~u+BA−1BT p = BA−1 ~f.

    Inserting equation II of (10) in I′gives:

    0 +BA−1BT p = BA−1 ~f .

    Now the Schur complement is derived:

    BA−1BT p = BA−1 ~f. (11)

    Thus, if matrix A is invertible, one can solve the Schur complement for p, and by using equationA~u+BT p = ~f one can solve for ~u. The Schur complement system is usually solved by the conjugategradient method [8]. Based on these prerequisites, we get the algorithm that is named PressureCorrection Scheme [3]. This algorithm 1 is illustrated in �gure 4.The idea behind algorithm 1 is to compute the pressure p by a CG-loop (step 4 - 16) and after eachCG-loop, the new solution for p is taken for the calculation of velocity ~u in step 2. This procedereis repeated noit times. In order to compute the initial velocity ~u0, an initial guess p0 is chosen.Note, in step 2 and 11 a Multigrid [9] method is used to solve for ~u and v. This is generally done bya V-cycle. Step 11 computes vi = A

    −1BT si. By multiplying it with B, we get the product of thesystem matrix of the Schur complement equation (11) and s, namely BA−1BT si, that is neededfor the computation of α in step 12 of algorithm 1.

    In order to prevent an instable and oscillatory behaviour of the pressure �eld, the spaces for pressureand velocity di�er. This means, the pressure is computed on a coarser grid than the velocity inalgorithm 1. By introducing a stabilization term, di�erent spaces for pressure and velocity can beavoided.

    3.2 Pressure Correction Scheme for the mixed problem in linear elastic-

    ity

    As stated above, the mixed problem (7), that arises in structural mechanics, is very similar to thestructure of the Stokes system. According to [2], it is allowed to use "the same elements as forthe Stokes problem" to solve the mixed formulation (7) of the Lamé equation. Because of this, it

    14

  • 1. For oit = 1 ... noit do2. Compute velocity ~u: A~u = ~f −BT p3. Compute the residual: r = B~u4. For i = 1 ... npc do5. if i = 1 then6. s1 = r07. else8. γ = (ri−1,ri−1)(ri−2,ri−2)9. si = ri−1 + γsi−110. End if11. Solve: Avi = B

    T si12. α = (ri−1,ri−1)(si,Bvi)13. pi = pi−1 + αsi14. ~ui = ~ui−1 − αvi15. ri = ri−1 − αBvi16. End For17. End For

    Algorithm 1: Pressure Correction Scheme

    Figure 4: Pressure Correction Scheme for the Stokes system [3].

    is possible to build on the re�ections of the previous subsection 3.1. The mixed problem of linearelasticity (7) reads in block matrix notation as follows:(

    A BT

    B C

    )(~up

    )=

    (~f0

    ). (12)

    Block BT and B are expressed by the same di�erential operators as for the Stokes system. BlockA is now built up by a di�erential operator that describes the divergence of the strain tensor � asa function of ~u and block C is newly added to the original saddle point problem of (8). Now, weget the following linear system of equations:

    I :A~u+BT p = ~f

    II :B~u+Cp = 0 ⇔ B~u = −Cp.(13)

    Multiplying equation I of (13) with A−1 and B delivers:

    I′

    : B~u+BA−1BT p = BA−1 ~f.

    Inserting equation II of (13) in I′we get:

    −Cp+BA−1BT p = BA−1 ~f.

    After all, the Schur complement for the mixed problem is derived:

    (BA−1BT −C)p = BA−1 ~f. (14)

    As for the Stokes system, one can solve the Schur complement for p, and by using equationA~u + BT p = ~f one can solve for ~u. The only di�erence to the Schur complement of the Stokessystem is the new block C within the system matrix. Analogously to the Stokes system, the Schurcomplement of the mixed problem is solved by the conjugate gradient method. The block C nowhas to be integrated into the Pressure Correction Scheme and we end up with the following newalgorithm for the mixed problem in linear elasticity:

    15

  • 1. For oit = 1 ... noit do2. Compute deformation ~u: A~u = ~f −BT p3. Compute the residual: r = B~u+Cp4. For i = 1 ... npc do5. if i = 1 then6. s1 = M

    −1r07. else8. z = M−1r9. γ = (ri−1,zi−1)(ri−2,ri−2)10. si = zi−1 + γsi−111. End if12. Solve: Avi = B

    T si13. α = (ri−1,ri−1)(si,Bvi−Cs)14. pi = pi−1 + αsi15. ~ui = ~ui−1 − αvi16. ri = ri−1 − α(Bvi −Cs)17. End For18. End For

    Algorithm 2: Preconditioned Pressure Correction Scheme with block C

    Figure 5: Preconditioned Pressure Correction Scheme for the mixed problem.

    For block C, we choose a lumped mass matrix that is weighted with the inverse viscosity as apreconditioner. One more di�culty is the integration of the two Lamé material parameters µ andλ. For a correct implementation, the right hand side in step 2 and 12 in �gure 5 has to be scaledby − 12µ and furthermore, the mass matrix has to be scaled by

    1λ in order to represent block C,

    eventually. We also use the inverted mass matrix M−1 as a preconditioner in algorithm 2.

    Due to the stabilizing e�ect of the new block C, it is no longer necessary to use di�erent spaces forthe computation of ~u and p. Both unknowns, pressure p and displacement ~u, are now computed onthe same grid. This simpli�es the algorithm because there is no need to exchange required variablesbetween coarser and �ner grids.

    The analysis of the functionality of algorithm 2 in �gure 5 is part of the next chapter 4.

    16

  • xy

    z

    11

    1

    Figure 6: Centered unit cube

    4 Numerical analysis

    In this section, the solver for problems in linear elasticity is tested in terms of correctness and con-vergence. Therefore, this chapter deals with examples studying if the solver delivers proper resultsin connection with Dirichlet and Neumann boundary conditions. Besides proving the accuracy,there will be an analysis of the convergence. The development of the error for the displacement ~uwill be of special interest here.Di�erent con�gurations are presented in this chapter. Subsections 4.1 and 4.2 deal with Dirichletboundary conditions. At the beginning, two basic con�gurations in Computational Mechanics areconsidered. The so-called rigid body mode represents the movement of a solid body. In thiscase, the solution is a constant function and the strain within the whole body is constantly zero.When dealing with linear displacement functions, there is a non-zero constant strain within thebody. This is called constant strain mode. Since constant and linear functions are approximatedcorrectly right up to the round-o� error by the Finite Element Method associated with linear basisfunctions, the solver has to deliver exact solutions for this kind of setups. Further examples containmore complex functions for the displacement to study the convergence rate. Finally, there will bea check for Neumann boundary conditions in subsection 4.3.

    4.1 Constant and linear functions with Dirichlet boundary conditions

    As mesh, the unit cube, centered at the origin of the coordinate system, with a di�erent number ofunknowns according to the maximal number of levels of grid re�nement is taken in this section 4.1(�gure 6). The cube is made of rubber that has the following material constants according to [11]:

    µ = 8.2e06 Pa λ = 4.1e09 Pa

    ν = 0.4999 E = 2.5e07 Pa.

    Because every point of the surface underlies Dirichlet boundary conditions, the system of partialdi�erential equations to be solved simpli�es to:

    −2µ div �+∇p = ~f, x ∈ Ω

    −div ~u− 1λp = 0, x ∈ Ω

    ~u = ~g, x ∈ δΩ.

    4.1.1 Description of the con�gurations

    The movement of a solid body only in x-direction, depicted by �gure 7, can be represented by thefollowing solution:

    ~u1 =

    100

    .For the pressure function we get:

    p1 = −λ div ~u1 = 0.

    17

  • xyz

    1

    11

    1

    11

    1

    Figure 7: Rigid body mode of an unit cube that is translated only in x-direction.

    According to the strain-displacement-relationship (1), the strain tensor can be calculated:

    �1 =12

    (∇~u1 +∇~uT1

    )=

    �x�y�zγxyγyzγxz

    =

    000000

    .Summarized that gives the following right hand side:

    ~f1 = −2µ div �1 +∇p1 =

    000

    .For the constant strain mode, there is the following special solution with linear displacement func-tions considered:

    ~u2 =

    2.0327x−1.0161y−1.0161z

    10−6.For the pressure function we get:

    p2 = −λ div ~u2 = −4.1e09(2.0327− 1.0161− 1.0161)10−6 Pa.

    According to the strain-displacement-relationship (1), the strain tensor can be calculated:

    �2 =12 (∇~u2 +∇~u

    T2 ) =

    �x�y�zγxyγyzγxz

    =

    2.0327−1.0161−1.0161

    000

    10−6.

    These constant strains in x-, y- and z-direction will lead to the deformed state of the cube il-lustrated in �gure 8. The cube is stretched in x-direction, but compressed in y- and z-direction.This behaviour was mentioned above in section 2.1. The compression depends on Poisson's ratio ν.

    Summarized that gives the following right hand side:

    18

  • Figure 8: Distorted cube by an one-dimensional force in x-direction.

    Figure 9: Cube under force F

    ~f2 = −2µ div �2 +∇p2 =

    000

    .This state of deformation corresponds to a solid body that is loaded by an one-dimensional force inx-direction. Figure 9 illustrates this situation. A force with an absolute value F pulls on the rightand left side of the unit cube in positive and negative direction of x. Thus, the prescribed solution~u2 is of practical use and relates to real-life applications like tensile tests.

    4.1.2 Development of the error

    As it was stated in the introduction to this section 4, the previous two examples do not qualify fora deeper convergence analysis because these are relatively trivial problems. HHG uses linear basisfunctions that enable to calculate the exact solution right up to the round-o� error of the machinefor this problems.Before starting with the analysis of the development of the error, here is a short description of thedi�erent kinds of errors that occur in numerical computations. There are three speci�c types oferror distinguished:

    1. Algebraic error due to a �nite number of iterations of an iterative solver.

    2. Discretization error due to the fact that a continuous function is represented in the com-puter by a �nite number of evaluations, for example, on a grid.

    3. Round-o� error due to a �nite machine precision.

    1. can be reduced by an increasing number of iterations and eliminated after a certain number ofiterations. For example, the CG method has an algebraic error of zero after n iterations, if thereare n unknowns.2. can be reduced by using �ner resolutions of the grid, but with an increased computational cost.3. can not be reduced, because every machine is able to represent only a �nite number of digits.

    19

  • 1.00E-161.00E-151.00E-141.00E-131.00E-121.00E-111.00E-101.00E-091.00E-081.00E-07

    4 64 124

    Error

    Iterations

    855

    7471

    62559

    # unknowns

    Figure 10: Development of the Euclidean norm of the error for ~u1. The number of iterations refersto the number of calculations of ~u in step 2 of �gure 5.

    1E-22

    1E-20

    1E-18

    1E-16

    1E-14

    1E-12

    1E-10

    1E-08

    4 64 124 184 244

    Error

    Iterations

    855

    7471

    62559

    # unknowns

    Figure 11: Development of the scaled Euclidean norm of the error for ~u2. The number of iterationsrefers to the number of calculations of ~u in step 2 of �gure 5.

    Consequently, an exact solution will be never achieved.

    Figures 10 and 11 illustrate the development of the Euclidean norm of the error for ~u1 and ~u2for di�erent levels of mesh resolution with regard to the rigid body mode and the constant strainmode. It can be seen that after a particular number of iterations the Euclidean norm of the errorconverges towards an inferior bound of around 10−16 for ~u1 (�gure 10) and 10

    −22 for ~u2 (�gure 11).

    The measured errors correlate to the machine precision �. Based on the norm IEEE 754, for doubleprecision computations it holds � = 1.110e− 16. Notice, the exact solution for the constant strainproblem is in the area of 10−6, so this yields an inferior bound for the error according to machineprecision of approximate 10−22. That means, reaching this inferior bounds implies a discretizationerror and algebraic error of zero what is the case for the present examples. Hence, �gures 10 and11 show how the algebraic error decreases for various �ne meshes until the inferior bound is reached.

    Figure 12 shows the displacement distribution of ~u2 in each dimension. All pictures display thecorrect results that could be expected due to �gure 8. The cube is stretched in the direction of x,whereas it is compressed in the direction of y and z. This becomes comprehensible, since in the leftpicture of �gure 12 for positve x-values displacements have a positive sign and for negative x-valuesdisplacements have a negative sign. The middle and right picture of �gure 12 also show the growthof displacement towards the faces of the cube, but with a reversed sign.Furthermore, due to �gure 12 the gain of displacement is a linear process. There is a smooth tran-sition between the particular values. That coincides with the given analytic solution ~u2 that only

    20

  • Figure 12: Displacement ~u2 in x-, y- and z-direction along the middle chords of the unit cubevisualized by slices in paraview.

    consists of linear component functions.

    Summarized, the solver works �ne for constant and linear solutions associated with Dirichlet bound-aries.

    4.2 Cubic and trigonometric functions with Dirichlet boundary condi-

    tions

    4.2.1 General convergence of Finite Element Method

    In the previous section, it could be observed that even with a few elements the exact solution couldbe computed. It is said, that "in some cases the exact solution is indeed obtained with a �nitenumber of subdivisions (or even with one element only) if the polynomial expansion is used in thatelement and if this can �t exactly the correct solution" [13, p. 32]. Since the solution ~u1 and ~u2 areof the form of a constant and linear polynomial and the shape functions include all the polynomialsof �rst order (linear functions), the approximation will yield the exact answer, no matter how manyelements are used.

    To determine the general convergence order of Finite Elements, it proves bene�cial that the ex-act solution ~u can always be approximated in the neighbourhood of certain points i as a Taylorpolynomial for example in 2D:

    ~u = ~ui +

    (∂~u

    ∂x

    )i

    (x− xi) +(∂~u

    ∂y

    )i

    (y − yi) + ... (15)

    An upper bound for the error of Taylor polynomials of order p is according to the representationof Lagrange:

    Rn (x) =f (p+1) (ξ)

    (p+ 1)!(x− a)p+1 , ξ ∈ [a, x] . (16)

    Hence, the error is of order p+1. As it is stated in [13, p. 32], "if within an element of 'size' h apolynomial expansion of degree p is employed, this can �t locally the Taylor expansion up to thatdegree and, as x− xi and y − yi are of the order of magnitude h, the error in u will be of the orderO(hp+1

    )." So, when there are linear polynomials of degree p=1 used as basis functions, as it is the

    case in HHG, we should expect a convergence rate of order O(h2), i.e., the error in displacement

    being reduced to 14 when halving the mesh size h. Thus, if there are two approximate solutions uh

    21

  • and uh/2 obtained with meshes of size h and h/2, it holds:

    uerrhuerrh/2

    =O(h2)

    O ((h/2)2)= 4. (17)

    4.2.2 Description of the con�gurations

    After covering some elementary theory of the general convergence rate of Finite Elements andstudying solutions with constant and linear displacement functions in chapter 4.1, more complexdisplacement functions that cannot be solved exactly by linear elements are considered now. Asstated previously, it is not possible to �t cubic or even trigonometric functions by linear basisfunctions as they are used in HHG. So, they are suitable con�gurations for the study of the dis-cretization error. There will be three solutions analysed, one with cubic and two with linear orquadratic trigonometric functions. By using the known equations for the pressure and the righthand side as well as exploiting the addition theorem sin2(x)+cos2(x) = 1⇒ cos2(x) = 1−sin2(x),we get the following setups:

    ~u3 =

    x300

    ~u4 =sin(x)cos(y)

    0

    ~u5 =sin2x0

    0

    p3 = −3λx2 p4 = λ(−cos(x) + sin(y)) p5 = −2λsin(x)cos(x)

    ~f3 = −(2µ+ λ)

    6x00

    ~f4 = (2µ+ λ)sin(x)cos(y)

    0

    ~f5 = (2µ+ λ)4sin2(x)− 20

    0

    As in section 4.1, the unit cube consisting of rubber is used as mesh. In the following, there will bean analysis of the development of the discretization error of ~u3, ~u4 and ~u5.

    4.2.3 Development of the discretization error

    Table 1 contains measurements of the Euclidean norm of the error for di�erent mesh sizes for ~u3,~u4 and ~u5. It shows a steady descent of the error when using �ner resolutions of the mesh. In HHGregular re�nement is realized by inserting a new vertex at the midpoint of each edge according to�gure 3 in [1, p. 284]. Hence, the mesh size h is halved between two levels of grid decomposition.So, the error in displacement should be reduced to 14 with regard to (17). But as it can be seen intable 2, the factor by which the error decreases between two consecutive mesh resolutions is muchgreater than four. On average he lays in the area of six. Thus, the convergence rate is larger thanit could be expected. If we take six as convergence rate, we get the following order p:(12

    )p= 16 ⇒ p ≈ 2.6.

    # Levels # Unknowns Err Euc ~u3 Err Euc ~u4 Err Euc ~u53 343 5.3e-02 1.8e-02 1.7e-024 3375 9.0e-03 3.0e-03 3.0e-035 29791 1.5e-03 4.8e-04 5.3e-046 250047 2.5e-04 7.8e-05 9.2e-05

    Table 1: Euclidean norm of the error of ~u3, ~u4 and ~u5 for di�erent mesh sizes.

    # Levels Conv rate ~u3 Conv rate ~u4 Conv rate ~u53 - 4 5.9 6.0 5.674 - 5 6.0 6.25 5.665 - 6 6.0 6.15 5.76

    Table 2: Convergence rate of the error of ~u3, ~u4 and ~u5.

    22

  • 00.010.020.030.040.050.060.07

    00.20.40.60.81

    1.2

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    x-coordinates

    Error u3u3h

    Figure 13: Comparison of computed valuesand exact solution along the coordinates [x,0.5, 0.5] of the cube for ~u3 with a mesh size of18 .

    00.010.020.030.040.050.06

    0

    0.05

    0.1

    0.15

    0.2

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    y-coordinates

    Error u3u3h

    Figure 14: Comparison of computed valuesand exact solution along the coordinates [0.5,y, 0.5] and [0.5, 0.5, z] of the cube for ~u3 witha mesh size of 18 .

    .

    The analysis why the order of convergence is so high cannot be �nally done here. But in FEMcomputations there is a phenomenon called superconvergence [13]. Superconvergence in context ofstructural mechanics describes the fact that the order of the convergence for displacement ~u is higherat the nodes of the elements, no matter of what order the elements are. This is well explained in�gure 14.3(a), [13, p. 370-371], where an quadratic solution is approximated by linear polynomials.There, at the nodes of the elements optimal approximations can be found, whereas the error is muchgreater within each element. For the calculation of stresses or strains, the situation is reversed, i.e.,the best approximations are obtained within the elements, but not at the nodes. Thus, this couldbe the reason why the convergence order is higher than O

    (h2)for displacement ~u, because of the

    exploitation of so-called superconvergent points.

    To make sure, the solver does not converge against a wrong solution, informations from the par-aview output �les are consulted again. There will be a restriction to setups ~u3 and ~u4. For thispurpose, special points along the x-, y- and z-axis are considered. All points are located at themiddle chords of the cube crossing the center point with the coordinates [0.5, 0.5, 0.5]. This seemsto be a good choice, since these points are furthest from all boundaries and the lateral contractionis smallest in this area.

    Figures 13 - 27 depict a comparison between the discrete values computed by the solver and the an-alytical solution of ~u3 and ~u4 for di�erent mesh sizes. In addition, the error in these discrete pointsis illustrated. The results, shown by �gures 13 - 27, prove the accuracy of the solver. They displaya continual descent of the error for both solutions, ~u3 and ~u4, for �ner resolutions of the mesh. Italso becomes clear that for the approximation of non-zero functions �ve levels of mesh re�nementwith more than 8000 nodes are su�cient. The computed values overlap the exact solution for thislevel of mesh re�nement very well. According to [13, p. 127-128] "an adequate stress analysis of asquare, two-dimensional region requires a mesh of some 20 x 20 = 400 nodes" and "an equivalentthree-dimensional region is that of a cube with 20 x 20 x 20 = 8000 nodes". Thus, this statementis also con�rmed by the diagrams.

    4.3 Neumann boundary conditions

    In this section Neumann boundary conditions are considered. For this, two con�gurations will beanalysed. At �rst, there will be an example that proves that the solver works correctly for Neumannboundary conditions, too. The second setup is a more real-life example with practical use.

    4.3.1 Linear function with Neumann boundary conditions

    For the study, if the solver also works for Neumann boundary conditions, the solution from section4.1 is regarded:

    23

  • 0

    0.002

    0.004

    0.006

    0.008

    00.20.40.60.81

    1.2

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    x-coordinates

    Error u3u3h

    Figure 15: Comparison of computed valuesand exact solution along the coordinates [x,0.5, 0.5] of the cube for ~u3 with a mesh size of116 .

    0

    0.001

    0.002

    0.003

    0.004

    0.12

    0.122

    0.124

    0.126

    0.128

    0.13

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    y-coordinates

    Error u3u3h

    Figure 16: Comparison of computed valuesand exact solution along the coordinates [0.5,y, 0.5] and [0.5, 0.5, z] of the cube for ~u3 witha mesh size of 116 .

    .

    0

    0.0005

    0.001

    0.0015

    0.002

    0.0025

    00.20.40.60.81

    1.2

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    x-coordinates

    Error u3u3h

    Figure 17: Comparison of computed valuesand exact solution along the coordinates [x,0.5, 0.5] of the cube for ~u3 with a mesh size of132 .

    00.00010.00020.00030.00040.00050.0006

    0.1244

    0.1246

    0.1248

    0.125

    0.1252

    0.1254

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    y-coordinates

    Error u3u3h

    Figure 18: Comparison of computed valuesand exact solution along the coordinates [0.5,y, 0.5] and [0.5, 0.5, z] of the cube for ~u3 witha mesh size of 132 .

    .

    00.050.10.150.20.250.3

    00.20.40.60.81

    1.21.4

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    x-coordinates

    Error u4u4h

    Figure 19: Comparison of computed valuesand exact solution along the coordinates [x,0.5, 0.5] of the cube for ~u4 with a mesh size of18 .

    0

    0.005

    0.01

    0.015

    0.02

    0.025

    00.20.40.60.81

    1.2

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    y-coordinates

    Error u4u4h

    Figure 20: Comparison of computed valuesand exact solution along the coordinates [0.5,y, 0.5] of the cube for ~u4 with a mesh size of18 .

    .

    24

  • 0

    0.005

    0.01

    0.015

    0.02

    0.025

    0.9750.980.9850.990.995

    11.005

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    z-coordinates

    Error u4u4h

    Figure 21: Comparison of computed valuesand exact solution along the coordinates [0.5,0.5, z] of the cube for ~u4 with a mesh size of18 .

    .

    00.00050.0010.00150.0020.00250.003

    00.20.40.60.81

    1.21.4

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    x-coordinates

    Error u4u4h

    Figure 22: Comparison of computed valuesand exact solution along the coordinates [x,0.5, 0.5] of the cube for ~u4 with a mesh size of116 .

    00.00050.0010.00150.0020.00250.003

    00.20.40.60.81

    1.2

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    y-coordinates

    Error u4u4h

    Figure 23: Comparison of computed valuesand exact solution along the coordinates [0.5,y, 0.5] of the cube for ~u4 with a mesh size of116 .

    .

    0

    0.0005

    0.001

    0.0015

    0.002

    0.0025

    0.99750.998

    0.99850.9990.9995

    11.0005

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    z-coordinates

    Error u4u4h

    Figure 24: Comparison of computed valuesand exact solution along the coordinates [0.5,0.5, z] of the cube for ~u4 with a mesh size of116 .

    .

    25

  • 00.000050.00010.000150.00020.000250.00030.00035

    00.20.40.60.81

    1.21.4

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    x-coordinates

    Error u4u4h

    Figure 25: Comparison of computed valuesand exact solution along the coordinates [x,0.5, 0.5] of the cube for ~u4 with a mesh size of132 .

    00.00010.00020.00030.00040.0005

    00.20.40.60.81

    1.2

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    y-coordinates

    Error u4u4h

    Figure 26: Comparison of computed valuesand exact solution along the coordinates [0.5,y, 0.5] of the cube for ~u4 with a mesh size of132 .

    .

    0

    0.00005

    0.0001

    0.00015

    0.0002

    0.9998

    0.9999

    1

    1.0001

    1.0002

    0 0.125 0.25 0.375 0.5 0.625 0.75 0.875 1

    Error

    Displacemen

    t

    z-coordinates

    Error u4u4h

    Figure 27: Comparison of computed valuesand exact solution along the coordinates [0.5,0.5, z] of the cube for ~u4 with a mesh size of132 .

    .

    ~u6 =

    2.0327x−1.0161y−1.0161z

    10−6.According to the strain-displacement-relationship (1), the strain tensor can be calculated:

    �6 =12

    (∇~u6 +∇~uT6

    )=

    �x�y�zγxyγyzγxz

    =

    2.0327−1.0161−1.0161

    000

    10−6.

    As mesh, the centered unit cube that is now formed by 24 tetrahedra and that consists of steel isused. The material constants of steel referring to [11] are listed below:

    µ = 8.14e10 Pa λ = 1.1e11 Pa

    ν = 0.29 E = 2.1e11 Pa.

    According to this material constants and Hooke's law (2) the Cauchy stress tensor can be calculatedfor this special state of deformation:σxσyσzτxyτyzτxz

    =E

    (1+ν)(1−2ν)

    1− ν ν ν 0 0 0ν 1− ν ν 0 0 0ν ν 1− ν 0 0 00 0 0 1− 2ν 0 00 0 0 0 1− 2ν 00 0 0 0 0 1− 2ν

    �x�y�zγxyγyzγxz

    =

    3.3096−1.6536−1.6536

    000

    105Pa.

    This state of stress represents the state of deformation illustrated in �gure 8.

    On the left face of the cube with the x-coordinate -0.5 there are Dirichlet boundary conditions,

    26

  • x

    z

    y

    t3

    t2

    t1t5

    t4

    Figure 28: Surface stresses on the unit cube. Dirichlet boundary is on the back side.

    the rest of the surface of the cube underlies inhomogeneous Neumann boundary conditions. Refer-ring to this, the system of partial di�erential equations to be solved is as follows:

    −2µ div �+∇p = ~f, x ∈ Ω

    −div ~u− 1λp = 0, x ∈ Ω

    ~u =

    2.0327x−1.0161y−1.0161z

    10−6, x ∈ ΓDσ~n = ~t, x ∈ ΓNi , i = 1...5.

    The surface stresses that build the Neumann boundary conditions are illustrated in �gure 28. Withthe help of the Cauchy stress tensor of this particular example and the normals of the unit cube weget the following stress vectors ~ti on every face at the Neumann boundaries:

    ~t1 = σ

    100

    =3.30960

    0

    105Pa ~t2 = σ01

    0

    = 0−1.6536

    0

    105Pa~t3 = σ

    001

    = 00−1.6536

    105Pa ~t4 = σ 0−1

    0

    = 01.6536

    0

    105Pa~t5 = σ

    00−1

    = 00

    1.6536

    105Pa.The own weight of the cube is neglected in this con�guration to simplify the model. As a result,there are no volume forces and the right hand side of the partial di�erential equation and the re-sulting linear equation system is constructed only by the surface forces.

    In HHG, grid points with Neumann boundary conditions have to be tagged with a 2 in the mesh�le. In this particular case, these are all points on the boundary surfaces with the coordinates x> -0.5. The left side of the cube at x = -0.5 is constrained by a bearing for example, these pointsare marked with a 1 in the mesh �le as Dirichlet boundary. The right hand side of the resultinglinear equation system is built up by the function setupLoad in HHG. Since this function uniformly

    27

  • distributes the given forces in the parameter �le on every grid point of the volume of the cubeand volume forces are neglected here, the function setupLoad is commented out for this example.Instead, the force on every grid point at the Neumann boundary is manually calculated for everylevel of mesh re�nement by an if-statement in the parameter �le. To make sure the forces areuniformly distributed on the points and they have the right amount, the values for the right handside are exported from the paraview �le into a suitable text �le. By importing this text �le into acalculation program like MS Excel the entire force is checked.

    The forces acting on the faces of the cube are described by the stress vectors ~ti. Since thesevectors are given in Pa = N/m2 and the length of the edges of the unit cube are assumed to be1m, the components of ~ti just have to be distributed regularly on the grid points of the respectivefaces. For the current mesh, the faces consist of the following number of grid points:

    # Levels # Grid points3 814 2895 1089

    Table 3: Number of grid points on the faces of the unit cube.

    If we take the face at x = 0.5 with normal ~n =(1, 0, 0

    )Tand the corresponding stress vector

    ~t1 =(3.3096, 0, 0

    )T105Pa, the force acting on the surface grid points only in x-direction is derived

    by the division of 3.3096e5# Grid points per LevelN . According to table 3 for 3 levels we get3.3096e5

    81 N , for 4

    levels 3.3096e5289 N and so on. The same has to be done for the other faces with Neumann boundaryconditions.

    After verifying the setup is correctly built up by HHG, calculations with three di�erent levelsof mesh re�nement have been performed. Figures 29 - 34 depict the results. Like in the sectionbefore, only the values for the absolute displacement at the points at the middle chords of the cubecrossing the center point with the coordinates [0,0,0] are analysed. For this, the development alongthe x-, y- and z-axis is considered. Because the values along the z-axis are the same as on the y-axis,there are no particular diagrams for the z-axis.Figures 29 - 34 contain statements about the approximated (uh) and the exact solution (u) as wellas the absolute error at the special points. The illustrations vividly show that the approximatedsolution approaches the right solution and the error decreases steadily for �ner mesh resolutions.Along the x-axis the calculated values already show a linear progression of the displacement on thesmallest level of mesh re�nement. On this level, the approximations along the y- and z-axis form agraph of a kind of quadratic function. But the results get better with a �ner mesh size and evenwith �ve levels of grid re�nement (mesh size 132 ) we almost get the exact solution for the givenproblem at the chosen grid points. Another interesting aspects are the linear growth of the erroralong the x-axis and the fact that the error is relatively small for the x-axis and greatest for the y-and z-axis around the center point.

    For the sake of completeness, the normal stresses are calculated for this example. The studyof the stresses within solid bodies is a fundamental task in structural analysis. These calculationsgive information about whether some special material will fail or not under particular loads. Forthat reason it is possible to compute so-called equivalent stresses out of the Cauchy stress tensor.These equivalent stresses have the advantage that they are only �ctional uniaxial stresses thatdepict the same mechanical load of material like a real polyaxial state of stress. Thus, the three-dimensional state of stress within a structural element consisting of normal and shear stresses inevery three dimensions of space can be compared directly with the material characteristic values ofa tensile or compression test, for example. Therefore, the computed equivalent stress will be com-pared with the breaking stress from the tensile or compression test. There are di�erent possibilitiesfor calculating the equivalent stress. The most important ones are the hypothesis of von Mises,Tresca and Rankine [5]. I will come back to this in the next section.

    There is a good way to compute the stresses in the tool paraview. With the help of the python calcu-

    28

  • 00.00000010.00000020.00000030.00000040.0000005

    00.00000020.00000040.00000060.00000080.0000010.0000012

    Error

    Displacemen

    t

    x-coordinates

    Error u6u6h

    Figure 29: Comparison of computed valuesand exact solution along the coordinates [x,0, 0] of the cube for ~u6 with a mesh size of

    18 .

    0

    5E-08

    0.0000001

    1.5E-07

    0.0000002

    00.00000010.00000020.00000030.00000040.00000050.0000006

    Error

    Displacemen

    t

    y-coordinates

    Error u6u6h

    Figure 30: Comparison of computed valuesand exact solution along the coordinates [0,y, 0] and [0, 0, z] of the cube for ~u6 with amesh size of 18 .

    .

    05E-080.00000011.5E-070.00000022.5E-07

    00.00000020.00000040.00000060.00000080.000001

    0.0000012

    -0.5

    -0.40625

    -0.312

    5-0.21875

    -0.125

    -0.03125

    0.0625

    0.15625

    0.25

    0.34375

    0.4375

    Error

    Displacemen

    t

    x-coordinates

    Error u6u6h

    Figure 31: Comparison of computed valuesand exact solution along the coordinates [x,0, 0] of the cube for ~u6 with a mesh size of

    116 .

    02E-084E-086E-088E-080.0000001

    00.00000010.00000020.00000030.00000040.00000050.0000006

    -0.5

    -0.40625

    -0.3125

    -0.21875

    -0.125

    -0.03125

    0.06

    25

    0.15625

    0.25

    0.34375

    0.4375

    Error

    Displacemen

    t

    y-coordinates

    Error u6u6h

    Figure 32: Comparison of computed valuesand exact solution along the coordinates [0,y, 0] and [0, 0, z] of the cube for ~u6 with amesh size of 116 .

    .

    02E-084E-086E-088E-080.0000001

    00.00000020.00000040.00000060.00000080.0000010.0000012

    -0.5

    -0.42188

    -0.34375

    -0.265

    63-0.187

    5-0.109

    38-0.03125

    0.0468

    750.125

    0.20

    313

    0.28

    125

    0.35

    938

    0.43

    75

    Error

    Displacemen

    t

    x-coordinates

    Error u6u6h

    Figure 33: Comparison of computed valuesand exact solution along the coordinates [x,0, 0] of the cube for ~u6 with a mesh size of

    132 .

    01E-082E-083E-084E-085E-08

    00.00000010.00000020.00000030.00000040.00000050.0000006

    -0.5

    -0.4375

    -0.375

    -0.3125

    -0.25

    -0.1875

    -0.125

    -0.0625 0

    0.06

    250.125

    0.18

    750.25

    0.31

    250.37

    50.43

    75 0.5

    Error

    Displacemen

    t

    y-coordinates

    Error u6u6h

    Figure 34: Comparison of computed valuesand exact solution along the coordinates [0,y, 0] and [0, 0, z] of the cube for ~u6 with amesh size of 132 .

    29

  • Figure 35: Normal stresses in x-, y- and z-direction for ~u6 along the axis in a slice through thecube centered at coordinates [0,0,0] with a mesh size of 132 .

    p = 130.000 N / 1.41 m2

    Figure 36: Rumble strip load 1: Con-�guration

    Figure 37: Rumble strip load 1: Distri-bution of von Mises stresses in Pa withmesh size 132 .

    lator and the strain function it is possible to compute the strain tensor out of a 3D vector of displace-ments. Then the equivalent stresses can be calculated due to Hooke's law (2). Figure 35 visualizesthe computed normal stresses in the three dimensions of space for ~u6. The calculated stresses ap-

    proximately coincide with the given analytic stress tensor(3.3096,−1.6536,−1.6536, 0, 0, 0

    )T105Pa,

    qualitative as well as quantitative. The pictures show an approximately constant distribution ofnormal stresses. Only at the edges and corners there are some deviations. The reason for thiscould be singularities. In Finite Element Analysis there are very high stresses at sharp corners oredges [10]. In reality, there are no sharp corners or edges found. For practical FE simulations thegeometry is changed or adaptive mesh re�nement is used.

    As a conclusion, it can be stated that the solver also works �ne for simple problems with Neu-mann boundary conditions, at least for linear-elastic material like steel. There are some problemswith materials that show linear-elastic behaviour only for very small displacements. Rubber is oneexample for these materials. However, an explanation for this will be given in chapter 5.2. In thenext section a more complex geometry with practical use will be in the focus.

    4.3.2 Showcase: rumble strip

    This section is devoted to a more real-life example. As mesh, the geometry of a so-called rumblestrip is used. Rumble strips are thought to slow down the road tra�c. The simpli�ed model of arumble strip in this example consists of steel. It is built up by three whole cubes in the middle andsix half cubes on the sides. Di�erent forces will be applied to this geometry and after that therewill be a short analysis of the generated stresses. With the help of the hypothesis of von Mises,equivalent stresses are computed out of the results of the FE computations. The rumble strip isconstrained at the bottom by zero displacement Dirichlet boundary conditions and there are as asimpli�cation no volume forces acting on the body.

    At �rst, a vertical load of 130.000 N is applied on the middle right side of the rumble strip. Thesecond load will be a force perpendicular to the skewed right side of the rumble strip with a x-and z-component. Finally, a vertical load at the center part of the rumble strip will be applied.These con�gurations are graphically illustrated in �gures 36, 38 and 40. Figures 37, 39 and 41show the von Mises stresses in Pascal or Nm2 derived by a mesh consisting of 199028 unknowns

    30

  • p = 130.000 N / 1.41 m2

    Figure 38: Rumble strip load 2: Con-�guration

    Figure 39: Rumble strip load 2: Distri-bution of von Mises stresses in Pa withmesh size 132 .

    p = 500.000 N / m2

    Figure 40: Rumble strip load 3: Con-�guration

    Figure 41: Rumble strip load 3: Distri-bution of von Mises stresses in Pa withmesh size 132 .

    using �ve levels of grid re�nement for the given geometry. After calculating the components of theCauchy stress tensor in paraview it is possible to compute the equivalent stress of von Mises. Thehypothesis of von Mises is most often used for tough materials like steel as it is used in this example.The equivalent stress of von Mises in a plane state of stress is de�ned as follows [5]:

    σv =2

    √σ2x + σ

    2y − σxσy + 3τ2xy. (18)

    Hence, for the state of stress in 3-D the equivalent stress of von Mises is:

    σv =2

    √σ2x + σ

    2y + σ

    2z − σxσy − σxσz − σyσz + 3(τ2xy + τ2xz + τ2yz). (19)

    The following table 4 contains the maximum von Mises stresses obtained for the three di�erentcon�gurations for di�erent number of levels of grid re�nement.

    Maximal von Mises stress 3 levels 4 levels 5 levelsσv,1 38200 Pa 45100 Pa 48715 Paσv,2 45100 Pa 55700 Pa 62134 Paσv,3 230000 Pa 270000 Pa 295492 Pa

    Table 4: Rumble strip: Maximum von Mises stresses for load 1,2 and 3 for di�erent mesh sizes.

    According to table 4 the maxima of the von Mises stresses increase for �ner meshes. Thus, it isimportant to solve the problem on a grid with a su�cient number of unknowns. Otherwise, thecomputed equivalent von Mises stresses could be too small.

    The breaking stress of steel used in the �eld of engineering depends on the exact type of steel.There are two kinds of indicators referring to the breaking stress of linear-elastic materials. Theyield strength is the stress at which a material begins to deform plastically. If the yield strength ispassed there will be no elastic behaviour any more and some fraction of deformation will remain.The other indicator is the ultimate strength at which a material breaks. In most applications,engineers are interested in if the yield strength is reached under particular loads, since a plasticbehaviour of the material shall be avoided. In the case of the rumble strip we have a compressionof material. The compressive yield strength of steel is around 152MPa = 152 106Pa [6]. As it can

    31

  • be seen in table 4, the equivalent von Mises stresses for the three loads are much smaller than thecompressive yield strength and there would be no problem when applying load 1, 2 and 3 to thegiven geometry consisting of steel. The reason for the great strength of the considered structure isthe strength of steel on the one hand and the compact geometry of the rumble strip on the otherhand.

    32

  • 5 Conclusion, limitations and prospective research

    5.1 Conclusion

    At this point of the thesis, I want to outline the results that could be derived in this work. There-after, there will be some remarks referring to limitations of this thesis and future research on thetopic of linear elasticity in HHG.

    After giving a short overview of the goals and how this thesis is structured, I started with anintroduction into the theory of linear elasticity in chapter 2. The main equations of linear elasticity,like the strain-displacement relationship and the linear material law of Hooke, were de�ned. By in-serting Hooke's law into the momentum equation we were able to state the basic partial di�erentialequation in linear elasticity, the Lamé equation, in its pure displacement formulation. Subsequently,I continued to deal with specialties referring to nearly incompressible materials. These kind of mate-rials have a Poisson ratio close to 0.5. The Lamé formulation fails for nearly incompressible materialand thus we introduced the mixed problem that contains the pressure besides the displacement asunknowns. This mixed problem represents the system of partial di�erential equations we wantedto solve numerically. The mixed problem revealed the structure of a saddle point problem with apenalty term. As a popular example for a saddle point problem the discrete incompressible Stokesequations were named.After this theory, the algorithm for the mixed problem was derived in chapter three. The basis ofthe algorithm is the so-called Pressure Correction Scheme for the Stokes problem that has alreadybeen implemented by the chair of systemsimulation at University of Erlangen-Nürnberg. Becauseof the similar structure of the Stokes problem as well as the mixed problem in linear elasticity, itwas possible to extend the Stokes solver to problems in linear elasticity.After deriving and implementing the algorithm, the solver for the mixed problem was extensivelytested in chapter four. At �rst, examples only consisting of Dirichlet boundary conditions wereanalysed. I started with the two basic modes in solid mechanics, the movement of a solid bodyand the constant strain mode. In both cases the error reached the round-o� error after a particu-lar number of iterations due to linear basis functions in HHG. After some remarks to the generalconvergence of Finite Elements more complex solutions were tested that cannot be described ex-actly by linear basis functions. The computed results were compared to the exact solution andthe accuracy of the solver in connection with Dirichlet boundary conditions was proved. Followingthis, I focused on Neumann boundary conditions. Once the solver has been tested successfully forNeumann boundaries on the unit cube, I picked the more complex geometry of a rumble strip asa showcase. There the von Mises stresses were computed that are used to �nd out if material willbreak under certain loads.

    5.2 Limitations

    This thesis contains several limitations that need to be taken into account.

    The �rst limitation is the use of relatively simple geometries as meshes. Since this thesis justmarks the beginning of research on linear elasticity in HHG, the developed solver had to be testedon basic examples at �rst. However, the veri�cation of the solver with the help of these basic ex-amples is a fundamental task and a good foundation for more complex setups. I also tried to pavethe way and to motivate for trying more complex setups by introducing the showcases in section4.3.2.

    Another limitation concerns the selected material for Neumann boundaries. There are still someproblems with nearly incompressible material like rubber when having Neumann boundary condi-tions. In this case, the solver does not deliver valid results, yet. The reason for this can be foundin the fact, that in the current solver the gradient operator of block BT is expressed by the samestencil as the divergence operator B, only with a reversed sign. This at least works, if there is acertain symmetry. By using a Poisson ratio of steel or iron, for example, this symmetry is partlygiven, but not for rubber with ν = 0.4999. It proves advantageous to use the right operators forBT and B of the weak formulation of the mixed problem. Then there should exist no problems

    33

  • with any kind of material in connection with Neumann boundary conditions. However, the currentsolver at least works correctly for materials like steel or iron.

    The third and �nal limitation refers to the underlying elasticity theory. As a simpli�cation, wesustained our assumptions on the linear-elastic law of Hooke. But the behaviour of rubber is betterdescribed by non-linear theories like the rubber elasticity where the stresses do not linearly dependon the deformation. However, it is possible to use Hooke's law as model even for rubber if thereare really small deformations assumed.

    5.3 Prospective research

    Future research topics are mainly derived by the limitations of this work mentioned in section 5.2.Simulation in the �eld of elasticity is a very exciting and challenging topic. Especially the handlingof nearly incompressible material like rubber is a di�cult task, but much of interest. Rubber isused in many industrial applications because of its positive properties. Despite, it is very complexto handle in numerical simulation. This would be an approach for further research in HHG. Otherinteresting aspects would be the extension of the solver to non-linear theories or the use of morecomplex geometries. Hopefully, this thesis contributes and motivates to expand the functionalitiesof HHG.

    34

  • References

    [1] B. K. Bergen and F Hülsemann. Hierarchical hybrid grids: data structures and core algorithmsfor multigrid. Numer. Linear Algebra Appl., 11(doi: 10.1002/nla.382):279�291, 2004.

    [2] Dietrich Braess. Finite elements: Theory, fast solvers, and applications in solid mechanics.Cambridge University Press, 2001.

    [3] Björn Gmeiner. Design and Analysis of Hieararchical Hybrid Multigrid Methods for Peta-scaleSystems and Beyond. PhD thesis, 2013.

    [4] Björn Gmeiner, ULRICH Rüde, HOLGER Stengel, Christian Waluga, and Barbara Wohlmuth.Performance and scalability of hierarchical hybrid multigrid solvers for stokes systems. SIAMJ. Sci. Comput., submitted, 2013.

    [5] Hauger Gross, Werner Hauger, Jörg Schröder, and Wolfgang A Wall. Technische Mechanik 2.Springer-Verlag, 2011.

    [6] Philip D. Harvey. Engineering Properties of Steels. American Society for Metals, 1982.

    [7] Thomas JR Hughes. The �nite element method: linear static and dynamic �nite elementanalysis. Courier Dover Publications, 2012.

    [8] Jonathan Richard Shewchuk. An introduction to the conjugate gradient method without theagonizing pain, 1994.

    [9] U. Trottenberg, C.W. Oosterlee, and A. Schuller. Multigrid. Elsevier Science, 2000.

    [10] R Wait and AR Mitchell. Corner singularities in elliptic problems by �nite element methods.Journal of Computational Physics, 8(1):45�52, 1971.

    [11] H. Wobker. E�cient Multilevel Solvers and High Performance Computing Techniques for theFinite Element Simulation of Large�Scale Elasticity Problems. PhD thesis, TU Dortmund,March 2010. http://hdl.handle.net/2003/26998.

    [12] Hilmar Wobker and Stefan Turek. Numerical studies of vanka-type smoothers in computationalsolid mechanics. Advances in Applied Mathematics and Mechanics, 1(1):29�55, 2009.

    [13] O.C. Zienkiewicz and R.L. Taylor. The Finite Element Method: The Basis, volume 1.Butterworth-Heinemann, 5 edition, 2000.

    35

    http:/ / hdl.handle.net/ 2003/ 26998

    IntroductionResearch objectivesStructure of the thesis

    Theoretical backgroundLinear elasticityNearly incompressible material

    Derivation of the algorithm for the mixed problemPressure Correction Scheme for the Stokes systemPressure Correction Scheme for the mixed problem in linear elasticity

    Numerical analysisConstant and linear functions with Dirichlet boundary conditionsDescription of the configurationsDevelopment of the error

    Cubic and trigonometric functions with Dirichlet boundary conditionsGeneral convergence of Finite Element MethodDescription of the configurationsDevelopment of the discretization error

    Neumann boundary conditionsLinear function with Neumann boundary conditionsShowcase: rumble strip

    Conclusion, limitations and prospective researchConclusionLimitationsProspective research