Summary of lectures
- Aug 19: about the course (slides); background test: HTML or PDF; Finite difference methods for u'=-au (slides); See course notes, "decay", for textbook material and study guides (slides for lectures). Handwritings from the lecture.
- Aug 21:
- Problem lab 8.15-9.00: Those with weak background in finite difference computing and Python programming, or those who need a refresher and want to start with something simple, read about Newton's law of cooling and do Exercises 1-3. Those who want more challenges can start with the first compulsory exercise, which is either Exercise 29 or Project 1.
- Lecture 9.15-10.00: verification techniques and computing errors (slides), estimating convergence rates (slides), Stability of the theta rule (slides).
- Aug 26: Error analysis of the theta rule (slides), Quick overview of Python software development techniques (slides). Handwritings from the lecture.
- Aug 28:
- Problem lab 8.15-9.00: Continue with the problems from last week's
lab. Also, set up a GitHub or Bitbucket account for
the work with INF5620, other courses and your thesis. Use a single
private repository for all INF5620 work that is to be handed in
(just organize various exercises and
projects in appropriate subdirectories). Add read access for
user
hplbit
on Bitbucket orhplgit
on GitHub. A quick intro to Bitbucket, GitHub and Git is here: HTML for online viewing, PDF for printing. Make sure to apply for student account with private repos at GitHub (you can do this on Bitbucket too, but on Bitbucket the free plan includes private repos with up to five collaborators). - Lecture: generalizations to variable coefficients, method of manufactured solutions, schemes for 1st-order ODEs (slides). Handwritings from the lecture (here the writings on the whiteboard about MMS etc are also added).
- Sep 2: This week the problem lab is on Monday, with ordinary lectures on Wednesday 8.15-10.00. On Monday, Joakim will go through verification tests for the vertical_motion.py and skydiver.py programs in the first compulsory exercise.
- Sep 4: Finite difference methods for vibration problems 8.15-10.00: finite differences (slides), experiments (slides), analysis (slides), solving vibration ODEs as 1st-order systems (slides).
- Sep 9: Vibration ODE exercises: Problem 1 (solution in handwritings and in a program file), Exercise 1, Lecture: linear and quadratic damping (slides). Handwritings from the lecture: part 1 and part 2.
- Sep 11: Lab 8.15-9.00: Investigation of the Leapfrog scheme (this was called Problem 4 before, now Problem 22). Then adjustment of the frequency in an ODE to increase accuracy: Exercise 2. Some intro to these exercises is found in the handwritten notes from the lecture, and complete solutions are found in decay_leapfrog.py and in vib_adjust_w.py. General vibration ODE u''+f(u')+s(u)=F written as a 1st-order system and solved by centered differences on a staggered mesh (see end of handwritings). Experiments where the Forward and Backward Euler schemes have confusing behavior when the vibration ODE gets increasingly more complicated.
- Sep 14: Truncation error analysis (slides. Some intro in handwritings.
- Sep 16: More truncation error analysis. Finite difference methods for wave equations: Basic discretization in time and space, initial conditions, verification, implementation, scaling (slides).
- Sep 23: More on finite difference methods for wave equations: Vectorization, reflecting boundaries, variable wave velocity, 2D/3D problems, implementation in 2D (including Cython, Fortran, C) (slides). Handwritings about Neumann conditions, variable coefficients, ghost cells.
- Sep 25: 8.15-9.00: lab - students work with exercises. 9.15-10.00: Presentation and discussion of exercises. We start at the top of the list:
- Exercise 1 (visualize errors in a standing wave)
- Exercise 14 (waves on a non-homogeneous string)
- Exercise 7 (symmetry boundary conditions)
- Exercise 8 (numerical noise due to discontinuous wave velocity)
- Exercise 6 (solve a damped wave equation analytically)
- Exercise 20 (open boundary conditions)
- Exercise 17 (spherical waves simulated as 1D Cartesian waves)
- Sep 30: Parallel computing, lectured by Xing Cai: quick intro and slides.
- Oct 2: 8.15-9.00: lab devoted to the 2nd compulsory exercise on wave equations. 9.15-10.00: More about parallel computing from Monday, by Xing Cai.
- Oct 7 and 9: Students work with the compulsory exercise. It is fruitful if they meet on Monday and Wednesday in the lecture room (Postscript). Joakim Bø will be available for discussions.
- Oct 14: Joakim will show up and assist with the compulsory exercise.
- Oct 16: Lecture 8.15-10.00. Introduction to approximation of functions and the finite element method (preliminary slides).
- Oct 21: Continuation of the intro to finite elements (from Lagrange polynomials approximation and onward).
- Oct 23:
- 8.15-9.00: Exercises 3, 4, 5, 6, 7, and 9. Polished solutions will be published here...not yet entirely ready...
- 9.15-10.00: Lecture (continution from where we ended on Monday): more about finite elements.
- Oct 28: Continuation of approximating functions by finite elements.
- Oct 30:
- 8.15-10.00: Solving differential equation by finite elements.
- Nov 4: Exercises 10, 11, 12, 13 (approximation of functions by finite elements). Solutions: fe_numberings1.py, fe_numberings2.py, sin_approx_P1.py. Quick intro to FEniCS by Joakim.
- Nov 6: Finite element computing for differential equations.
- Nov 11: Time-dependent problems. Info about the final project, including the default project. Analysis of noise in wave equations (slides), analysis of diffusion equations solved by finite elements (slides).
- Nov 13: Continuation of topics from Nov 11. Solving a Poisson equation in FEniCS.
- Nov 18: Nonlinear problems (finite differences and finite elements). Handwritings from the lecture: part I, part II.
- Nov 20: More about nonlinear problems: handwritings.
- Nov 25: Quick presentation of this year's exam. More about nonlinear problems: from Discretization of 1D problems, see handwritings.
- Nov 27: Discretization and analysis of diffusion equations (slides) with focus on the exam questions. We also watched some finite element humor.