Introduction to Finite Element Modelling in Geosciences
Spring Semester 2018
651-4144-00L
Lecturers: Antoine Billy Rozel (antoine.rozel@erdw.ethz.ch)
Patrick Sanan (patrick.sanan@erdw.ethz.ch)
Location: ETH Zentrum
HG E22 from monday to wednesday
CHN D42 on thursday and friday
The class starts at 9am and finishes around 5pm (except on wednesday where we will have to start at 8am)
Dates: June 18th-22nd, 2018
Schedule: 9:00-12:00 (lunch) 13:30-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 (2018) **
Course notes:
ALL THEORY, EXAMPLES AND EXERCISES ARE 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
(presentation)
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
Short tips on programming
2: Programming the FEM in 1D
Please use this code!
3: Numerical integration (presentation)
Additional notes - tabulated quadrature rules (Kwon & Bang)
4: Concept summary
(presentation)
5: From 1D to 2D: The diffusion equation (presentation)
Additional notes - quadratic shape functions
Matlab example: Visualization routines for 2D structured meshes (source)
6: Code verification (presentation)
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 diffusion problem via MMS (source)
7: 2D Elasticity
(presentation)
8: 2D Stokes flow (presentation)
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)