Homework
The material in the homework is part of the curriculum.
- The homework is compulsory.
- These will count for 5% of the final grade whether you do the homework or not.
- The deadline for handing in is one week after supervision.
- Use this link for handing in electronically: https://ovsys.math.ntnu.no (please upload only one file)
- Each exercise set will only be evaluated as "approved/not approved", no further classification or feedback.
- You are allowed to work together with others, but you will hand in your homework individually.
- For each exercise set it is specified what to hand in. Do not hand in a detailed report or any Matlab code.
Exercise classes will be held in Nullrommet (unless announced otherwise). If you don't have access to Matteland, you need to send your full name, NTNU username and the card number on your student identity card to Lars as soon as possible.
| Supervision date | Deadline | Topic | Description | Comments |
|---|---|---|---|---|
| 14.01 | 22.01 | Boundary value problems | Implementation of the numerical solution of simple boundary value problems with various boundary conditions. | Here are some examples of implementations of other problems in Matlab that you may use as inspiration and reference. Numerical solution of a convection diffusion boundary value problem in 1D (\(\nu u''-u'=f, u(0)=\alpha, u(1)=\beta\)) convdiff.m. Numerical solution of the pendulum problem ch. 3.3 of the note pendulum.m. You find here an example of how to compute error plots giving numerical evidence that the method is implemented correctly and achieves the expected order. |
| 21.01 | 29.01 | Parabolic equations | Implement a finite differences discretization of the heat equation, with various boundary conditions: use the Euler method, the backward-Euler method and the Crank-Nicholson method. | To obtain a reference solution, you may use Matlab function ode15s with a very small tolerance. Similarly to compute the error in space, since CN is an unconditionally stable method, you can fix a value for the time step and run the method with different values of h. As a reference solution you will need a numerical solution computed with the same (fixed) time step and with a tiny little space-step. If your numerical method is NOT unconditionally stable then the time step must be chosen according to the stability restriction and the size of h, so for a tiny h you'll have to use an even smaller k. This becomes a challenging numerical experiment, but still doable, unless the exact solution of the problem is available. |
| 28.01 | 05.02 | Elliptic equations (Updated 26.01) | Implement a discretization of the Laplace equation on the square. | |
| 04.02 | 12.02 | Advection equation and hyperbolic problems (Updated 01.02) | Simple experiments with the linear advection equation and the Burgers equation. | Semi-discretization of the KdV equation. Kdv.m Kdvfunc.m Kdvinit.m. |
| From 8th of February until the 16th of March supervision of the project | ||||
Getting started with MATLAB
We expect that you have basic programming skills in Matlab and that you have implemented some numerical algorithms before. If not, you should read up and practice on your own. You will find tons of tutorials and introductory notes on the web. Below are some resources to get you started.
- License and installation on own computer: https://innsida.ntnu.no/wiki/-/wiki/English/Matlab+for+students
- Mathworks' own tutorials and documentation: http://se.mathworks.com/support/learn-with-matlab-tutorials.html
- Introduction to MATLAB used in TMA4215 (introductory numerics class): http://www.math.ntnu.no/emner/TMA4215/2015h/notes/intro_matlab.pdf
- Helpful Matlab commands:
- Search for command:
lookfor <keyword> - Help text:
help <command>