TMA4212 Numerical solution of differential equations by difference methods

07.06 Here are the Suggested solutions to the exam.
03.06 Minor clarification concerning the curriculum added.
01.06 A point concerning the solution to 2015, 1b - the characteristic polynomial of a 2x2 matrix A is x^2 - tr(A)x + det(A), which has determinant tr(A)^2 - 4det(A). This is not expected knowledge, although note that it would be possible, if laborious, to work out the characteristic equation by the usual det(A - lambda I)=0, etc.
31.05 I have updated the curriculum section - there should (hopefully!) be no surprises here. We apologise for the long wait for feedback on the projects, we will send these out on Monday 04.06
24.05 The revision lecture on Tuesday 29th will be held in F6 from 14:15 to 16:00, by Sølve. We will go through some problems from previous exams.
16.05 The revision lecture will be moved to May 29th, 14.15 to avoid a clash with the Optimization course. Note also that printed versions of the textbooks (i.e. from the ebook) will be permitted during the exam. To save trees, it is likely to be chapter 13 of Strikwerda (covering numerical linear algebra) and chapter 14 of Suli/Mayers (covering finite element methods) which are of most interest, although if you have been following the rest of the Strikwerda book alongside the course notes, there will be more relevant material.
14.05 The permitted aids during the exam will be: the two sets of course notes, the textbooks (Strikwerda and Suli/Mayers) and Rottman. We are planning a revision lecture on May 28th, 14.00, more details soon. I will also soon update the curriculum list.
04.05 2017 exam added. See also commentary on the relevance of finite element questions from past exams in the finite elements tab.
30.04 Small correction in the course notes - a sign error on p.11 is fixed.
30.04  I have added a new tab for teaching resources related to the finite element method (including sample codes), and uploaded some older exams. These will be updated in the course of today and tomorrow.
26.04 Here are the new course notes covering the finite element method. I will shortly upload accompanying example codes, together with some information about relevant exam questions, etc. As this is a first version it is not impossible that there are some minor errors, please let me know if you spot anything or if something is unclear. I may also revise the notes somewhat over the next few weeks, any updates will be clearly marked.
24.04 There will not be any office hours this week, but these will resume next week as the process of preparation for exams gets underway. More details about revision activities coming soon.
23.04  Again, well done with the projects, now to conclude the taught part of the course - there will be no exercise class this evening, but lectures as normal on Tuesday. I am finishing off the course note for the finite element part of the course, this will be released on Tuesday, together with some sample codes in python and matlab. Upon release, I will also make more precise the pensum for this part of the course.
18.04 Well done to everyone with their presentations! I have added some feedback (see the Project tab), if you have further questions please ask.
16.04 Sølve will hold office hours at these times this week: Wednesday 15:15-17:00, Thursday 14:15-16:00. Room 1356.
15.04 I will hold additional office hours from 9.15-11.00 on Monday and Tuesday of the coming week.
14.04 There will be arranged additional office hours next week for the conclusion of the projects, more precise information coming soon. I am also working on a set of printed lecture notes for the course material on finite element methods, which will be released next week.
14.04 I have added an order for the coming presentations in the project section. The demand for Tuesday was greater than that for Monday so not everyone will have their desired date, this was allocated on a first come first served basis.
13.04 Project presentation times - I am finalising the order now. We have only one remaining slot on Tuesday so please get in touch as soon as possible if Monday does not work for you.
13.04 The project presentations will take place next week on Monday and Tuesday - could all groups please email me a preferred day so I can set up a schedule? The presentations should last around 10 minutes and should be considered a relatively informal demonstration of what you have done so far and the results you have obtained.
03.04 Happy Easter! There are no lectures this week, but I will have extended office hours on Friday, 10.00-16.00 for enquiries related to project. I apologise if there are any outstanding queries I haven't responded to over Easter, I will try to do so as soon as possible.
20.03 For students here this week, I will have office hours from 10-12 on Wednesday 21.03.
05.03 Note that the relevant chapters of the Strikwerda textbook are available in pdf format for free - see the teaching material section further down on this page
27.02 Project registration 3 - thanks to those who have registered groups (by email) since the last note - again all groups can take their first choice, although I have crossed off a few from the list for groups who have not yet registered. I have not sent out individual confirmation emails, but I can do so if you would like.
23.02 Project registration 2 - those who have already sent in a list of equations can begin working on their first choice, so far there has been a sufficiently wide choice that this is not problematic.
23.02  Project registration - could all who intend to take the project and have not yet got in touch send me an email as soon as possible with your choice of equations (see the project tab) and group members? I will try to help form groups for individuals or pairs who do not yet have a group
21.02 Office hours this Thursday (22.02) are cancelled - I will be available after Friday's lecture instead
20.02 Note that there is a sign error in the description of the upwind scheme from exercise 4 - see the notes
20.02  We welcome Sølve Eidnes as an additional project/exercise lecturer!
12.02 Small note added on exercise 3
11.02  Exercise 4 added
07.02 Provisional timetable for the rest of the semester added (see timetable tab), together with dates for the coming project
05.02 Exercise 3 added
29.01 Important! The venue for tomorrow's lecture (30.01) is changed to A3, Handelshøyskolen.
29.01 Addition to note on exercise 2 concerning periodic boundary conditions
26.01  Explanatory notes added on exercise 2, see homework tab
25.01  Reference group details added, see below.
25.01  The deadlines for the first two homework assignments are extended, see the homework tab. I am aware that many of you have struggled somewhat, hence the extra time. In this regard, I would encourage everyone to get in contact with me if you are not making progress - in most cases I will be able to spot what is going wrong pretty quickly, and I don't want you all wasting too much time. Otherwise, see the notes regarding the first assignment - everyone's plots should look similar to those presented here. If yours doesn't and you can't figure out why, get in touch!
19.01 Second homework released.
17.01  The course page has been added on øvingsystemet, so it should now be possible to submit coursework. Let me know if you have any problems.
 It has been brought to my attention that many taking the course are using python as the language of choice. I will produce python equivalents of the matlab resources (such as the sample codes released alongside the first homework sheet) over the course of the semester.
 First exercise sheet released. See info in the homework tab
 Page up and running! More info coming soon.
Important dates
First lecture: Tuesday 9th January 2018.
 First exercise class: Monday 15th January 2018.


Charles Curry, room 1350 Sentralbygg II.

Exercise and project lecturer

Raj Dhara, Sølve Eidnes.


Lectures: EL6 Tuesdays and F6 Fridays 12.15-14.00

Exercise class: F2, Monday 17.15-19.00


Description of the course

In the following link you can find detailed information about the course, the main topics presented and the learning outcome.


Learning outcome in itemized form:

Code Description
Knowledge L1 Understanding of error analysis of difference methods: consistency, stability, convergence of difference schemes.
L2 Understanding of the basics of the finite element method.
Skills L3 Ability to choose and implement a suitable discretization scheme given a particular PDE, and to design numerical tests in order to verify the correctness of the code and the order of the method.
L4 Ability to analyze the chosen discretization scheme, at least for simple PDE-test problems.
L5 Ability to attack the numerical linear algebra challengies arizing in the numerical solution of PDEs.
General competence L6 Ability to present in oral and written form the numerical and analytical results obtained in the project work.
L7 Ability to apply aquired mathematical knowledge in linear algebra and calculus to achieve the other goals of the course.

Weekly work plan for this course to achieve these goals

LecturesAssignments and Project supervision Self study
4 hours 2 hours 6 hours

Reference group

Office hours

Charles: Tuesday, 14.15-16.00 and Thursday 10.15-12.00 (1350, Sentralbygg II)

Sølve: Wednesday 15.15-17.00 (1356, Sentralbygg II)

Exercises and project

Teaching material

Evaluation system and marking in this course
  1. The exercises are compulsory, and at least 3 of the 4 must be approved as a condition to take the exam.
  2. The project counts for 40 % of the final mark.
  3. The final exam counts for 60 %. You must pass the final (written) exam to pass this class (project + homework + final exam).
  4. The total mark is the only official mark for the course. The marking of the project is unofficial.


  • The contents of (course note 1), except sections 2.2.4, 3.3, 6.6 and 7.5
  • The contents of (course note 2)
  • The Strikwerda book, chapter 13.1-3
  • Contents of the homework exercises and past exams dating back to 2012 (except where indicated in the relevance tab of Old exams)
  • Where content of the past exams is not to be found in the literature list above this should perhaps be given lower priority in your exam preparation ;-)
2018-08-09, Hallvard Norheim Bø