Introduction to Finite Element Modelling in Geosciences
Spring Semester 2016
651-4144-00L



Lecturers:   Dave A. May (dave.may@erdw.ethz.ch)
                   Marcel Frehner (marcel.frehner@erdw.ethz.ch)


Assistants:  Patrick Sanan


Location:    NO building, room D39
                   Sonneggstrasse 5
                   ETH Zentrum


Dates:         July 25-29, 2016
Schedule:   9:15-13:00   (lunch)   14:00-17:00 ... and beyond for the enthusiastic


Objectives:  
Learn how to program the finite element method and apply it to equations
relevant for modelling geodynamic processes. The course is given in the
form of a series of MATLAB exercises, with an introduction of the relevant
theory. The emphasis is on practical exercises, with students obtaining
knowledge of how to write their own finite element codes.

Assessment:
The best way to ensure a mark of 6.0 is to write a 2D Stokes solver and
use it to solve a geological problem - refer to PDF below for a more
detailed break-down of the requirements.

** Requirements for assessment (2016) **

Course notes:
All theory, examples and exercises are contained in this document (PDF)

Prerequisites:
Basic knowledge of MATLAB, linear algebra and partial differential equations.
If you are new to MATLAB, or wish to revise the basic matrix/vector operations,
please refer to Appendix A within the notes above.

Program:
0: Motivation (presentation)

1: Basic FE principles
  Matlab example: Solves steady state 1D diffusion ("1D FEM Matlab script")
  Additional notes about integration by parts - see Appendix B
  Additional notes about weak forms - see Chapter 6
  Supplementary presentation - "Basics of the FE Method", B. Kaus, 2011
 
2: Programming the FEM in 1D


3: Numerical integration and isoparametric elements

  Supplementary presentation - "Numerical Integration", B. Kaus, 2011
  Supplementary presentation - "Isoparametric Elements", B. Kaus, 2011
  Additional notes - tabulated quadrature rules (Kwon & Bang)

4: Concept summary (presentation)

5: From 1D to 2D: The diffusion equation

   Additional notes - quadratic shape functions
   Matlab example: Visualization routines for 2D structured meshes (source)

6: Code verification

   Matlab example: Solves 1D diffusion equation with manufactured RHS (source)
   Matlab example: Computes the order of accuracy from L2 error measures (source)
   Python example: Symbolically compute (manufacture) the RHS for the 1D difussion problem via MMS (source)

7: 2D Elasticity


8: 2D Stokes flow


Resources:
Numerical modelling of rock deformation (Stefan Schmalholz, 2009)
FEM-BEM notes
The Finite Element Method, Hughes (2000)
The Finite Element Method, vol. 1, Zienkiewicz and Taylor (2000)
Finite Elements and Fast Iterative Solvers, Elman, Silvester & Wathan (2005)