2.29 | Spring 2015 | Graduate

Numerical Fluid Mechanics


Course Meeting Times

Lectures: Two sessions / week, 1.5 hours / session

Recitations: One session / week, 1 hour / session

Students are strongly encouraged to attend lectures and recitations.


This course is an introduction to numerical methods and MATLAB®: Errors, condition numbers and roots of equations. Topics covered include Navier-stokes; direct and iterative methods for linear systems; finite differences for elliptic, parabolic and hyperbolic equations; Fourier decomposition, error analysis and stability; high-order and compact finite-differences; finite volume methods; time marching methods; Navier-stokes solvers; grid generation; finite volumes on complex geometries; finite element methods; spectral methods; boundary element and panel methods; turbulent flows; boundary layers; and Lagrangian coherent structures (LCSs).


18.075 Advanced Calculus for Engineers

and any of these courses in fluid dynamics:

2.006 Thermal-Fluids Engineering II

2.06 Fluid Dynamics

2.016 Hydrodynamics

2.20 Marine Hydrodynamics

2.25 Advanced Fluid Mechanics


  1. To introduce and develop the main approaches and techniques which constitute the basis of numerical fluid mechanics for engineers and applied scientists.
  2. To familiarize students with the numerical implementation of these techniques and numerical schemes, so as to provide them with the means to write their own codes and software, and so acquire the knowledge necessary for the skillful utilization of computational fluid dynamics (CFD) packages or other more complex software.
  3. To cover a range of modern approaches for numerical and computational fluid dynamics, without entering all these topics in detail, but aiming to provide students with a general knowledge and understanding of the subject, including recommendations for further studies.


Homework Assignments (5% x 6 Assignments) 30%
Quizzes (2 Quizzes) 40%
Final Project 30%

Homework Assignments

Six problem sets will be given. Homework assignments will be posted on the course. They will be due one to two weeks later, depending on the class schedule and holidays. To receive credit, you must hand in your solutions on the due date, before 5 PM. No late submissions will be accepted without prior permission.

Solutions to the assignments will normally be available after 5 PM on the due date, and will be posted on the course web page. Graded problem sets will be available in class or upon request; at the next class or within one week after the problem set’s due date.

While some assignments need a considerable amount of coding we will not always request that you attach or provide your codes. However, students must be ready to present the teaching stuff with a clear and operational code.

Collaboration Policy

We encourage students to work with each other on the homework assignments, but we do not condone copying. Make your own honest collaborative efforts to contribute to the solution and, based on your own understanding, write up the answers in your own words and style. If you worked closely with other students on a given homework assignment and feel that your understanding was substantially influenced by the mutual learning process, you should cite the names of those students with whom you worked.

Coding and Software

MATLAB and Python are selected as the course basic coding software. You can use other software with prior approval but you may have a tougher time. While MATLAB and Python might not be the fastest option for “Run Time,” it often helps to concentrate on the algorithms themselves rather than on the “coding” of basic and elementary steps.

MATLAB software is required to run the .m files found on this course site. Other files can be viewed with text readers or common software.


There will be two quizzes during the term. These will be closed-book. The necessary material and equation sheets will be provided prior to each quiz. Review sessions will be conducted in the evening, a few days before each quiz.

Final Project

There will be a final project for this class. Students can select the topic of their project in consultation with the instructor. Possible projects include:

  1. Comprehensive reviews of material not covered in detail in class, with some numerical examples;
  2. Specific fluid-related problems or questions that are numerically studied or solved by the applications of approaches, methods or schemes covered in class;
  3. A combination of 1) and 2).

Projects will be due at the end of term. We plan to have a final session where all students will make a presentation of their projects to the whole class and staff. We have found that such presentations provide an excellent means for additional learning and sharing.


Primary Textbooks

Chapra, Steven, and Raymond Canale. Numerical Methods for Engineers. 7th ed. McGraw–hill Higher Education, 2014. ISBN: 9780073397924.

Ferziger, Joel H., and Milovan Peric. Computational Methods for Fluid Dynamics. 3rd ed. Springer, 2013. ISBN: 9783540420743.

Cebeci, Tuncer, Jian P. Shao, et al. Computational Fluid Dynamics for Engineers: From Panel to Navier-stokes Methods with Computer Programs. Springer, 2005. ISBN: 9783540244516.

Fluid Dynamics References

Kundu, Pijush K., Ira M. Cohen, and David R. Dowling. Fluid Mechanics. 6th ed. Academic Press, 2015. ISBN: 9780124059351. [Preview with Google Books]

White, Frank. Fluid Mechanics. 7th ed. McGraw-hill Education, 2010. ISBN: 9780077422417.

Other Useful Computational Fluid Dynamics References

Lomax, Harvard, Thomas H. Pulliam, and David W. Zingg. Fundamentals of Computational Fluid Dynamics. Springer, 2004. ISBN: 9783540416074.

Wesseling, Pieter. Principles of Computational Fluid Dynamics. Springer, 2000. ISBN: 9783540678533.

Versteeg, H., and W. Malalasekera. An Introduction to Computational Fluid Dynamics: The Finite Volume Method. 2nd ed. Prentice Hall, 2007. ISBN: 9780131274983.

Durran, Dale R. Numerical Methods for Fluid Dynamics: With Applications to Geophysics. 2nd ed. Springer, 2010. ISBN: 9781441964113.

Griebel, Michael, Thomas Dornsheifer, and Tilman Neunhoeffer. Numerical Simulation in Fluid Dynamics: A Practical Introduction. SIAM: Society for Industrial and Applied Mathematics, 1997. ISBN: 9780898713985. [Preview with Google Books]

Chung, T. J. Computational Fluid Dynamics. 2nd ed. Cambridge University Press, 2010. ISBN: 9780521769693. [Preview with Google Books]

Karniadakis, George Em, and Spencer J. Sherwin. Spectral / hp Element Methods for Computational Fluid Dynamics. 2nd ed. Oxford University Press, 2005. ISBN: 9780198528692.

Pozrikidis, Constantine. Introduction to Finite and Spectral Element Methods Using MATLAB. 2nd ed. Chapman and Hall / CRC, 2014. ISBN: 9781482209150. [Preview with Google Books]

Roache, Patrick J. Fundamentals of Computational Fluid Dynamics. Hermosa Publishers, 1998. ISBN: 9780913478097.

Lapidus, Leon, and George F. Pinder. Numerical Solution of Partial Differential Equations in Science and Engineering. Wiley-interscience, 1999. ISBN: 9780471359449.

Fletcher, C. A. J. Computational Techniques for Fluid Dynamics, Vol. 1: Fundamental and General Techniques. Springer, 2013. ISBN: 9780387530581.
[Preview with Google Books]

Wendt, John. Computational Fluid Dynamics: An Introduction. Springer, 2008. ISBN: 9783540850557. [Preview with Google Books]

Löhner, Rainald. Applied Computational Fluid Dynamics Techniques: An Introduction Based on Finite Element Methods. Wiley, 2008. ISBN: 9780470519073.

Numerical Linear Algebra Reference

Trefethen, Lloyd N., and David Bau III. Numerical Linear Algebra. SIAM: Society for Industrial and Applied Mathematics, 1997. ISBN: 9780898713619. [Preview with Google Books]

Course Info

As Taught In
Spring 2015
Learning Resource Types
Lecture Notes
Programming Assignments