^ Upp till course homepage.

2D1260, Finite Element Methods: Fall 2005

The goal of this course is to give basic knowledge of the theory and practice of the finite element method and its application to the partial differential equations of physics and engineering sciences. The purpose is to give a balanced combination of theoretical and practical skills. The theoretical part is mainly concerned with the derivation of finite element formulations as well as estimating the discretization error and how to use error estimates to adaptively refine the mesh (see the FEniCS gallery and the Body and Soul gallery). The practical part deals with computer implementation: element matrices, assembly, numerical integration, fast solvers, etc.

Course PM


060913: Solutions to re-exam now avaliable.

060811: After a discussion with many students, the date is now set for re-exam: The re-exam is taking place Tuesday August 29, 8-13, D41.

060626: Re-exam in August: There will be a re-exam in August. Suggested dates are weekdays in week 34; that is 21-25 August. Please let me know as soon as possible if any time this week is unsuitable for you.

060210: Open PhD positions; for further information contact me.

060126: 8 students have passed the exam, but have not handed in their projects. The credits for the course will not be reported until projects are handed in.

060126: Solutions to re-exam now avaliable.

060126: The correction of the re-exam is now finished, and results should be avaliable. 10 took the exam; grade 5: 5, grade 4: 2, grade 3: 2, and 1 need to see me to get an extra excercise to pass the exam.

060112: Results for the written exam are now avaliable. 25 took the exam; grade 5: 4, grade 4: 12, grade 3: 3, 2 need to see me to get extra excercise to pass the exam, and 4 did not pass.

060107: The time and place is now set for the re-exam: Saturday 21 January, 8-13, in D35. The results of the first exam will be announced next week.

051225: Solutions to written exam now avaliable.

051213: Hints and solutions for the problems in the book updated.

051206: Bug found in old version of "AssembleMatrix.m": row 35: dw = evalderivatives(W(nodes,:), p); should be: dw = J' \ evalderivatives(W(nodes,:), p); If you are using derivatives of coefficients or source terms, this bug will give a wrong scaling of your derivative. For all problems in sessions F1-F5 this bug is unimportant since no derivatives of coefficients or source terms are used. Although, if you use the old version of "AssembleMatrix.m" to the second part of the project you may experience problems. The old version of "AssembleMatrix.m" avalible in the sessions will be updated. Until then the new version without the bug is avaliable for download here, from the Puffin homepage.

051205: MSc projects at the School of Computer Science and Communication are avaliable here.

051205: Course evaluation form is avaliable here. Please fill out this form after the written exam, comments are appreciated.

051205: The project PM has been updated with some additional info; avaliable here.

051202: For inspiration on PDE applications for the project, see: Laplacian models (chapter from AMBS)

051129: First page of project report should include: name, email and program for all group members.

051127: New deadline for the project: Friday 16 December. The only examination of the project is the report, that is no oral examination.

051127: Useful info for working on the project using your own computer: Matlab is avaliable at the library, and the PDE-toolbox is avaliable to download for free.

051127: The enumeration of some web pages for the Computer Sessions F1-F5 is wrong: The name of some pages and files indicate the session names E* even though the correct enumeration is F*. The correct place to start the project is: F1: Back to Poisson.

051123: Hints and solutions for the problems in the book updated.

051116: Useful inequalities for solving problems.

051115: Lecture 6 (Thu 17 Nov, 13-15; E3) will include a description of Puffin, used in the project.

051111: Some hints and solutions to the problems in the book (avaliable below under Literature).

051108: Changes of rooms for the excercises! Check below for new rooms.

051103: To register for this course you need to sign up electronically.

Older news.


To register for this course you need to sign up electronically.


Coordinator and lecturer is Johan Hoffman; email:
Teaching assistant is Erik von Schwerin; email:

Office Hours

Johan Hoffman (room 4526): Mondays 9.00-10.00
Erik von Schwerin (room 4520): Tuesdays 9.00-10.00
In case there is teaching (lectures, excercises, or computer sessions) these hours, the office hours are cancelled.


The examination consists of:
(1) a written exam Friday 16th of December 8-13, based on the course book and the lectures, and
(2) a project for which a report should be handed in by Friday 16th of December.
Slides for the lectures are avaliable: L1, L2, L3, L4, L5, L6 L7 L8 L9

Here is a list of typical questions for the exam.


Course book (CDE)

"K. Eriksson, D. Estep, P. Hansbo, C. Johnson: Computational Differential Equations",

Studentlitteratur, ISBN ISBN 91-44-49311-8. Price: 410 kr at kårens bokhandel.

Guidelines for reading the book.

Hints and solutions to problems in the book.

Useful inequalities.

More books in the same series.


New deadline for the project report: 16 December

First page of report should include: name, email and program for all group members.

Project PM

Using your own computer: Matlab is avaliable at the library, and the PDE-toolbox is avaliable to download for free.

Computer Sessions (F1-F5 included in the project)
Puffin (used in the project)
Puffin Manual
DOLFIN (big brother of Puffin)
FEniCS (software project including both Puffin and DOLFIN)
Body and Soul (educational project including Puffin sessions, CDE book, other books,...)

Laplacian models (AMBS) (some PDE applications)
Robin boundary conditions
Robin boundary conditions in 2D


Extra material

Exercises (E1a) with solutions
Exercises (E1b) with solutions
Exercises (E2) with solutions
Exercises (E3) with solutions
Exercises (E4) (in swedish) with solutions
Problems (P1) (in swedish) with solutions
Old exams from KTH with solutions: dec02, feb03, maj03
Old exams from Chalmers: 00a, 00c, 01c, 02c, 03a, with solutions: 00a, 00c, 01c, 02c, 03a

Further reading

H.P. Langtangen, "Computational Partial Differential Equations Numerical Methods and Diffpack Programming" Springer Verlag, 2003. (Development of FEM programs; using numerical C++ library Diffpack)
S.C. Brenner and L.R. Scott, "The mathematical theory of Finite Element Methods", Springer Verlag, 1994. (Mathematical; elliptic problems, mixed methods,..)

Course evaluation form

Please fill out the course evaluation form after the written exam.
Press here to get course evaluation form:
The following message means that your submitted form has been received: Din utvärdering har tagits emot. Tack för hjälpen!

MSc projects

You may be interested in a MSc project at the School of Computer Science and Communication (CSC). MSc projects at CSC are avaliable here.

Preliminary weekly plan

(pdf-files of lectures avaliable as hyperlinks below)

Week 1

Lecture 1: Tue 1 Nov, 13-15; V3
Introduction, Function spaces, Galerkin's method (CDE 4,5,6)
Lecture 2: Thu 3 Nov, 13-15; L1
BVP, FE basis functions (CDE 8)
Excercise 1, Fri 4 Nov, 13-15; D31, D35
Variational form of DE, Galerkin method, boundary conditions, corresponding system of equations: Problems: 4.21, 6.2, 6.8, 6.9, 6.10, 6.11, 6.14, 8.6, 8.7, 8.9, 8.10, 13.30, 15.14, 15.16, 15.19, 15.20, 15.21, 15.44, 15.45, (4.22, 4.24, 4.25, 6.12)

Week 2

Lecture 3: Mon 7 Nov, 8-10; E3
Abstract problem, Lax-Milgram Theorem (CDE 7,8,21)
Excercise 2, Tue 8 Nov, 8-10; E32
Abstract problem, Lax-Milgram Theorem 21.1,21.2,21.8,21.9,21.11,21.12,21.13,21.14,21.17 (21.5,21.10)
Lecture 4: Thu 10 Nov, 13-15; E3
Interpolation, piecewise polynomials, error estimation, adaptivity (CDE 5,8,14,15)
Excercise 3, Fri 11 Nov, 8-10; D41
Interpolation, error estimation: Problems: 5.8, 5.9, 5.13, 5.14, 5.17, 5.23, 5.24, 8.11, 8.12, 8.13, 8.16, 8.17, 8.18, 8.20, 8.21, 8.22, 8.23, 8.37, 8.40, 8.41, 14.9, 15.48, 15.49

Week 3

Computer session 1, Mon 14 Nov, 13-15; 4V2Rod, 4V3Ora
Lecture 5: Tue 15 Nov, 13-15; V2
IVP, Heat equation, Wave equation, Stability, theta-method, space-time FEM (CDE 9,10,16,17)
Excercise 4, Wed 16 Nov, 13-15; D34
Stability: Problems: 9.4, 9.5, 9.7, 9.10, 9.11, 9.14, 9.15, 9.16, 9.43, 10.18, 10.21, 10.24(a), 10.27, 10.28, 10.30, 16.14, 16.15, 16.18, 17.19, 17.20, 17.27, 17.21, (9.23, 9.24, 9.25, 9.40, 9.41, 9.42, 16.19, 16.20, 17.37(a))
Lecture 6: Thu 17 Nov, 13-15; E3
FEM algorithms and software; assembly, mapping, quadrature

Week 4

Computer session 2, Tue 22 Nov, 8-10; 4V4Gul, 4V6Bru
Lecture 7: Wed 23 Nov, 8-10; E3
Adaptivity, error estimation, a priori, a posteriori, duality
Excercise 5, Thu 24 Nov, 8-10; D34
Error estimation, a priori, a posteriori, duality: Problems: same as above + extra problems.

Week 5

Computer session 3, Tue 29 Nov, 8-10; 4V4Gul, 4V6Bru
Lecture 8: Tue 29 Nov, 13-15; E3
Space-time FEM, transport, Convection-Diffusion, stabilization (CDE 18,19); Problem 18.6
Excercise 6, Thu 1 Dec, 8-10; D34
Error estimation, a priori, a posteriori, duality, stabilization: Problems: 18.1, 18.7, 18.9, 19.1, 19.2

Week 6

Computer session 4, Mon 5 Dec, 15-17; 4V4Gul, 4V6Bru
Lecture 9: Tue 6 Dec, 13-15; E3
Navier-Stokes, adaptivity, overview/repetition
Excercise 7, Wed 7 Dec, 8-10; D34
Repetion, preparation for written exam: Problems: extra problems, old exams
Computer session 5, Thu 8 Dec, 15-17; 4V2Rod, 4V3Ora
Computer session 6, Fri 9 Dec, 15-17; 4V4Gul, 4V6Bru

Week 7

Written exam, Fri 16 Dec, 8-13 (in D31, D32, D33, D34)

Sidansvarig: Johan Hoffman <>
Senast ändrad 27 juni 2006
Tekniskt stöd: <>