Fundamentals of Computational Fluid Dynamics. In view of the increasing role of Computational Methods in Fluid Mechanics and the advent of advanced commercial software providing numerical solutions to flow problem, this course emphasizes the essential understanding of the mathematics of development and analysis of computer models for the critical evaluation of results in terms of accuracy and physical relevance. After the course the student is able to.
- Distinguish the physical aspects of a flow described by the Navier Stokes equations that are represented by the advection diffusion equation and those represented by the Laplace equation, and understand why these scalar problems are good model problems characterizing the behavior of the full system of the Navier why these model problems represent the character of the entire system of equations.
- Analyze schemes for the integration in time in terms of stability and accuracy.
- Solve characteristic linear and nonlinear hyperbolic model equations (advection equation, Burgers’ equation and 1D compressible Euler equations) and explain the role of artificial dissipation in numerical schemes.
- Carry out a determinant analysis of the discretization of elliptic systems and explain why a staggered discretization is preferable. The model equations to do this are the Cauchy-Riemann equations.
- Solve the odd-even decoupling problem on collocated grids by mimicking the staggered discretization via the Rhie-Chow approach.
- •Explain and discuss relevant issues of basic CFD solver development.
- Understand the basics of turbulence modeling in CFD.
By means of several model problems and characteristic equations the basic knowledge regarding the numerical solution of fluid mechanics problems is taught. Relevant aspects are elliptic and hyperbolic behavior, systems of equations, discretization, accuracy and stability. This knowledge provides the capability to interpret and understand numerical solutions to complex flow problems. The philosophy of this course is that the student will only be able to master these topics by actually doing it himself. This implies that programming skills (Matlab, Python, or any other programming language) are an absolute necessity for this course.