首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >初学者指南自己的CFD代码-二维欧拉方程

初学者指南自己的CFD代码-二维欧拉方程
EN

Stack Overflow用户
提问于 2011-10-27 08:03:09
回答 4查看 5.1K关注 0票数 0

你知道一个好的,特别容易的指南来编写自己的计算流体动力学解算器,用于二维欧拉方程吗?我只是想了解像Fluent这样的商业软件在做什么。当它足够简单时,我想向一些朋友展示如何做到这一点并编写代码。

不幸的是,我无法找到如何将此http://en.wikipedia.org/wiki/Euler_equations_%28fluid_dynamics%29转换为数字应用程序。

以前有人这么做过吗?任何帮助我们都很感激,

安德烈亚斯

EN

回答 4

Stack Overflow用户

发布于 2011-10-27 08:15:32

是的,很多人以前都这么做过。

诀窍是把质量、动量和能量的守恒定律写成积分方程,然后把它们变成矩阵方程,这样你就可以用数值方法求解它们。变换过程通常涉及到使用简单的形状离散化控制体积,例如二维的三角形和四边形,三维的四面体和砖块,并假设相关变量在形状中的分布。

如果问题是暂时的,你需要知道相当多关于线性代数和数值积分的知识。

有几种技术可以做到这一点:有限差分,有限元和边界元(如果存在合适的格林函数)。

这不是微不足道的。你会想要读到下面这样的内容:

http://www.amazon.com/Numerical-Transfer-Hemisphere-Computational-Mechanics/dp/0891165223

票数 3
EN

Stack Overflow用户

发布于 2011-12-11 00:56:01

这本书:

http://www.amazon.com/Computational-Fluid-Dynamics-John-Anderson/dp/0070016852

是对编写CFD代码所需内容的一个相当直接、简单的描述。它适合于本科生水平的入门课程,有更多的实际例子而不是理论。

票数 3
EN

Stack Overflow用户

发布于 2017-11-25 04:00:41

你6岁的问题在所有计算流体动力学(CFD)新手中仍然相当常见(“这能有多难?”)。然而,在这个阶段,必须小心不要轻视求解给定方程系统背后的数学。

对于那些刚接触(或对CFD感兴趣)的人-

在开始考虑编码之前,重要的是要了解您要解决的方程的性质。椭圆问题(如势流的泊松解算器)与双曲型系统(如Euler方程)有很大不同,在双曲型系统中,信息以不同的波模式在数值域中“传播”。这是我的第一点,

1.了解系统的性质并学习方程-在这一步中,你需要阅读有关偏微分方程的数学教科书,并知道如何对不同的方程进行分类。(请参阅Farlow的《科学家和工程师的偏微分方程》,或重温你的本科数学课程。)

学习线性代数--我所知道的最好的专家,对线性代数有扎实的基础。

转到双曲问题的特定情况,例如Euler方程

CFD3.阅读空间和时间离散化-这一点对于刚接触的人来说理解得较少。由于信息在双曲问题中以确定的方向和速度传播,因此您不能任意地discretize您的方程。为此,您需要理解黎曼问题的概念,即给定给定时间两个状态之间的不连续界面,系统是如何演变的?现代有限体积方法,使用空间离散化,复制信息在空间和时间中通过模拟传播的方式。这称为upwinding。阅读Toro的关于黎曼解算器的书,可以很好地介绍上行。

4.理解稳定性的概念-并不是所有的离散化和time-integration方法都会导致一个稳定的解决方案。理解限制时间步长(CFL-condition)的概念。如果你不遵循上升风的规律,就很难得到稳定的解决方案。

在这一点上,您将对CFD代码中包含的内容有了更清晰的了解,并且您可以开始考虑使用哪种语言进行编码。为了提高计算速度和并行化,最广泛使用的CFD代码都是用C或Fortran编写的。但是,如果您打算编写代码只是为了学习,则可以使用Matlab或Python,使用它们不会那么令人沮丧。我还应该提到,编写2D Euler求解器是航空航天工程新研究生的典型家庭作业问题,所以如果成功,请尝试谦虚和开放地学习。

对于任何正在研究CFD的人来说,要知道这是一个具有挑战性和令人惊叹的领域,具有许多进步。如果你希望成功,就阅读论文(特别是基础知识),如果你不能理解一个主题,不要放弃。继续努力,你会发现自己突破了CFD所能做的极限。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7910364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档