We may earn an affiliate commission when you visit our partners.
Dr Aidan Wimshurst

Welcome to Part 3 of my Computational Fluid Dynamics (CFD) fundamentals course. In this course, the concepts, derivations and examples from Part 1 and Part 2 are extended to look at unstructured meshes and mesh quality metrics (aspect ratio, non-orthogonality, skewness and Jacobian Determinant). The course starts from first principles and you will rapidly develop a working CFD solution using the Excel sheets and Python source code provided. By the end of the course, you will understand how the CFD equations are discretised for unstructured meshes. This discretisation approach is a natural extension of the discretisation approach that is adopted for structured meshes (which were considered in Part 1 and Part 2). CFD codes which are constructed in this unstructured way (such as ANSYS Fluent, OpenFOAM, Star CCM, Saturne) can handle cells of any size and shape. You will learn about the main quality metrics (aspect ratio, non-orthogonality, skewness, Jacobian Determinant) that are used to assess these meshes, how they are calculated and what they actually mean. For this course, no prior experience is required and no specific CFD code/coding experience is required.   You do not need ANSYS Fluent, OpenFOAM, Star CCM or any other CFD code to use this course.

Enroll now

What's inside

Learning objectives

  • How to setup and structure a working cfd solution code from first principles (using excel, matlab or python)
  • How cfd equations are discretised differently for unstructured meshes
  • How the main mesh quality metrics (aspect ratio, non-orthogonality, skewness, determinant) are calculated
  • The solution of the 2d heat equation from first principles on an unstructured mesh
  • How to calculate the cell volume, face areas and unit normal vectors for skewed and irregular cells

Syllabus

Learn how to use the course and understand the objectives of the course.

A short welcome and introduction to the course

Details of recent updates to the course and version control.

Read more
Learn how the heat diffusion equation can be discretised for unstructured meshes

In this lecture, the finite volume discretisation of the 2D heat diffusion equation is presented for unstructured meshes. This is a slight extension of the finite volume discretisation of the 2D heat diffusion equation for structured meshes which was introduced in the previous course.

In this lecture, a simple method for generating an unstructured mesh is presented. This includes techniques to calculate the cell volume, face area and unit normal vector for skewed and irregular cells that are often present in unstructured meshes.

In this lecture, the example problem of heat diffusion in a 2D plate (with an unstructured mesh) is introduced. All the coefficients are calculated, the matrices are assembled and the equations are solved.

This lecture provides a walk-through of the python source code and excel spreadsheets that are used in Chapter 1.

Learn the main mesh quality metrics, how they are calculated and what they mean.

In this lecture, the main mesh quality metrics that are used by CFD codes for unstructured meshes (aspect ratio, non-orthogonality, Jacobian Determinant and equiangle skewness) are introduced. By the end of this lecture, students will understand how to calculate the main mesh quality metrics and understand what they really mean. 

The example problem for Chapter 2 is introduced in this lecture. Two example cells are used to calculate and demonstrate the mesh quality metrics.

This lecture provides a walk-through of the python source code and excel spreadsheets that are used in Chapter 2.

A short quiz to test your understanding
Unstructured Meshes Quiz
A small message for finishing the course

A brief summary and final thoughts for this course.

Save this course

Save Computational Fluid Dynamics Fundamentals Course 3 to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Computational Fluid Dynamics Fundamentals Course 3 with these activities:
Review Finite Volume Method
Review the fundamentals of the Finite Volume Method to better understand its application to unstructured meshes.
Show steps
  • Review notes and materials on the Finite Volume Method.
  • Work through example problems involving FVM.
  • Focus on the application of FVM to heat transfer problems.
Read 'An Introduction to Computational Fluid Dynamics: The Finite Volume Method'
Study a textbook specifically focused on the Finite Volume Method in the context of Computational Fluid Dynamics.
Show steps
  • Obtain a copy of 'An Introduction to Computational Fluid Dynamics: The Finite Volume Method'.
  • Read the chapters related to unstructured meshes and mesh quality.
  • Work through the example problems and exercises in the book.
Read 'Numerical Computation of Internal and External Flows'
Study a comprehensive textbook on numerical methods to gain a deeper understanding of the underlying principles of CFD.
Show steps
  • Obtain a copy of 'Numerical Computation of Internal and External Flows'.
  • Read the chapters related to finite volume methods and mesh generation.
  • Work through the example problems in the book.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Calculate Mesh Quality Metrics
Practice calculating aspect ratio, non-orthogonality, skewness, and Jacobian determinant for various unstructured mesh cells.
Show steps
  • Create a set of example unstructured mesh cells with varying geometries.
  • Calculate the aspect ratio, non-orthogonality, skewness, and Jacobian determinant for each cell.
  • Compare your results with known values or solutions.
Create a Mesh Quality Visualization
Develop a visualization tool (e.g., using Python with Matplotlib) to display mesh quality metrics on an unstructured mesh.
Show steps
  • Choose a programming language and visualization library.
  • Write code to read mesh data and calculate quality metrics.
  • Create a visualization that displays the metrics on the mesh.
  • Test the visualization with different mesh geometries.
Implement 2D Heat Equation Solver
Build a complete solver for the 2D heat equation on an unstructured mesh using the Finite Volume Method.
Show steps
  • Design the solver architecture and data structures.
  • Implement the finite volume discretization scheme.
  • Implement a linear solver to solve the resulting system of equations.
  • Test the solver with various boundary conditions and mesh geometries.
Contribute to an Open Source CFD Project
Contribute to an open-source CFD project to gain practical experience and learn from experienced developers.
Show steps
  • Identify an open-source CFD project that interests you.
  • Explore the project's codebase and documentation.
  • Identify a bug or feature to work on.
  • Contribute your code and documentation to the project.

Career center

Learners who complete Computational Fluid Dynamics Fundamentals Course 3 will develop knowledge and skills that may be useful to these careers:
Computational Fluid Dynamics Engineer
A Computational Fluid Dynamics Engineer utilizes software to simulate fluid flow and heat transfer, crucial for designing and optimizing systems in aerospace, automotive, and other industries. This role requires a deep understanding of numerical methods and mesh generation. This course is directly applicable as it covers the discretisation of CFD equations for unstructured meshes, the use of mesh quality metrics, and the structuring of working CFD solutions, all essential for a CFD Engineer. Those aspiring to this career will benefit from the practical approach of this course, developing CFD solutions with Excel sheets and Python source code.
CFD Software Developer
CFD Software Developers write and maintain the software used for computational fluid dynamics simulations. These professionals require a deep understanding of numerical methods and data structures. This course is invaluable as it covers the fundamental algorithms used in CFD software, particularly for handling unstructured meshes. Developers can leverage the knowledge of mesh quality metrics and discretisation techniques to improve the accuracy and efficiency of CFD codes. The course's focus on building a CFD solution from first principles helps developers understand and improve existing codebases.
Simulation Engineer
Simulation Engineers develop and run computer simulations to model physical systems. They validate designs across a variety of industries. They often use CFD software extensively. This course directly addresses the core skills needed by Simulation Engineers by teaching how CFD equations are discretised for unstructured meshes and how to calculate mesh quality metrics. Learning how to set up a CFD solution from first principles provides Simulation Engineers with a deeper understanding of the underlying numerical methods of the simulation itself. This course helps improve their ability to create and interpret simulations accurately.
Engineering Consultant
Engineering Consultants provide expert advice and solutions to clients across various industries. They often specialize in areas such as fluid dynamics and heat transfer, using CFD to analyze and optimize systems. A course that provides comprehensive information on discretisation principles may be useful to an Engineering Consultant. Specifically, this course helps them communicate the value and reliability of their consultancy. The course material may improve the ability to explain and defend the approaches used in CFD simulations to clients.
Aerospace Engineer
Aerospace Engineers design, develop, and test aircraft and spacecraft. Many projects rely on computational fluid dynamics to analyze airflow and aerodynamic performance. The knowledge gained from this course regarding unstructured meshes and mesh quality metrics proves valuable when working with complex geometries encountered in aerospace design. Aerospace Engineers can use the material from this course to better understand the CFD simulations employed in their design process. In particular, understanding how CFD equations are discretised for unstructured meshes will help them interpret and validate simulation results.
Thermal Engineer
Thermal Engineers design and analyze thermal systems. They manage heat transfer in various applications, from electronics cooling to power generation. Understanding how CFD equations are discretised for unstructured meshes, as taught in this course, enables Thermal Engineers to model complex geometries and optimize heat transfer performance. The course's practical approach, using Excel and Python, will help Thermal Engineers develop and validate thermal models, leading to more efficient and reliable thermal designs. This career may require a master's degree.
Fluid Mechanics Engineer
Fluid Mechanics Engineers analyze and design systems that involve the flow of fluids. These include pipelines, pumps, and hydraulic systems. The knowledge of unstructured mesh techniques gained from this course helps them model complex geometries and optimize system performance. This course enables Fluid Mechanics Engineers to improve the design and efficiency of systems involving fluid flow. In particular, a deep understanding of mesh quality greatly benefits them by ensuring the reliability of simulation results.
Mechanical Engineer
Mechanical Engineers design and oversee the manufacturing of many different products and systems. CFD plays a role in analyzing fluid flow in various applications, such as heat exchangers, pumps, and pipelines. This course helps build a foundation in unstructured mesh techniques, enabling Mechanical Engineers to tackle complex geometries. Because the course focuses on building a working CFD solution from first principles using tools like Excel and Python, Mechanical Engineers gain practical skills. This translates directly to their ability to analyze and optimize designs involving fluid dynamics.
Automotive Engineer
Automotive Engineers design and develop vehicles and their components. CFD is used to optimize aerodynamics, cooling systems, and engine performance. The knowledge of unstructured meshes gained from this course is beneficial when simulating airflow around complex vehicle shapes. This course enhances the Automotive Engineer's ability to improve vehicle designs through accurate CFD simulations. In particular, the course's emphasis on mesh quality metrics helps ensure the reliability of simulation results.
Hydraulic Engineer
Hydraulic Engineers design and analyze systems that control and manage water resources. CFD is used to model river flows, dam performance, and coastal erosion. The unstructured mesh techniques taught in this course are valuable for simulating complex terrains and hydraulic structures. This course enhances Hydraulic Engineers' ability to predict and manage water resources effectively. Furthermore, the course's focus on mesh quality metrics helps ensure the accuracy and reliability of simulation results.
Energy Engineer
Energy Engineers work to improve energy efficiency and develop sustainable energy solutions. CFD is used to optimize the design of renewable energy systems, such as wind turbines and solar thermal collectors. This course is beneficial as it helps build a foundation in unstructured mesh techniques, enabling Energy Engineers to simulate complex geometries and optimize system performance. By understanding how CFD equations are discretised, Energy Engineers can improve the efficiency and sustainability of energy systems.
Biomedical Engineer
Biomedical Engineers apply engineering principles to solve problems in medicine and healthcare. CFD is used to model blood flow in arteries, airflow in lungs, and drug delivery systems. The knowledge of unstructured mesh techniques gained from this course is useful when simulating the complex geometries of biological systems. Taking this course will enable Biomedical Engineers to improve the design and effectiveness of medical devices and therapies. This career often requires a master's degree.
Research Scientist
Research Scientists conduct experiments and develop theories related to fluid dynamics and heat transfer. They publish their findings in academic journals and use them to advance scientific knowledge. Research Scientists can use the material from this course to understand advanced CFD techniques, particularly those related to unstructured meshes. The course provides a solid foundation for developing and validating new CFD models. A Research Scientist wanting to work on novel CFD methods may find the course contents particularly relevant.
Environmental Engineer
Environmental Engineers work to protect the environment and human health through engineering solutions. CFD is used to model air and water pollution dispersion, as well as to optimize wastewater treatment processes. Environmental Engineers may find this course useful, covering topics such as unstructured mesh techniques and discretisation methods. This empowers them to improve the accuracy of their simulations. In particular, understanding how CFD equations are discretised for unstructured meshes is very important.
Data Scientist
Data Scientists analyze large datasets to extract meaningful insights and build predictive models. In some fields, such as engineering and manufacturing, a Data Scientist might work with data generated from CFD simulations. Understanding the underlying principles of CFD, including mesh generation and discretisation techniques, allows data scientists to better interpret and analyze simulation results. A Data Scientist working in these areas needs to validate models based on CFD results. This helps them develop more accurate and reliable models.
Civil Engineer
Civil Engineers design, construct, and maintain infrastructure projects, including bridges, buildings, and transportation systems. CFD is used to analyze wind loads on structures and to optimize drainage systems. While not always a core skill, Civil Engineers may find this course useful, as it covers topics such as unstructured mesh techniques and discretisation methods, improving the accuracy of particular Civil Engineering simulations. Understanding how CFD equations are discretised for unstructured meshes is particularly beneficial. This course may assist with a subspecialty of Civil Engineering that utilizes heat flow analyses.
Data Analyst
A Data Analyst interprets data to discover patterns and trends, helping organizations make better decisions. In fields like engineering and manufacturing, Data Analysts might work with data generated from CFD simulations. Understanding the fundamental principles of CFD, including mesh generation and discretisation techniques, allows Data Analysts to better interpret simulation results. This course may be useful for anyone wanting to validate models based on CFD results, helping organizations increase the quality of their simulations. This course may assist in the validation of models.

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Computational Fluid Dynamics Fundamentals Course 3.
Provides a clear and concise introduction to the Finite Volume Method, with a focus on its application to CFD. It covers the fundamentals of discretization, mesh generation, and solution techniques. This book is particularly useful for understanding the practical aspects of implementing CFD solvers. It is commonly used as a textbook for introductory CFD courses.
Provides a comprehensive overview of numerical methods for fluid dynamics, including detailed explanations of finite volume methods. It valuable resource for understanding the theoretical underpinnings of CFD. While not strictly required, it offers a deeper dive into the mathematical foundations. This book is often used as a graduate-level textbook.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser