Skip to content

OpenFOAM

OpenFOAM交流区

4.9k 主题 29.0k 帖子
  • twophaseEulerFoam 可以追踪颗粒么?

    2
    2 帖子
    2k 浏览
    李东岳

    Yes,

    不过需要你自己定义拉格朗日求解器。目前twoPhaseeulerfoam是欧拉方法下的双欧拉模型。如果需要添加一个无质量对流体流动无影响的颗粒,仅仅做一个颗粒跟踪。有俩种方法:

    简单的捆绑dpmFoam中的拉格朗日粒子,我之前在pisoFoam中实现过这个,

    通过paraFoam后处理来进行,这个在cfd-online有人讨论过,我当时也尝试实现不过没成功,目前还不确定到底paraview能不能实现这个方法。

  • 有关OpenFOAM中的类如何添加参数?

    3
    3 帖子
    3k 浏览

    解决了,低级错误,H文件里的申明没有改,改到别的文件里去了,当然不成功。把c文件和h文件里都改了之后,编译没有问题的。

    多谢!

  • openfoam用到多少c++

    2
    2 帖子
    3k 浏览
    李东岳

    你好,

    这个问题OpenFOAM创始人Henry已经有过详细的阐述了:

    Henry:了解流体机理和计算流体力学更加重要。大多数CFD工程师并不需要经常编程,因为CFD代码已经非常成熟了,并且包含了非常多的功能。但是对于一个CFD工程师而言,很有必要了解到底什么是“物理”,什么是“边界条件”。这些都和流体动力学有关,而和编程关系不大。

    很好地了解CFD的概念在选择合适的数值方法、离散格式、时间步、松弛因子的时候非常有必要。这通常可以通过培训来达到目的,因为本质上其主要通过积累的经验来获得。

    使用CFD就像玩乐器,你不能捡起一把小提琴就弹“维尔瓦底”的曲子(CFD界注:著名小提琴演奏家),这需要很长的练习。

    然而,相对于GUI的点击型操作,OpenFOAM中CFD算例的自动运行VERY有用,因此如果会写脚本的话就更好了。脚本语言不重要,大家可以使用随便一个脚本语言,只要你熟悉就好。

    个人认为,依赖于你所需要的功能,如果只是企业级别的计算,不需要多少C++只是。如果是硕士进行简单的开发,C++熟悉相关的语法规则就好。对于博士如果需要写自己的算法,可能对面向对象编程需要有一定的认识

  • 算例的网格checkMesh后如下,有什么问题么?

    2
    2 帖子
    2k 浏览
    李东岳

    你好,

    看上文中的:

    <<Writing ... non-orthogonal faces to set nonOrthoFaces

    非矩形面和skewness面一般问题都不大,比价的话skewness不好的网格问题比非矩形网格更加严重。OpenFOAM里面已经把非矩形面的恭喜添加进去了,可以添加非矩形修正来处理。因此这是一个警告,不需要过多处理。有时候非矩形面试必须的。不可能避免。

    当然你看到了他显示Mesh OK~