OpenFOAM programming学习问题



  • 大家好,想请教一下关于OF programming学习方法的问题。
    使用OF差不多半年时间了,开始只是使用solver,后来也自己写过一些solver,比如自定义的动网格和rhoCentralFoam的一些小的改动。最近要开始写一个求解热平衡的solver,感觉有点难度。
    所以想问一下各位前辈,有没有系统学习OF Programming的好的方法或者教程之类的?
    先谢过了!



  • 使用OF差不多半年时间了,开始只是使用solver,后来也自己写过一些solver,比如自定义的动网格和rhoCentralFoam的一些小的改动。最近要开始写一个求解热平衡的solver,感觉有点难度。

    OpenFOAM编程主要分为2部分:

    • 一部分是熟悉OpenFOAM的类型

    • 一部分是求解

    第一部分相对容易,第二部分相对难。很遗憾目前并没有我觉得写的好的OpenFOAM编程资料,或者可以说没有。

    没有资料的原因很简单,是因为这东西不简单,并且不是按照资料就能学好的。而是需要按照科学研究的态度,进行验证。给你举个栗子,我们都知道simpleFoam没有考虑重力,那么如果我们要在simpleFoam中添加重力应该怎么办?

    • 针对第一部分,你需要学习如何添加g,可能你在资料里面找到了,声明volVectorField即可,恭喜,这一步达成;

    • 针对第二部分,那么就是如何采用有限体积法植入g的影响,如果看过一些FVM的资料,或许你在UEqn中添加了g,然后编译成功,你觉得大功告成;

    如果CFD只是这么简单。那么人人都可以写OpenFOAM编程的资料,然而不然。

    问题在于即使你植入了你的求解器,你如何验证你的植入是正确的?是复合物理的?例如上面这种方式的植入,我觉得就是不完美的。

    如何获取这种普适性的CFD植入思想?这很难在资料中获得。

    或许你觉得我说的有点高了。那么我们考虑最简单的:不考虑求解准确不准确,不考虑植入的方程符不符合CFD常规解法,如何开始编程第一步?

    http://www.cfd-china.com/topic/580/学习openfoam的一点小建议 这个帖子中代码定制部分有一些回答

    正如帖子所说,这部分完全可以自学。就像你的师父教会了你做馒头,做油条,更高级的自创西式面点,这需要你自己去研究。你在学校学会了乐理和节奏,你也需要自己去创作自己的原创。

    OpenFOAM编程,或者说CFD求解器求解,本身已经不属于OpenFOAM学习的范畴,很难通过看一本书,就达到融会贯通的地步。


    如果问题是如何学习OpenFOAM,应该会更好回答。



  • 非常感谢东岳前辈的指导!看来这部分的学习的确是一个漫长的research过程。之前读了The OF technology primer, 然后就开始模仿已有的solver来对自己的进行改动,但是小的改动还好,而从无到有的建立模型再自己编程植入,就感觉有点没底了。现在应该还处于第一阶段的学习过程哈哈。



  • @sibo 请问您有The OF technology primer的电子版可以share吗?谢谢!



  • @xiaofenger 我是看的师兄留下的书。不过我可以帮你问问国内同学,有的话我发给你。



  • 哈哈,这个书我曾经在2014年买了个原版,运回北京,然后一个老师印刷了估计有20本,分发给全国了。



  • @sibo 非常感谢!



  • @李东岳 看来纸质版还是很稀缺啊哈哈,不过现在扫描版很多了。。



  • @xiaofenger 不太清楚这个会不会有版权问题,你发我你的邮箱吧,就不在这里给链接了



  • @sibo 125723952@qq.com 多谢哈!





  • @sibo 你好能否给我发一份呢?谢谢,我的邮箱是405932015107@email.ncu.edu.cn



  • 东岳大神说了开发的问题。我来说说我的看法?清楚物理模型的物理意义貌似是最基本的也是最容易出错的部分。openfoam方面可以参考The Finite Volume Method in Computational Fluid Dynamics。还有就是最笨的办法:读代码


登录后回复
 

与 CFD中文网 的连接断开,我们正在尝试重连,请耐心等待