|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/building-fluid-solvers-for-computer-graphics-part-2/
课程评论:没有评论
Coursera 课程《Houdini 流体求解器构建 - 第二部分》在线课程内容摘要: 本课程是构建 Houdini 流体求解器系列的第二部分,重点介绍实现流体模拟的核心技术,并通过伪代码或步骤示例简化实现过程。课程旨在帮助学员理解构成流体求解器的基础知识和概念,为独立编写简单的流体求解器打下基础,并为进一步探索更复杂的模拟技术(如 FLIP 求解器、火焰和高分辨率烟火模拟)提供起点。 **核心学习内容:** * **流体模拟的数学基础:** 涵盖描述流体行为的常微分方程(ODEs)和偏微分方程(PDEs),以及相关的线性代数和矩阵运算。 * **Navier-Stokes 方程:** 深入浅出地讲解 Navier-Stokes 方程的推导及其在流体模拟中的应用,并讨论边界条件的处理。 * **离散化技术:** 介绍 MAC 网格(MAC Grid)作为一种高效的空间离散化方法,以及时间离散化的基本概念。 * **平流(Advection):** 重点讲解 Semi-Lagrangian 方案,这是一种有效的平流处理方法,并探讨其可能带来的人工扩散问题。 * **不可压缩性处理:** 详解流体模拟中至关重要的不可压缩性条件的实现,以及如何满足边界条件,这通常涉及求解线性系统。 * **Houdini 简单烟雾求解器实践:** 在课程的最后一章,将结合前面学到的所有技术,展示如何在 Houdini 中使用 Microsolver DOP 系统构建一个简单的烟雾求解器。 **课程亮点:** * **简化方法:** 将复杂的数学和技术分解成易于理解的概念,并提供伪代码指导。 * **实践导向:** 通过 Houdini 烟雾求解器的实例,将理论知识转化为实际操作。 * **进阶铺垫:** 为进一步学习更复杂的流体模拟算法和技术奠定坚实的基础,使学习者能够无障碍地阅读相关文献和论文。 * **概念性理解:** 强调的是理解核心原理,而不是提供一个完整的商业级求解器代码(这通常是大型团队和大量时间才能完成的)。 **本课程不包含:** * 构建完整的商业级流体求解器代码。 * 过于深入或详尽的算法优化细节。 总而言之,本课程是踏入流体模拟领域,特别是使用 Houdini 构建自定义求解器的绝佳起点,它提供了学习市场主流流体求解器背后核心概念和实现思路的清晰路径。
Keywords that conclude what you will learn here: Core techniques to make a fluid sim, simple codes or steps to use them in your solver , simple smoke solver in Houdini by microsolvers.In this second course in the series we will talk about fluids and how to simulate a fluid with equations which seems quite difficult but as promised, we will make things simple as possible. The math you studied in Part 1 will make things a lot easier. This course is just a start point for you to start your own code. To be more apparent, in this course, there are examples of codes or illustrated steps for different techniques used in fluid solvers (code are in the form pseudocodes which can be implemented in any programming language you use) We won't talk about a full code of a full commercial solver because this takes a lot of time and effort of a company composed of a large team learning deeper and deeper, trying new techniques and algorithms then finally convert them into thousands of lines of codes. After taking this course you can begin your code to make a simple solver on your own using the techniques we described, but again, a complex Realflow-like solver that can handle large simulations with a lot of options to edit the simulation take ages to be written. After finishing this course, it's is gonna be the beginning of your road to explore more complex techniques like FLIP solvers, flames and high-res smoke and fire sims. as in this course, you will understand the core knowledge and concepts that will make you able to go deeper and learn more about different techniques in a lot of paper, books on the Internet and use them in your code without problems in understanding the complex context used by professionals. It's the first step also to create and develop your own simulation techniques and paper one day using the math and fluid mechanics you learnt here.So, in conclusion, here you will learn the core concepts used in every fluid simulator in the market, you will learn by pseudocode examples or by understanding the explanation of the techniques how to write a code in any language to use these techniques to write a simple fluid solver. A greatly important thing that the last chapter includes the full explanation of how the simple smoke solver in Houdini is created by the techniques we learnt by using microsolver DOP system.This series don't cover writing a full code of a fluid solver which is not possible to be covered in two or three courses! A full team usually works on this. However, this series will give you the main ideas and the main body of the code used in building the most common fluid solvers!What you will be learning in each chapterChapter 1: ODEs, PDEs and matricesWe will talk about the kinds of equations we will use to describe fluids which are ODEs and PDEs. We will talk also about some linear algebra and matrix operations.Chapter 2: Fluid EquationsHere, you will see one of the coolest equations that a lot of people love ( though they are scary), Navier - Stokes Equations. We will learn how they are derived and more! All of this in simple ways. We will also talk about boundary conditions.Chapter 3: MAC Grids, discretization in time and spaceBefore you solve the equations, you should learn how to discretize different quantities in time and space. We will talk about an efficient way to discretize in space called MAC Grid.Chapter 4: AdvectionWe will talk about efficient way to solve the advection part of our equations. Considering Semi Lagrangian scheme as the main way we will use,we will talk about artificial diffusion as a result of it.Chapter 5: Making fluid incompressibleThis is the hear of fluid simulations! This chapter will contain a lot of information. We will talk about how to apply the incompressibility condition and satisfy boundary conditions. This will consider solving a linear system too.Chapter 6: Simple Smoke Solver.Now it's time to see how all of this is applied in Houdini! We will see how a simple smoke solver is done with microsolvers. This is the best way to start coding your own code after learning all of these definitions and seeing how to apply in microsolvers.