# 401-0674-00L Numerical Methods for Partial Differential Equations

Semester | Spring Semester 2016 |

Lecturers | R. Hiptmair |

Periodicity | yearly recurring course |

Language of instruction | English |

Comment | Not meant for BSc/MSc students of mathematics. |

Abstract | Derivation, properties, and implementation of fundamental numerical methods for a few key partial differential equations: convection-diffusion, heat equation, wave equation, conservation laws. Implementation in Python in one dimension and in C++ in 2D. |

Learning objective | Main skills to be acquired in this course: * Ability to implement advanced numerical methods for the solution of partial differential equations efficiently * Ability to modify and adapt numerical algorithms guided by awareness of their mathematical foundations * Ability to select and assess numerical methods in light of the predictions of theory * Ability to identify features of a PDE (= partial differential equation) based model that are relevant for the selection and performance of a numerical algorithm * Ability to understand research publications on theoretical and practical aspects of numerical methods for partial differential equations. * Skills in the efficient implementation of finite element methods on unstructured meshes. This course is neither a course on the mathematical foundations and numerical analysis of methods nor an course that merely teaches recipes and how to apply software packages. |

Content | 1 Case Study: A Two-point Boundary Value Problem 1.1 Introduction 1.2 A model problem 1.3 Variational approach 1.4 Simplified model 1.5 Discretization 1.5.1 Galerkin discretization 1.5.2 Collocation [optional] 1.5.3 Finite differences 1.6 Convergence 2 Second-order Scalar Elliptic Boundary Value Problems 2.1 Equilibrium models 2.1.1 Taut membrane 2.1.2 Electrostatic fields 2.1.3 Quadratic minimization problems 2.2 Sobolev spaces 2.3 Variational formulations 2.4 Equilibrium models: Boundary value problems 3 Finite Element Methods (FEM) 3.1 Galerkin discretization 3.2 Case study: Triangular linear FEM in two dimensions 3.3 Building blocks of general FEM 3.4 Lagrangian FEM 3.4.1 Simplicial Lagrangian FEM 3.4.2 Tensor-product Lagrangian FEM 3.5 Implementation of FEM in C++ 3.5.1 Mesh file format (Gmsh) 3.5.2 Mesh data structures (DUNE) 3.5.3 Assembly 3.5.4 Local computations and quadrature 3.5.5 Incorporation of essential boundary conditions 3.6 Parametric finite elements 3.6.1 Affine equivalence 3.6.2 Example: Quadrilaterial Lagrangian finite elements 3.6.3 Transformation techniques 3.6.4 Boundary approximation 3.7 Linearization [optional] 4 Finite Differences (FD) and Finite Volume Methods (FV) [optional] 4.1 Finite differences 4.2 Finite volume methods (FVM) 5 Convergence and Accuracy 5.1 Galerkin error estimates 5.2 Empirical Convergence of FEM 5.3 Finite element error estimates 5.4 Elliptic regularity theory 5.5 Variational crimes 5.6 Duality techniques [optional] 5.7 Discrete maximum principle [optional] 6 2nd-Order Linear Evolution Problems 6.1 Parabolic initial-boundary value problems 6.1.1 Heat equation 6.1.2 Spatial variational formulation 6.1.3 Method of lines 6.1.4 Timestepping 6.1.5 Convergence 6.2 Wave equations [optional] 6.2.1 Vibrating membrane 6.2.2 Wave propagation 6.2.3 Method of lines 6.2.4 Timestepping 6.2.5 CFL-condition 7 Convection-Diffusion Problems 7.1 Heat conduction in a fluid 7.1.1 Modelling fluid flow 7.1.2 Heat convection and diffusion 7.1.3 Incompressible fluids 7.1.4 Transient heat conduction 7.2 Stationary convection-diffusion problems 7.2.1 Singular perturbation 7.2.2 Upwinding 7.3 Transient convection-diffusion BVP 7.3.1 Method of lines 7.3.2 Transport equation 7.3.3 Lagrangian split-step method 7.3.4 Semi-Lagrangian method 8 Numerical Methods for Conservation Laws 8.1 Conservation laws: Examples 8.2 Scalar conservation laws in 1D 8.3 Conservative finite volume discretization 8.3.1 Semi-discrete conservation form 8.3.2 Discrete conservation property 8.3.3 Numerical flux functions 8.3.4 Montone schemes 8.4 Timestepping 8.4.1 Linear stability 8.4.2 CFL-condition 8.4.3 Convergence 8.5 Higher order conservative schemes [optional] 8.5.1 Slope limiting 8.5.2 MUSCL scheme 8.6. FV-schemes for systems of conservation laws [optional] |

Lecture notes | Lecture documents and classroom notes will be made available to the audience as PDF. |

Literature | Chapters of the following books provide SUPPLEMENTARY reading (Detailed references in course material): * D. Braess: Finite Elemente, Theorie, schnelle Löser und Anwendungen in der Elastizitätstheorie, Springer 2007 (available online) * S. Brenner and R. Scott. Mathematical theory of finite element methods, Springer 2008 (available online) * A. Ern and J.-L. Guermond. Theory and Practice of Finite Elements, volume 159 of Applied Mathematical Sciences. Springer, New York, 2004. * Ch. Großmann and H.-G. Roos: Numerical Treatment of Partial Differential Equations, Springer 2007 * W. Hackbusch. Elliptic Differential Equations. Theory and Numerical Treatment, volume 18 of Springer Series in Computational Mathematics. Springer, Berlin, 1992. * P. Knabner and L. Angermann. Numerical Methods for Elliptic and Parabolic Partial Differential Equations, volume 44 of Texts in Applied Mathematics. Springer, Heidelberg, 2003. * S. Larsson and V. Thomée. Partial Differential Equations with Numerical Methods, volume 45 of Texts in Applied Mathematics. Springer, Heidelberg, 2003. * R. LeVeque. Finite Volume Methods for Hyperbolic Problems. Cambridge Texts in Applied Mathematics. Cambridge University Press, Cambridge, UK, 2002. However, study of supplementary literature is not important for for following the course. |

Prerequisites / Notice | Mastery of basic calculus and linear algebra is taken for granted. Familiarity with fundamental numerical methods (solution methods for linear systems of equations, interpolation, approximation, numerical quadrature, numerical integration of ODEs) is essential. Important: Coding skills in MATLAB and C++ are essential. Homework asssignments involve substantial coding, partly based on a C++ finite element library. The written examination will be computer based and will comprise coding tasks. |