Introduction to programming the Finite Element Method (FEM) in 1D and 2D.
Topics covered include thermal diffusion, elasticity, Stokes flow, isoparametric elements, and code verification using the method of manufactured solutions. The focus is on hands-on programming, and you will learn how to write FEM codes starting with an empty MATLAB script.
Course content includes brief derivation and implementation details for the Finite Element Method (FEM) for thermal diffusion, linear elasticity, and incompressible Stokes flow, using numerical quadrature and isoparametric elements. 1-dimensional examples are extended to 2 dimensions. Code verification is introduced, using the method of manufactured solutions. The focus is on hands-on programming; course exercises encourage development of a series of increasingly-complex codes, starting with an empty MATLAB script. A final project allows students flexibility to apply the method to an application of interest or to a standard problem.
Note: proficient users of numerical Python are free to use that environment, instead of MATLAB.
The script will be made available online.
There is no mandatory literature. Some recommended literature will be discussed and made available during the course.
Prerequisites / Notice
Good knowledge of MATLAB (or self-sufficiency with numerical Python), linear algebra, and knowledge of programming the finite difference method.
The following courses are recommended before attending this course: 651-4241-00L Numerical Modelling I and II: Theory and Applications 651-4007-00L Continuum Mechanics 651-4003-00L Numerical Modelling of Rock Deformation
Performance assessment information (valid until the course unit is held again)