Skip to content

OpenFOAM

OpenFOAM交流区

4.5k 主题 26.5k 帖子
  • wmake时候出现No rule to make target

    2
    2 帖子
    390 浏览
    bestucanB

    上来就自定义,完了还要跨版本号编译代码。把门远远甩在身后的人干起来也是横垄地里拉车,一步一个坎。:chigua2:

    先照着视频教程之类的,实现自定义函数什么的。

    提供的信息很难判断问题在哪

  • 如何对矢量场每一列单独赋值?

    2
    2 帖子
    400 浏览
    bestucanB
    s.component(0) = 123 s.component(1) = 456

    看看这样行不,这样行的话,那就是ux、vx的值有问题了

  • Openfoam8调用codedFixedValue边界条件,并行出错

    2
    2 帖子
    389 浏览
    bestucanB

    找不到 cyclicAMILduInterface.H 这个文件

  • dynamicMeshDict文件注释求助

    2
    2 帖子
    429 浏览
    bestucanB

    搜着看

    https://cpp.openfoam.org/v10/

    https://www.openfoam.com/documentation/guides/v2112/doc/

  • fvc::intergrate(fvc::grad(phi))*nf不等于snGrad(phi)?

    6
    6 帖子
    1k 浏览
    C

    @李东岳 好的,谢谢李老师。我发现面上梯度可通过fvc::reconstruct这个函数重构出的体心梯度,我还是得研究一下这个函数。比如刚刚的重力源项,定义在面上的话,我还没掌握怎么把它放回控制方程里面:143:

  • this->Gname 的作用是什么?

    3
    3 帖子
    449 浏览
    C

    @李东岳
    谢谢老师,大概理解this用法,这个是指向name(),还以为这个命名是起到什么作用,既然一般情况下没区别,那我就不深究了。

  • OpenFOAM滑移网格功能最新进展?

    4
    4 帖子
    683 浏览
    小狗狗

    @李东岳 交界面两侧网格任意形式的并行分区方式下的多进程任意coupling也可以?

  • 1 帖子
    262 浏览
    C

    请问大家有用过Cardiff的流固耦合代码solids4Foam吗?请问固体部分的阻尼要如何施加?solids4Foam中的固体力学部分是基于有限体积法来求解的。在传统的固体力学有限元法中,可以通过Rayleigh阻尼来给定结构阻尼,Rayleigh阻尼的阻尼矩阵是质量矩阵和刚度矩阵的线性叠加,solids4Foam中的一个固体模型unsNonLinGeoTotalLagSolid 中给定了一个质量比例阻尼,但没有刚度比例阻尼。
    请问怎么在solids4Foam中对固体模型指定Rayleigh阻尼,或者对固体模型给定刚度比例阻尼?

  • 7 帖子
    948 浏览
    李东岳

    @chen_hao

    const volScalarField& omega_ = this->omega_;

    这一种

  • OpenFOAM后处理问题,提出受力Force和转矩Torque

    5
    5 帖子
    2k 浏览

    @guohuiqun https://blog.csdn.net/dsfsdffgfd 你可以参考这个

  • 并行效率疑问

    63
    63 帖子
    85k 浏览
    winsway_zeroW

    @random_ran 您好,想咨询一下,这么多的网格您是如何进行后处理的呢?paraview 会崩溃的吧?

  • OpenFOAM中,默认的多组分方程全部有误?

    4
    4 帖子
    876 浏览
    W

    @四季之中的隐星
    是的,根据你的需要进行修改。因为多数时候用不上,或者仅用作演示,所以都精简了。

  • 5 帖子
    1k 浏览
    G

    @tidedrinker 在 functions里的forces在二相流里能否输出基于p_rgh的压力和转矩? 中说:

    @李东岳 这个forces是写在controlDict/functions里的,在求解过程中每个(或每若干个)时间步输出一次。这个压力和转矩是随时间变化的,不是根据结果文件用postProcessor -func那一套程序得到的。所以修改结果文件的文件名应该没什么用处?

    请问一下forces在计算完成后,如果想要得到其他面上的forces,有什么办法后处理提取吗?看见您说不是根据结果文件用postProcessor -func那一套程序得到的,请教一下,这有什么比较好的处理办法吗?

  • openfoam中求面上的力?

    1
    1 帖子
    252 浏览
    G

    请问在使用openfoam中工具forces工具,工具只能伴随计算中使用,如何通过后处理的办法使用forces工具(计算结束后,想要提取其他面上的力)?或者有什么后处理的工具能够任意提取自己所需要的面上的力?

  • 请问OpenFOAM计算域的尺度问题

    6
    6 帖子
    959 浏览
    C

    @疏影横斜水清浅 网格太大导致的精度误差,不应该跟软件有关系,只跟你想要研究的问题、你关注的现象的尺度以及数值格式这些有关系。说白了,只要案例设置的好,精度误差不会跟别的软件有明显区别。

    你提到的计算大尺度的开源软件和程序是指哪些?我这边做风场模拟,对这些还比较感兴趣。

  • OpenFOAMv2206中dictionaryConstructorTable程序问题

    1
    1 帖子
    298 浏览

    各位大佬,我想在OpenFOAMv2206中植入我在OpenFOAM9中修改的模型。但是在编译过程中出现了错误:

    9cb8d1c3-cfce-407c-a09c-cdecbf702dd3-图片.png

    我的代码在OF9中是可以运行的,但是在OpenFOAMv2206中就报错了。看其他的代码感觉OpenFOAM9和OpenFOAMv2206没有太大的区别,这个错误是为什么呢?

    Foam::autoPtr<Foam::viscoelasticLogLaw> Foam::viscoelasticLogLaw::New ( const word& name, const volVectorField& U, const surfaceScalarField& phi, const dictionary& dict ) { const word typeName(dict.get<word>("type")); Info<< "Selecting viscoelasticLog model " << typeName << endl; dictionaryConstructorTable::iterator cstrIter = dictionaryConstructorTablePtr_->find(typeName); if (cstrIter == dictionaryConstructorTablePtr_->end()) { FatalErrorIn ( "viscoelasticLogLaw::New(const word& name, const volVectorField&, " "const surfaceScalarField&)" ) << "Unknown viscoelasticLogLaw type " << typeName << endl << endl << "Valid viscoelasticLogLaw types are :" << endl << dictionaryConstructorTablePtr_->sortedToc() << exit(FatalError); } return autoPtr<viscoelasticLogLaw>(cstrIter()(name, U, phi, dict)); }
  • 同一节点上并行多个求解器似乎会拖慢速度

    5
    5 帖子
    777 浏览
    C

    @李东岳 辛苦李老师了,方便的话可以试试看。后面那种场景,主要是公司内集群是所有专业混用,很容易出现这种情况。甚至单单只针对OpenFOAM来说,暂时没限制节点的使用,所以会导致一个节点上能同时跑好几个计算或者计算的一部分,分别是隶属于不同作业的。

  • 12 帖子
    2k 浏览
    O

    @李东岳 老师,我自己觉得是可以,只是我没想好具体的实际方法,这也是为什么我选择在均匀的网格下弄。 我对于我现在均匀网格的就这么搞得 我自定义了我的固体活动范围里的网格编号和关系 均匀网格的连接关系很简单 我甚至连数组都不用开个去记录 我只是为了并行 预处理了固体活动范围内每个网格所在核心的编号和所处分块区域内我自定义编号的cell在对应核心对应分解域内的真实编号 计算时候根据连接关系,o(1)的运算时间取出临近网格的自定义标号 然后根据预处理记录的它在所属分块内的真实编号来计算 。

    只是对于非结构网格,不均匀,有变形这种,我具体不太知道openfoam里编号的规律,也不知道老师您这里具体的应用场景是什么。我个人觉得,也是在进入时间步循环前,搞个预处理,把非结构网格的cell中心坐标提前循环一遍预处理,映射给自己自定义的一套均匀网格,然后一个数组记录,数组下标是自定义映射均匀网格的编号,该数组下标里数组对应内容是落在这个自定义网格内的非结构网格的真实编号,均匀网格的关系很简单,可以简单查找临近关系。而且这个映射网格的作用纯粹就是,映射个大致的位置关系。但是这个映射的均匀网格的尺寸要小于实际非结构最小cell的尺寸,大致我是这么想的。但是这样我不知道提前记录的内存开销有多大,我觉得甚至还不如,自己知道每个非结构网格要查找的周围感兴趣网格范围,每个模拟开始进入时间步前,提前预处理输出给文件打个表 (因为是预处理,所以无所谓,各种findcell也花不太久,因为只需要执行一次并记录),然后运算时候,对于某个非结构网格,直接读取预处理打表的那个文件,再取出周围符合关系的网格编号。这里读取文件,和字符串处理花一点运算时间。

  • 关于修改湍流模型中非线性雷诺应力项的问题

    25
    25 帖子
    4k 浏览
    李东岳

    可以。我记得湍流方程右边都是只考虑网格点的作用,不需要考虑边界。因此你的G声明了内部场,没有问题。

  • OpenFOAM 无网络安装教程

    9
    9 帖子
    11k 浏览
    李东岳

    @mecyhl

    过 apt-get download 命令下载的包拷进去无法安装

    为啥呢,我这可以