Following on from an introduction to Computational Fluid Dynamics (CFD) in DEN331, in this course we deepen our knowledge in various areas from basic concepts of computational mathematics such as approximation, classification of partial-differential equations, and boundary conditions to numerical solution methods. We learn to analyse the stability, dissipation and dispersion properties of finite-difference and finite-volume discretisations and apply this knowledge for solution of convection-diffusion equations. We discuss the various aspects of modelling turbulence. In the accompanying laboratory, we learn to solve the standard partial differential problems in Matlab, generate CFD meshes, and solve viscous flow problems on these meshes using commercial software such as ANSYS Fluent and Star CCM. In each case, we learn to perform the relevant analysis of the quality of our simulations.