Course Coordinator: 
Marco Edoardo Rosti
Computational Mechanics

Numerical solutions to partial differential equations have wide application in many areas of physics, mechanics, engineering, and applied mathematics.  Learn different techniques for solving elliptic, parabolic and hyperbolic  equations, such as finite differences and finite volumes. Discuss possibilities and limitations of numerical techniques. Evaluate and comment on the stability and convergence of these numerical methods. Explore systems of partial differential equations and the Navier-Stokes equations. Use Python or MATLAB coding in weekly exercise sessions to numerically solve diffusion, convection and transport problems in multiple dimensions.

Course Content: 

Revision of numerical differentiation and integration.
Classification of PDE - elliptic, parabolic and hyperbolic equations.
Introduction to Python/MATLAB.
Elliptic equations.
Finite difference method, convergence and stability.
Parabolic equations.
Iterative methods.
Finite volume method.
Analogy with finite differences.
Hyperbolic equations.
Method of characteristics.
System of partial differential equations.
Navier-Stokes equations
Note on multiphase flows.
Final overview and questions

Course Type: 

Weekly exercise solutions (60%), Final exam (40%)

Text Book: 
Reference Book: 

Smith, Numerical solution of partial differential equations: Finite Difference methods
Ferziger and Peric, Computational Methods for Fluid Dynamics
Quarteroni, Numerical Models for Differential Problems

Prior Knowledge: 
Students should have a general knowledge of partial differential equations. such as from the course B28. A basic knowledge of Python, MATLAB or any other programming language is preferred but not essential.