$$ \newcommand{\half}{\frac{1}{2}} \newcommand{\tp}{\thinspace .} \newcommand{\uex}{{u_{\small\mbox{e}}}} \newcommand{\Oof}[1]{\mathcal{O}(#1)} \newcommand{\x}{\boldsymbol{x}} \renewcommand{\u}{\boldsymbol{u}} \newcommand{\dfc}{\alpha} % diffusion coefficient \newcommand{\Ix}{\mathcal{I}_x} \newcommand{\Iy}{\mathcal{I}_y} \newcommand{\If}{\mathcal{I}_s} % for FEM \newcommand{\Ifd}{{I_d}} % for FEM \newcommand{\Ifb}{{I_b}} % for FEM \newcommand{\sequencei}[1]{\left\{ {#1}_i \right\}_{i\in\If}} \newcommand{\basphi}{\varphi} \newcommand{\baspsi}{\psi} \newcommand{\refphi}{\tilde\basphi} \newcommand{\xno}[1]{x_{#1}} \newcommand{\dX}{\, \mathrm{d}X} \newcommand{\dx}{\, \mathrm{d}x} \newcommand{\ds}{\, \mathrm{d}s} $$

 

 

 

Solving nonlinear ODE and PDE problems

Hans Petter Langtangen [1, 2]

[1] Center for Biomedical Computing, Simula Research Laboratory
[2] Department of Informatics, University of Oslo

2016


Note: Preliminary version (expect typos).

Table of contents

Introduction of basic concepts
      Linear versus nonlinear equations
      A simple model problem
      Linearization by explicit time discretization
      Exact solution of nonlinear algebraic equations
      Linearization
      Picard iteration
      Linearization by a geometric mean
      Newton's method
      Relaxation
      Implementation and experiments
      Generalization to a general nonlinear ODE
      Systems of ODEs
Systems of nonlinear algebraic equations
      Picard iteration
      Newton's method
      Stopping criteria
      Example: A nonlinear ODE model from epidemiology
Linearization at the differential equation level
      Explicit time integration
      Backward Euler scheme and Picard iteration
      Backward Euler scheme and Newton's method
      Crank-Nicolson discretization
Discretization of 1D stationary nonlinear differential equations
      Finite difference discretization
      Solution of algebraic equations
      Galerkin-type discretization
      Picard iteration defined from the variational form
      Newton's method defined from the variational form
Multi-dimensional PDE problems
      Finite element discretization
      Finite difference discretization
      Continuation methods
Exercises
      Problem 1: Determine if equations are nonlinear or not
      Exercise 2: Derive and investigate a generalized logistic model
      Problem 3: Experience the behavior of Newton's method
      Problem 4: Compute the Jacobian of a \( 2\times 2 \) system
      Problem 5: Solve nonlinear equations arising from a vibration ODE
      Exercise 6: Find the truncation error of arithmetic mean of products
      Problem 7: Newton's method for linear problems
      Exercise 8: Discretize a 1D problem with a nonlinear coefficient
      Exercise 9: Linearize a 1D problem with a nonlinear coefficient
      Problem 10: Finite differences for the 1D Bratu problem
      Problem 11: Integrate functions of finite element expansions
      Problem 12: Finite elements for the 1D Bratu problem
      Exercise 13: Discretize a nonlinear 1D heat conduction PDE by finite differences
      Exercise 14: Use different symbols for different approximations of the solution
      Exercise 15: Derive Picard and Newton systems from a variational form
      Exercise 16: Derive algebraic equations for nonlinear 1D heat conduction
      Exercise 17: Differentiate a highly nonlinear term
      Exercise 18: Crank-Nicolson for a nonlinear 3D diffusion equation
      Exercise 19: Find the sparsity of the Jacobian
      Problem 20: Investigate a 1D problem with a continuation method
Bibliography
Appendix: Symbolic nonlinear finite element equations
      Finite element basis functions
      The group finite element method
      Numerical integration of nonlinear terms by hand
      Finite element discretization of a variable coefficient Laplace term

Read »