Legacy display Course
This is an archived course. The content might be broken.
Lecture in winter semester 2016/17:
Numerical Algorithms (V4E1)
Prof. Dr. Marc Alexander Schweitzer
Quick Links
News
- The lecture will be held in English (unless all attendees turn out to be fluent German speakers)
- Tutorials will take place Wednesday beginning in the second lecture week either 0800-1000 or 1600-1800. Poll and choice of timeslot will take place in the first lecture, 2016-10-18
- Tutorials start on Wednesday, 2015-10-26.
- Tutorial will be held Wednesdays, 0830-1000
- No lecture 2016-11-17 due to illness, submission of homework at same time, beginning of lecture, or email, handover to Sa Wu on said Thursday
- 2016-12-07, Dies academicus, lecture program beginning 1015. The tutorial 0830-1000 takes place and will discuss exercise sheet 5.
- No lecture or new exercise sheet on 2016-12-22; next exercise sheet 2017-01-12, submission 2017-01-19, sheet 8 submission via mail
- Due to Winter School on Numerical Analysis of Multiscale Problems no tutorial 2017-01-11
- No lecture, Thursday, 2017-02-02, homework submissions via mail to post box (6th floor) to Sa wu
- Oral exams, duration 30 minutes, Friday 2017-02-10 and Tuesday 2017-02-14 to Thursday to 2017-02-16, registration for timeslots in lecture 2017-02-07, tutorial 2017-02-08
Content
Learning targets
Broad overview and understanding of propositions, relations and methods from the area of numerical algorithms. Competence to evaluate the scope, utility, and limits of the methods and techniques and to independently apply abstract mathematical results to concrete problems. Competence to place the results in a more general mathematical context. Overview of connections to other areas and ability to arrive at rigorous mathematical proofs starting from heuristic considerations. The selection of topics is based on the module handbook for the Master programme in mathematics. In particular, we will introduce and discuss the h-,p- and hp-versions of the finite element method (FEM) and its application to conservation equations.Topics
- Repetition of classical finite element method (FEM) and functional analysis: h-FEM on regular meshes
- Fast solvers: Multigrid, Domain Decomposition
- High order FEM and isogeometric analysis (IGA): p-FEM, k-FEM
- Adaptive FEM: h-, hp-adaptive FEM
- Enriched Approximations: extended FEM (XFEM), generalized FEM (GFEM), partition of unity methods (PUM)
- Discontinuous Galerkin: Elliptic problems, conservation laws
- From smooth/regular problems and solutions
- to general/irregular/non-smooth/singular/discontinuous solutions
Literature
- Braess, Finite Elemente: Theorie, schnelle Löser und Anwendungen in der Elastizitätstheorie
- Braess, Finite Elements: Theory, fast solvers, and applications in solid mechanics
- Brenner, Scott: The mathematical theory of finite element methods
- Hackbusch: Elliptic Differential Equations: Theory and numerical treatment
- Hackbusch: Theorie und Numerik elliptischer Differentialgleichungen
- Hackbusch: Multigrid methods and applications
- Melenk: hp-finite element methods for singular perturbations
- Schwab: p- and hp-finite element methods: theory and applications in solid and fluid mechanics
- LeVeque: Numerical methods for conservation laws
- Xu: Iterative methods by Space Decomposition and Subspace correction (accessible in University network)
- Schweitzer: Meshfree and Generalized Finite Element Methods (Chapter 1, Section 2.2 for MLS)
Prerequisites
Prerequisites for this lecture are the topics and exercises of the preceding lecturesAlgorithmische Mathematik I (V1G5), Algorithmische Mathematik II (V1G6), V2E1 Einführung die Grundlagen der Numerik (V2E1)
These prerequisite topics include:
- Calculus, multidimensional differentiation and integration and Taylor expansion
- Elementary combinatorics and probability theory
- Structured programming, in particular C, Python
- Polynomial Interpolation
- Least Squares Approximation
- Conditioning of problems, Stability of algorithms
- Inner products, Orthogonality, Hilbert Spaces, Best approximation in Hilbert spaces
- Orthogonalization, Gram-Schmidt, Orthogonal Polynomials
- Numerical Integration, Quadrature
- Solution of systems of linear equations: Gauss elimination, LU decompostion, Cholesky decomposition, QR decomposition
- Solution of nonlinear equations: bisection, Newton
- Classical iterative methods for systems of linear equations: Jacobi, Gauss-Seidel, Richardson, SOR
- Krylov subspaces, Krylov subspace methods: Gradient descent, CG, PCG, MINRES, GMRES
- Preconditioning of iterative methods: PCG
- Eigenvalues, Eigenvectors, Bounds for the spectrum, Power iteration, Lanczos, Arnoldi, QR algorithm
Lecture times
Dates: | Tuesday | 1015 – 1145 |
Thursday | 0830 – 1000 | |
Location: | Wegelerstraße 6 - Seminarraum 6.020 | |
6th floor, last room on right, heading southwest |
BASIS
Tutorials
Registration for tutorials in the first lecture Tuesday, 2016-10-18. Only one tutorial in either the morning or late afternoon timeslot will be given. Please, be present in the first lecture for poll and choice of timeslot. Tutorials start on Wednesday, 2015-10-26.The contact person for tutorials is Sa Wu.
Admittance for oral exam based on homework assignments requiring
- 50% of points from theory assignments
- 50% of points from programming assignments
Time and Room
Day | Time | Room |
---|---|---|
Wednesday | 0830 – 1000 | 5.002, Wegelerstr. 6 |
Homework assignments
Worksheets with homework assignments are distributed and put on the website Thursdays. Please, submit your homework assignments Thursdays right before and at the beginning of the lecture one week after handout. Submit programming assignments as plain text Python files.Programming exercises will be based mainly in Python/NumPy/matplotlib. Please send in your solutions to programming exercises via mail to your tutorial's teaching assistant.
This combination is a very useful for quick implementation. Algorithms can be put into code fast. Plots can be produced with little effort. Much of what is needed for the lecture can be found in the following examples.
Some Documentation and Tutorials can be found at the following links.- The Python Tutorial, Version 2.7.8
- NumPy Quickstart
- matplotlib tutorial
One easy way to obtain all necessary Python packages is Anaconda.
More installation alternatives, suggestions and instructions can be found on the websites for NumPy and matplotlib.
Model solutions are base on Python in version 2.7.8. For editing and writing Python code, any good editor will do. We recommend Vim or Notepad++.
Exercise sheets
Number | Link | Due | Remarks and errata |
---|---|---|---|
0 | exercise_sheet_00.pdf | Revision and warm up sheet, no submission, not graded | |
1 | exercise_sheet_01.pdf | 2016-11-03 | |
2 | exercise_sheet_02.pdf | 2016-11-10 | Exercise 7, in generalized Céa lemma, $\inf$ instead of $\int$ |
Exercise 9d), $r_1=(1,0),r_2=(0,1)$, $K_T = \frac{1}{2} \abs{\det{\ldots}}$ | |||
3 | exercise_sheet_03.pdf | 2016-11-17 | Abridged solution from programming exercise 3 as template |
Programming exercise 4: For [0,1]^2, Dirichlet boundary values left and right, Neumann top and bottom, see template | |||
Programming exercise 4: For solution, remove only Dirichlet nodes | |||
No lecture on 2016-11-17, please submit in my office or via scan/email | |||
4 | exercise_sheet_04.pdf | 2016-11-24 | |
5 | exercise_sheet_05.pdf | 2016-12-01 | proposal for solution (Python3) |
6 | exercise_sheet_06.pdf | 2016-12-08 | Some typos in Exercise 21 |
Programming exercise 6: $f=1+x^2+2y^2$ | |||
7 | exercise_sheet_07.pdf | 2016-12-15 | |
8 | exercise_sheet_08.pdf | 2016-12-22 | |
9 | exercise_sheet_09.pdf | 2016-01-19 | proposal for solution |
10 | exercise_sheet_10.pdf | 2016-01-26 | |
11 | exercise_sheet_11.pdf | 2016-02-02 | glyphs.py |
Exam
- Graded oral exam, length 30 minutes in Besprechungszimmer, 6.007, Wegelerstraße 6
- Please do not forget to sign up for the exam via BASIS
- Registration for exam slots, first come first served, via lists at the end of the term
- successful participation in tutorials required for admittance to examination