![6341c0bbbb8ba345b16e53cfb9d8a3ea.png](https://i-blog.csdnimg.cn/blog_migrate/b0b5d5abcc2e7eb8ceea33a021a22953.jpeg)
至少在我目前所掌握的知识来看,后处理应该是CFD中最简单的一环。需要说明这个最简单指的是实现的难度,这不代表它不重要,毕竟后处理是直观获取结果信息的重要手段,甚至我会在求解的过程中依靠后处理的图片简单判断计算是否收敛。
后处理也是非常有意思的一步(其实这三步都挺有意思),将一大波看不出所以然的数据转换成直观、美观的图像甚至视频,成就感点满!
开头说了这几句无非就是为了说明我为什么要一开始先介绍后处理,主要原因:
1、为之后的求解提供辅助;
2、迅速获得成就感,起到激励的作用。
0、用什么语言做CFD?
真正开始上手编程的时候我想很多人都会犹豫用什么编程语言去实现一个CFD程序(反正我是犹豫了),而作为曾经脑子一抽选修了C++的我来说,C++是不可能的(其实后面还是用了)。
最开始我用的就是Python,因为那时候自己确实对Python比较熟练,也看了PythonCFD的文档。
Jupyter Notebook Viewernbviewer.jupyter.org但是呢Python的计算速度慢那是客观事实呀,何况我又不是计算机专业的学生,搞不来优化的那些操作,所以对于那些不太友好的语言工具还是要考虑的,比如Fortran,C,C++,R,Matlab等。
我想理工科的同学大多都会Matlab吧。
![450c2707f73e4c5e2b6e2de49dfef209.png](https://i-blog.csdnimg.cn/blog_migrate/0f3446c7ecdb2e26a3f7c50fd8dd044e.jpeg)
![fb2a059dce17696af56f6ef108acef1c.png](https://i-blog.csdnimg.cn/blog_migrate/18a939ca5516993c22f0e7e88177f791.png)
好吧老师是这样解释的,因为Matlab里面有大量现成的CFD程序包,所以不允许学生使用。这样说来如果是自己学习去实现一个算法,而且不去调用包的话也是可以上Matlab的嘛。或者就是想要一个结果而不在乎自己掌握了多少知识,用用也不错。(我本人是很不喜欢Matlab的,又大又丑,求不批)。
但凡是图灵完备的语言都可以做CFD的,这就涵盖了绝大多数的语言,但是对于新手我建议Python或R,毕竟核心是理论算法思想,只要掌握了用别的语言也能写出来,不妨在开始阶段用简单的语言快速实现。
但是哦,这个专栏里面不只是PythonCFD,还会有Fortran、C++什么的,可能写的丑但是还是能运行的。当时申请这个专栏的时候确实只考虑写Python,但是后来觉得也太局限自己了,不过专栏名180天之后才能改,到时候换个名字吧。
1、后处理用什么手段?
由于受到了部分贼能拖堂的老师的影响(11:25下课结果讲到12:15),我写的文章很容易写长,大家看到没意思没意义的地方就往下划拉就可以了)。
在后处理的手段上我接触过几种,主要就是:
1、利用编程语言的绘图功能
比如Python的matplotlib、C的opencv/gl、R的ggplot等。
2、利用Matlab,Excel
虽然我不喜欢Matlab这玩意儿(所以我把它单独列出来),但是不能否认人家的受众广、上手容易、教程多(这点很重要),我那学计算机的儿砸甚至有这个的必修课。
至于EXCEL,只要记住:Excel can do!
3、