OpenFOAM

4.5k Topics 26.4k Posts
  • 1 Posts
    485 Views

    浮体为不规则形状,已经计算过浪向角为0°的算例。
    现在想要计算其他浪向角,如60°工况,能否直接通过旋转浮体-60°来达到目的,可是旋转浮体,对应的转动惯量也要做相应的更改,不知道OF里面有没有什么设置可以方便地实现旋转浮体的功能并自动修改转动惯量?

  • 1 Posts
    389 Views

    各位老师,进行流化床模拟时,最终结果发散
    观察流场,会看到固相分数在一直增加
    链接文本
    链接文本
    参考这两个链接,修改fvSolution文件,最终结果会好一些
    大佬们见笑,本人CFD小菜鸟,总归是个调整办法:136:

  • 1 Posts
    539 Views

    fsiFoam自带算例的flowModel都是consistentIcoFlow,是计算层流的。修改flowModel为pisoFlow后可以计算湍流,请问有没有大神知道改为pisoFlow后,fvSchemes和fvSolution文件中,是否要做一些相应的修改呢。目前我使用pisoFlow后的fvSchemes和fvSolution文件如下,:schemes.png solution1.png solution.png

  • interFoam 气泡升阻力计算

    7 Posts
    3k Views

    interFoam是直接模拟,不能模化升力。
    双流体模型是模型化后的模型,可以模化升力。
    因此

    升力的方程表达式中出现气相与液相速度,这两者速度与interFoam控制方程中的速度有什么关联呢?

    二者毫无关系

  • 1 Posts
    470 Views

    用fsiFoam计算湍流,将流体求解器由constentIcoFlow改为pisoFlow,再添加湍流相关文件后开始计算。计算时间设置为6秒,时间步为0.00005,刚开始计算时很容易收敛,当计算到2秒的时候,每一个时间步都要迭代到最大迭代步数才会进行下一个时间步的计算,有什么方法可以改进吗?以下是计算过程迭代截图、流体求解器设置、耦合求解器设置以及固体属性截图。迭代1.png 迭代2.png 流体求解器.png 耦合求解器.png 固体属性.png

  • phiHbyA的计算

    2 Posts
    779 Views

    用了两年OpenFOAM了,感觉至今感觉还没太看懂icoFoam中的东西,慌得一批:136:

  • fsiFoam柔性翼形网格发散问题

    4 Posts
    1k Views

    @bestucan 好的,谢谢

  • 1 Posts
    762 Views

    大家好,遇到一个动网格入口速度边界的问题,希望大家帮帮忙。

    简述: 在一个做六自由度运动的网格的一个边界上定义随时间及高度变化的速度入口。

    平台:OpenFOAM 2.4.0, interDyMFoam

    物理背景: 做俯仰运动的明渠中的流动,在左边界施加随深度变化的平行于底床的入流速度,考虑到明渠本身也在做俯仰运动,所以入口边界的绝对速度还应该加上俯仰运动所产生的速度。所以就是一个随时间及高度变化的速度。

    描述:网格的运动通过solidBodyMotionFvMesh 实现,然后通过6DOF的utility来指定运动方式。对于时变或随位置变化的入口边界条件,在论坛里面找到了一些帖子,然后用的codedFixedValue来实现这个,但是在实现的时候遇到错误,自己编程不是很熟悉,想请大家帮忙看看代码的编写上的问题。同时对于在动网格中的入口速度边界的指定,不知道我目前采用的这种方法是否合理?是否还有其他更好的方法?谢谢大家。

    inlet { type codedFixedValue; value $internalField; redirectType abcde; code #{ const fvPatch& boundaryPatch = this->patch(); vectorField v= boundaryPatch.Cf(); scalar ymin=min(this->patch().Cf().component(1)); Info<<"ymin="<<ymin<<nl; scalar thetaamp=0.056119; scalar omegaa=1.4564; scalar pitchphase=2.0125828; scalar tt = this->db().time().value(); scalar udeck=-thetaamp*omegaa*50*cos(omegaa*tt+pitchphase); scalar uslope=0.09769*sin(1.488*tt-2.748)-0.00532; scalar ucut=0.2045*sin(1.692*tt-3.203)-0.0601; scalar theta=thetaamp*sin(omegaa*tt+pitchphase); forAll(boundaryPatch,faceI) { scalar y = this->patch().Cf().component(1); scalar ux=-udeck*sin(theta)+(uslope*(y-ymin)+ucut)*cos(theta); scalar uy=udeck*cos(theta)+(uslope*(y-ymin)+ucut)*sin(theta); v[faceI] = vector(ux,uy,0); operator==(v); } #} }

    错误信息如下:

    // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Create mesh for time = 0 Selecting dynamicFvMesh solidBodyMotionFvMesh Selecting solid-body motion function tabulated6DoFMotion Applying solid body motion to entire mesh PIMPLE: Operating solver in PISO mode Reading field p_rgh Reading field U Using dynamicCode for patch inlet on field U at line 26 in "/home/min/OpenFOAM/min-2.4.0/run/pitchDamBreak/pitchCases/pitch14-8update3-mapped/0/U.boundaryField.inlet" Creating new library in "dynamicCode/pitchdam/platforms/linuxGccDPOpt/lib/libpitchdam_89672c10695eb4de1d809896f609f8e1131d9634.so" Invoking "wmake -s libso /home/min/OpenFOAM/min-2.4.0/run/pitchDamBreak/pitchCases/pitch14-8update3-mapped/dynamicCode/pitchdam" wmakeLnInclude: linking include files to ./lnInclude Making dependency list for source file fixedValueFvPatchFieldTemplate.C /home/min/OpenFOAM/min-2.4.0/run/pitchDamBreak/pitchCases/pitch14-8update3-mapped/0/U.boundaryField.inlet: In member function ‘virtual void Foam::pitchdamFixedValueFvPatchVectorField::updateCoeffs()’: /home/min/OpenFOAM/min-2.4.0/run/pitchDamBreak/pitchCases/pitch14-8update3-mapped/0/U.boundaryField.inlet:53:43: error: cannot convert ‘Foam::tmp<Foam::Field<double> >’ to ‘Foam::scalar {aka double}’ in initialization make: *** [Make/linuxGccDPOpt/fixedValueFvPatchFieldTemplate.o] Error 1 --> FOAM FATAL IO ERROR: Failed wmake "dynamicCode/pitchdam/platforms/linuxGccDPOpt/lib/libpitchdam_89672c10695eb4de1d809896f609f8e1131d9634.so" file: /home/min/OpenFOAM/min-2.4.0/run/pitchDamBreak/pitchCases/pitch14-8update3-mapped/0/U.boundaryField.inlet from line 26 to line 68. From function codedBase::createLibrary(..) in file db/dynamicLibrary/codedBase/codedBase.C at line 213. FOAM exiting

    谢谢了。

  • 5 Posts
    1k Views

    @东岳 感谢李老师!我去找一下相关内容!

  • rhoSimpleFoam算例初始值及边界问题

    5 Posts
    2k Views

    我好像发现什么了,这个结构是一样的,不过tutorial case里obj生成polyMesh中,有分组。。。

    ( aerofoil { type wall; inGroups List<word> 1(wall); nFaces 120; startFace 31760; } inlet { type patch; inGroups List<word> 1(freestream); nFaces 200; startFace 31880; } outlet { type patch; inGroups List<word> 1(freestream); nFaces 160; startFace 32080; } back { type empty; inGroups List<word> 1(empty); nFaces 16000; startFace 32240; } front { type empty; inGroups List<word> 1(empty); nFaces 16000; startFace 48240; } )

    所以,/0下文件头上freestream不是类型名,是边界(组)名。。。
    感觉这个地方有误导性,导致我以为文件结构不同。。。
    建议改个组名!

  • 喷雾燃烧的Lagrangian数据如何处理

    8 Posts
    2k Views

    @星星星星晴 前辈您好,我再问一下,您的cloudFunction是怎么写的么?最好是截个图,谢谢

  • 带源项的相方程离散疑问

    6 Posts
    2k Views

    @BlookCFD 谢谢,这个问题已解决,这个主要涉及到interFoam系列算法子循环求解相连续性方程并修正质量流率,可以将surfaceScalarField rhoPhi在循环外声明创建,但是循环内部每次循环初始值要赋0.

  • 2 Posts
    792 Views

    自己回复一下,这里能选的都是标量,而速度本身是矢量,所以没有,想显示出速度值,就是通过计算器,自己计算出某个方向的速度(X,Y,Z),之后才可选~

  • paraview打不开二进制

    1 Posts
    472 Views

    奇怪,我在tutorials里面allrun了一个例子,paraview的时候就打开不了,会有error,说是polymesh/faces里面符号错误。。
    按理说,tutorials里面的应该没问题啊。。我找了很久的原因,发现可能是二进制的问题,所以我把controlDict里面的输出从Binary改成了ASCII,结果allrun之后就可以paraview打开看见了。。
    好奇怪,这是什么原因

  • 3 Posts
    2k Views

    @xpqiu 感谢:xiexie:

  • 2 Posts
    846 Views

    我把代码移植到OF-7上了,并附上了我的算例以供参考:
    https://github.com/ZhangYanTJU/boundaryConditions

  • 关于算例突然停止的问题

    5 Posts
    1k Views

    @bestucan 感谢回复!已经Allclean了:136: ,另外,不更改重新跑了一遍又没问题了,就是对出现的问题感觉比较迷。。。

  • 基于PIMPLE中参数的一些疑惑

    6 Posts
    2k Views

    @cccrrryyy 非常感谢:xiexie:

  • 8 Posts
    2k Views

    @马乔 您好,我参照你的方法将transportProperties代码写进去,但是很奇怪的是,报错显示,request for dictionary transportPropertie ,而可获得的字典里是transportProperties,两者总是存在单复数的差别(就像你贴的代码里一样)。本来想着直接用令锑度边界条件绕开这个错误,但是最近发现还是得用alphat壁面函数。真是很奇怪呀。

  • 关于重叠网格尺寸的问题

    1 Posts
    614 Views

    请问有人知道重叠网格里嵌套网格和背景网格二者之间的尺寸关系需要满足什么条件吗?另外,如果运动物体有薄壳结构(厚度0.02m),那在划分背景网格时尺寸是不是一定要小于0.02m?恳请回复!

  • 4 Posts
    1k Views

    很有可能,cyclicAMI有可能把粒子算丢了

  • 结构化网格

    8 Posts
    2k Views

    @bestucan
    非常感谢,全明白了.
    也谢谢Zhoujq和Samuel-Tu的回复

  • 9 Posts
    2k Views

    @桎梏 :chitang: 不客气

  • time step of twophaseeulerfoam

    6 Posts
    1k Views

    Your simulations just blow up, its difficult to debug the reason from your info.

  • openfoam里双时间步如何设置

    3 Posts
    1k Views

    hello,不知道你后来有设置这个双时间步吗?可能给看一下你的设置吗?谢谢!

  • 4 Posts
    1k Views

    @东岳 @bestucan 谢谢两位老师,我把自己打算编译的东西添加到$FOAM_USER_APPBIN路径下了。下次安装openfoam的时候再注意这个问题吧。

  • 1 Posts
    447 Views

    大家好,如图所示,我在模拟流体通过水渠,水下有障碍物,因此在水面形成波,但水面波的强度较小,并且入口段形成一定的波动,波形不够明显,在paraview中是否可以进行处理,消除背景噪声使得结果更明显?
    ww.png

  • openfoam-v2006

    9 Posts
    2k Views

    用 sudo fdisk -l 看看 swap 分区多大。如果很小或者没有,可能是因为内存。如果很大可以排除内存问题。swap是虚拟内存,物理内存不够用会把硬盘当内存用,只会很慢不会崩。

    也可以在编译过程中开着 system monitor 看着内存和 swap 使用状况。

    当初装linux的时候分区选择了lvm方式,还能调整swap分区大小。如果不是lvm而是直接分区。只能重装系统修改分区大小。

    然后你的源代码放在OpenFOAM1,1??? 不知道会不会影响。

  • paraView5.6不适用于openfoam-dev了?

    10 Posts
    2k Views

    @RebelYoung 这种错误可能是数据本身有问题,不一定是paraview的问题。

    如果想确定,可以去paraview的官网下载最新的paraview。如果连它都崩,那就是数据的问题。

  • 4 Posts
    994 Views
  • 新方程的预测步和修正步

    3 Posts
    857 Views

    谢谢东岳老师

  • 2 Posts
    2k Views

    请问,后来。。。搞出来了吗??

  • OF波浪模拟

    7 Posts
    2k Views

    @Samuel-Tu 我以前的工作用过SWAN,SWAN一般用在大范围的波浪模拟上,适用于模拟一个海域的台风浪。它的方程是求解波浪谱,然后根据谱来求解波高、周期等参数。SWAN并不是基于过程的模型,无法给出一帧一帧的波面过程,算出来的结果仅仅是波高、周期一些参数随时间的变化。

    shallowWaterFoam是基于浅水方程的模型,一般可以用来模拟像潮流这种周期很长的长波运动,基于静压假设后简化了的NS方程。我们做潮流的一般不用OF,用其他更成熟的浅水方程模型。

  • 8 Posts
    2k Views

    @bestucan 非常感谢老师的详细建议。因为集群之前就已经安装过OF,我是在个人账户里安装OF7版本的,所以可能就差这一个包。我已经使用了跑了计算,目前来看没什么问题:xiexie:

  • 多面体网格转换

    1 Posts
    411 Views

    用fluent Meshing划分的多面体网格转换成OpenFOAM格式出现错误
    /---------------------------------------------------------------------------
    | ========= | |
    | \ / F ield | OpenFOAM: The Open Source CFD Toolbox |
    | \ / O peration | Version: v1912 |
    | \ / A nd | Website: www.openfoam.com |
    | \/ M anipulation | |
    *---------------------------------------------------------------------------*/
    Build : _f3950763fe-20191219 OPENFOAM=1912
    Arch : "LSB;label=32;scalar=64"
    Exec : fluent3DMeshToFoam 000.msh
    Date : Jul 03 2020
    Time : 09:25:27
    Host : King
    PID : 514
    I/O : uncollated
    Case : /mnt/d/OpenFOAM/run/test
    nProcs : 1
    trapFpe: Floating point exception trapping enabled (FOAM_SIGFPE).
    fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 10)
    allowSystemOperations : Allowing user-supplied system call operations

    // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
    Create time

    Reading header: "ANSYS(R) TGrid(TM) 3D, parallel 18.1.0"
    Dimension of grid: 3
    Number of points: 34807
    --> FOAM Warning : Found unknown block of type: "11"
    on line 16
    Number of faces: 39160
    Number of cells: 6053
    PointGroup: 1 start: 0 end: 15. Reading points...done.
    PointGroup: 8 start: 16 end: 23. Reading points...done.
    PointGroup: 216 start: 24 end: 307. Reading points...done.
    PointGroup: 218 start: 308 end: 3281. Reading points...done.
    PointGroup: 59 start: 3282 end: 9500. Reading points...done.
    PointGroup: 61 start: 9501 end: 34806. Reading points...done.
    --> FOAM Warning : Found unknown block of type: "11"
    on line 34838
    --> FOAM Warning : Found unknown block of type: "11"
    on line 34852
    --> FOAM Warning : Found unknown block of type: "11"
    on line 34866
    --> FOAM Warning : Found unknown block of type: "11"
    on line 35156
    FaceGroup: 2 start: 39148 end: 39159. Reading uniform faces...done.
    FaceGroup: 7 start: 0 end: 3253. Reading mixed faces...done.
    FaceGroup: 62 start: 3254 end: 39147. Reading mixed faces...done.
    CellGroup: 63 start: 0 end: 6052 type: 1
    --> FOAM Warning : Found unknown block of type: "316"
    on line 74613
    --> FOAM Warning : Found unknown block of type: "71"
    on line 74632
    Zone: 63 name: zone000:000--- type: fluid. Reading zone data...done.
    Zone: 62 name: interior-p-62 type: interior. Reading zone data...done.
    Zone: 7 name: geom-zone000:000---:7 type: wall. Reading zone data...done.
    Zone: 2 name: geom-zone000:000--- type: geometry. Reading zone data...done.
    Zone: 64 name: edge-p-64 type: boundary-edge. Reading zone data...done.
    Zone: 214 name: edge-p-214 type: boundary-edge. Reading zone data...done.
    Zone: 9 name: _zone000:000---:feature:9 type: boundary-edge. Reading zone data...done.
    Zone: 3 name: _zone000:000---:feature type: boundary-edge. Reading zone data...done.
    --> FOAM Warning : Found unknown block of type: "73"
    on line 78743

    FINISHED LEXING

    Creating patch 0 for zone: 2 name: geom-zone000:000--- type: geometry
    Adding polyPatch for unknown Fluent type geometry
    Creating patch 1 for zone: 7 name: geom-zone000:000---:7 type: wall
    Creating cellZone 0 name: zone000:000--- type: fluid
    Creating faceZone 0 name: interior-p-62 type: interior
    faceZone from Fluent indices: 3254 to: 39147 type: interior
    patch 0 from Fluent indices: 39148 to: 39159 type: geometry
    patch 1 from Fluent indices: 0 to: 3253 type: wall

    --> FOAM FATAL ERROR:
    Illegal cell label -1 in neighbour addressing for face 39148

    From function void Foam::polyMesh::initMesh() in file meshes/polyMesh/polyMeshInitMesh.C at line 67.

    FOAM exiting

    ![0_1593748258811_多面体网格.png](正在上传 100%)

  • 关于OF并行分区的问题

    11 Posts
    3k Views

    @东岳 :mihu:

  • 2 Posts
    926 Views

    我这边后面主要涉及到水汽两相流,空化相关的问题,谢谢

  • 7 Posts
    2k Views

    你直接用openfoam-v2006就好,不需要用5.0版本的编译了

    参考最底部:https://www.openfoam.com/releases/openfoam-v2006/solver-and-physics.php

  • 编译求解器出现 undefined reference

    7 Posts
    2k Views

    @bestucan 感谢前辈的热心回复,目前问题已经解决,问题出现在类phaseChangeTwoPhaseMixture的make文件的files文件里面,

    LIB = $(FOAM_USER_LIBBIN)/libphaseChangeTwoPhaseMixtures //会报错 LIB = (FOAM_USER_LIBBIN)/libtwoPhaseChange //随便叫一个名字均可,均可编译通过,但不能是libphaseChangeTwoPhaseMixtures

    自己也是偶然发现的,但也比较困惑为什么这么神奇:mihu:

    不过最终问题还是解决了,很感谢前辈耐心的解答:xinxin: ,自己后面也应该好好补一点C++知识

  • 求解相方程越界问题

    2 Posts
    804 Views

    @小考拉 alpha方程如下:61c83717-3135-4a66-9cdd-c1af5ba33159-image.png

  • OpenFoam中如何设置总压进出口

    3 Posts
    1k Views

    感谢分享!!

  • 3 Posts
    841 Views

    已成功植入emoij

  • interFoam的曲率计算

    2 Posts
    896 Views

    或许可以把方程写出来对比一下嘛?

  • SHM 网格拉伸变形

    1 Posts
    565 Views

    SHM.JPG

    请问各位大神,SHM里哪个参数导致生成的网格如图所示的拉伸变形?多谢!

  • 自己编译安装libccmio库

  • 请教压力测量问题

    1 Posts
    482 Views

    采用动态压力传感器测量实验对象的压力脉动,在与理论结果进行对比时,应该对比理论结果的静压还是绝对压力还是其它类型的压力?

  • 使用集群并行计算时出现错误

    7 Posts
    2k Views

    @人来人往 您好,请问您是石油大学华东这边的吗,最近也准备在集群上安装OF,完全没有头绪,可以请教下吗?谢谢

  • DPM并行计算

    13 Posts
    3k Views

    @东岳 好的,我去了解一下,谢谢各位老师的指点

  • 3 Posts
    1k Views

    @东岳 谢谢老师的回复,我是按照在turbulentTransportModels.C加入了

    #include "kOmegaSST2.H" makeRASModel(kOmegaSST2);

    然后在kOmegaSST2.H中

    #include "kOmegaSST2Base.H"

    实现这一编译过程,但是还是会报错,似乎要增加一个新的Base需要修改的地方非常多。
    我目前暂时采取的解决方案是直接在修改原base,增加了一个Switch,在算例的constant/turbulenceProperties中设置true来启动新功能,这样也算保留了原模型,打算后面如果找到更好的方法我再改过来

  • 8 Posts
    5k Views

    您好,我最近也在使用这个边界条件,有个问题想要请教您,关于refValue的取值是直接等于具体问题的取值吗??期待您的回复