# lecture NMMO403

## Something to read...

- Computational Differential Equations, K. Eriksson et al.
- ssh, remote access [web clusteru ↵]
- Introduction to bash shell, bash tutorial ↵
- emacs reference card
- vim reference card
**What every computer scientist should know about floating-point arithmetic**(Goldberg, 1991)- Git book,progit book in czech
- [gitlab service in karlin ↵], [Faculty gitlab service ↵]
- Netlib (Linear algebra software overview by J. Dongarra)

### FEniCS

- Automated Solution of Differential Equations by the Finite Element Method: The FEniCS Book, A. Logg et al. [full pdf]
- FEniCSx/FEniCS - FEniCS project
- Official FEniCS tutorial, Refference documetnation: 2019.1.0 - python
- → Our own FEniCS tutorial
- Behind FEniCS... Petsc, trilinos
- Next developement... FEniCSx, Firedrake
- On top of FEniCS... CBC, RBniCS, multiphenics, FEniCS shells, phaseflow-fenics, ...
- Other amazing projects: Freefem, Deal.ii, Elmer, openFOAM, MFEM, MoFEM, ...

## Syllabus...

#### Lecture 0 - introduction to python

- basic ideas of Python and how to use it
- using SciPy and NumPy [scipy web ↵]
- [numpy for matlab users ↵]
- basic
`BLAS`

operations in python and numpy [numpy-quickstart ↵] - matrix--vector multiplication

#### Lecture 1 - introduction to FEniCS

- Lapalce on unit square

#### Lecture 2 - Heat equation

- timedependent problems

#### Lecture 3 - convection-diffusion equation

- SUPG and IP stabilizations
- GLS formulation
- image as initial data

#### Lecture 4 - Navier-Stokes equation

- flow around cylinder benchmark

#### Lecture 5 - Navier-Stokes equation

- flow around cylinder benchmark, asymptotic tests

#### Lecture 6 - solvers

- problem and solver clases
- linear algebra backends

#### Lecture 7 - elasticity

- linear and nonlinear elasticity

## Exam tasks pool....

- Anisotropic diffusion benchmark tests [ pdf ]
- NIST set of 2D simple benchmarks with various difficulties [ pdf ]
- DFG benchmark for incompressible Navier-Stokes equations (DFG) [ pdf ]
- The Aerodynamics of Letters
- Heated cavity benchmark (MIT) [ pdf ] or Rayleigh–Bénard convection [ pdf]
- Rising Bubble benchmark [ pdf ]
- Levelset implementation for free surface problems.

D. Lindbo, Finite Element Computations for a Conservative Level Set Method Applied to Two-Phase Stokes Flow, 2006. - Lava lamp simulation, another Lava lamp setup
- Various hydrodynamic problems: Flow in Tesla valve, wikipedia, Optimization of Tesla valve

Fluid control devices, Fluidics, Fluid computers, FLODAC: a pure fluid digital computer - Flow in Venturi pipe
- Eigenvalues and musical instruments or here
- Image processing: Noise removal by PDE, Image segmentation by level-set method
- Blankenbach benchmark for mantle convection
- Elder problem - flow in porous media
- Pattern formation problems (Grey-Scott model) Complex Patterns in a Simple System, Reaction-Diffusion by the Gray-Scott Model: Pearson's Parametrization
- Epidemic models with spatial diffusion wikipedia: Reaction–diffusion system [ Localized outbreaks in an S-I-R model with diffusion, A fully adaptive numerical approximation for a two-dimensional epidemic model with nonlinear cross-diffusion ]