CFD中文网

    CFD中文网

    • 登录
    • 搜索
    • 最新
    1. 主页
    2. OpenFOAM
    登录以发表
    • 从新到旧
    • 从旧到新
    • 回复最多
    • 最多赞同
    • Most Views
    • chengan.wang

      paraview做多个切面,然后在每个面上对物理量积分
      • chengan.wang

      1
      1
      帖子
      58
      浏览

      chengan.wang

      大家好,目前我可以输出温度场的三维数据,比如
      QQ截图20221222151315.png
      我想垂直于z轴做100个等间距垂直切面,在每个切面上对温度求积分并取平均值。
      \begin{equation}
      \int_{A} T dx dy /A
      \end{equation}
      然后沿着z轴画出一条温度平均值曲线。

      谢谢大家!

    • C

      openfoam允许在一段程序建立两个或多个fvMatrix吗?
      • chaoscfd

      3
      3
      帖子
      104
      浏览

      C

      @李东岳 李老师您好,D()是一个volVectorField。主要是发现建立两个fvMatrix时,前面一个fvMatrix会对后面的fvMatrix产生影响,主要体现在源项上。按理说这是两个独立的fvMatrix对象,不应该互相影响啊

    • W

      在OpenFOAM7中无法编译Benjamin的OF7的makeAxialMesh
      • WangGH

      8
      8
      帖子
      132
      浏览

      李东岳

      你先备份一下。

      然后你wclean一下,看一下这些东西会不会消失。消失的话再编译一下

    • W

      OF能否将计算的每时刻的速度势进行输出?
      • WangGH

      3
      3
      帖子
      87
      浏览

      W

      @李东岳 好滴,感谢李老师,我编一下

    • C

      VOF方法中如何准确计算自由表面曲率?
      • CFDngu

      4
      4
      帖子
      149
      浏览

      C

      @李东岳 在 VOF方法中如何准确计算自由表面曲率? 中说:

      这个方法在函数calculateK()里面,可直接调用。计算结果在3232网格上能得到光滑的结果,但不对。在6464网格上出现了数值振荡。

      VOF结果在网格比较细的时候结果不对?这个结论很有挑战性

      李老师,我用interIsoFoam算了一下,还是不对。在32$\times$32的网格上可以得到光滑的结果,但是和解析解不一样;在64$\times$64的网格上结果出现了振荡。interfoam也跑了一下,结果和interisofoam不一样,也不对。。。(这个算例的设置参照和解析解在主贴的参考文献[1]中)

      算例在这里,大家有兴趣可以跑一下。要是算例设置有问题也可以指出来。另外,我是在v2006环境下跑的(这个链接可能需要注册坚果云,我没找到其他的上传方法:xinlei: )
      capillaryWave

    • 学流体的小明

      paraview查看自适应加密网格出错
      • 学流体的小明

      4
      4
      帖子
      133
      浏览

      学流体的小明

      @李东岳 并行文件夹里面的2e-08文件夹是有pointProcAddressing文件的,但是后面算出来的2e-02,4e-02就没有这个文件了。所以reconstructPar说找不到这个文件,报错了。

    • D

      请问.msh的2维旋转轴对称网格如何转换到OpenFOAM
      • D.Benjamin

      31
      31
      帖子
      5579
      浏览

      W

      @exthan 您好,我刚刚也下载了OF7版本的makeAxialmesh,但好像没找到编译文件,没有Allmake文件或者wmake文件,请问您是怎么编译的呢d27bf862-45db-4120-8ba1-050e18d46128-image.png

    • C

      每个时间步文件夹下没有数据写入,求大神!
      • Chen_hao

      10
      10
      帖子
      210
      浏览

      C

      @bestucan 谢谢老师,我试了下,还是不行~

      他是由于none量 他把它删了,看来我的问题就是那个omega,只要用

      const volScalarField& omega_ = ( this->mesh_.objectRegistry::template lookupObject<volScalarField>("omega") );

      就会找不到,估计是结构问题,难道只能重写了。

    • R

      分区用simpleFoam求解器出现的问题,求问各位这样的报错应该如何解决?
      • Rachel0096

      3
      3
      帖子
      98
      浏览

      R

      @李东岳 李老师您好,感谢您提出的意见,现在只是算的有些慢但是似乎问题已经解决了,谢谢。33.png

    • J

      Not enough slots available
      • Jacob Z

      2
      2
      帖子
      489
      浏览

      S

      @jacob-z

      mpirun --oversubscribe -np 20 xxFoam -parallel

      应该是进程超限锁死,需要添加申请允许超限,就可以了

    • 李

      OpenFoam后处理读取颗粒错误
      • 李梦瑶

      8
      8
      帖子
      940
      浏览

      T

      还有种方法,通过一个工具将OF中颗粒坐标转换成旧版本的格式,然后就能被paraview和tecplot等读取了
      https://github.com/blueCFD/lagrangianExtraFunctionObjects

    • W

      关于源项是放速度方程中还是压力泊松方程中处理的问题
      • WangQi 0

      3
      3
      帖子
      100
      浏览

      W

      @李东岳 多谢李老师,我的物理问题中速度是一定会求解的。所以放在泊松方程中能够更加稳定,避免震荡。
      明白了,多谢您

    • 尚

      请问如何写出或者访问化学反应时间尺度tc (chemical time scale)?
      • 尚善若水

      4
      4
      帖子
      122
      浏览

      李东岳

      你那个77行的ttc,是一种简单的声明,换一种比较全的写法,就是那种IOobejct都写上的那种,然后命名一下,估计可以

    • strive_DUT

      请问以往的OpenFOAM Workshop 的论文集在哪可以找到?
      • strive_DUT

      1
      1
      帖子
      107
      浏览

      strive_DUT

      求问各位,以往的OpenFOAM Workshop 的论文集在哪可以找到?在这个网站里没有呢?https://openfoamworkshop.org/previous-workshops/
      我想找一个OpenFOAM Workshop 2016年的一些报告,请问有没有知晓如何获取的?:quwan:

    • C

      IOobject::groupName("omega", alphaRhoPhi.group()) 这句话的意思是?
      • Chen_hao

      1
      1
      帖子
      44
      浏览

      C

      注册omega如下,有地方不理解:

      omega_ ( IOobject ( IOobject::groupName("omega", alphaRhoPhi.group()), this->runTime_.timeName(), this->mesh_, IOobject::MUST_READ, IOobject::AUTO_WRITE ), this->mesh_ )

      IOobject::groupName("omega", alphaRhoPhi.group()) 知道是定义omage的name,但是 后面这个alphaRhoPhi.group(),是起到什么作用呢?

      如果我定义成:

      omega_ ( IOobject ( "omega", this->runTime_.timeName(), this->mesh_, IOobject::MUST_READ, IOobject::AUTO_WRITE ), this->mesh_ )

      会有什么效果无法实现?:tishizi:

    • C

      关于用lookupObject引用变量报错,求大佬们指点。
      • Chen_hao

      10
      10
      帖子
      237
      浏览

      C

      @李东岳
      针对 ncompressible::turbulenceModel 模板特化后的 ShihQuadraticKE 模型 ,仔细研究了一下其怎么实现非线性项的实现,发现其是在 NonlinearEddyViscosity.H 中定义 nonlinearStress_ 项,然后用 ShihQuadraticKE 作为子类继承父类 NonlinearEddyViscosity 以便在 ShihQuadraticKE.C 中直接引用omega_。

      但由于我修改的是SSTkomegabase.H( 继承于TurbulenceModel类 )与 linearViscousStrss.H ( 继承于BasicturbulenceModel原则类 ) 没有特例化,不能简单类似上面的ShihQuadraticKE 模型。需要从新仿造框架,是一项大工程!

      我的策略是:在现有的文件上直接硬植入,简单很多,毕竟涉及到湍流模型的类错综复杂,针对找不到omega,按照我的分析应该是对的,运行求解器时linearViscousStrss.C先运行此时并未运行SSTkomegabase.C 所以没有omega场注册,找不到他,所以我在creatfield.H中IOobject一下omega场,目前可以算了,结果还未检查,不知道我的理解有没有问题。

    • yfleung

      tecplot后处理
      • yfleung

      3
      3
      帖子
      141
      浏览

      T

      Data-Create Zone-Rectangular提取出想截取的位置
      d2469623-64c0-45c3-952d-a6339a3b560b-image.png
      但是提取出来的Zone没有数据,Data-Interpolate根据原数据对创建的Zone进行插值就可以
      abd5cf18-caaf-4a49-a528-3b9afd696f35-image.png
      这样就得到一个名为Rectangular zone的Zone
      758ce629-1262-40bf-83b2-1477d15a474d-image.png

    • A

      CFD计算流线的长度
      • aximefu

      3
      3
      帖子
      115
      浏览

      T

      tecplot应该可以吧?
      先提取出来流线,然后对流线积分

      cfd151b6-cb6a-4521-a36a-a3fb27fe3b41-image.png

      a4a297dc-0192-46eb-8194-342bf20663cd-image.png

    • S

      集群上并行测试OpenFOAM,并行效率并没有比单节点提升
      • sjlouie91

      37
      37
      帖子
      2652
      浏览

      C

      @李东岳 在 集群上并行测试OpenFOAM,并行效率并没有比单节点提升 中说:

      -genv FI_PROVIDER tcp你这个去掉不能跑的话。你如何确定走的是infiniband,而不是以太网模式。我们这面跑openfoam不需要这个参数。我们之前测试也出现过你这种情况。后来我们换交换机硬件了。但目前我还不确定现在我们这5节点能到什么样,得下周能出个测试结果。另外,openfoam离散设置差异(比如GAMG那个),我个人感觉不会引起特别大的差异。不过你可以实测看看,我也不100%确定

      @xpqiu 这位大佬之前好像测试过2048个核心 :mianmo:

      老师,想问一下,用openmpi在自己组里面的集群上用pbs跨节点并行(10g以太网交换机)命令用的mpirun --mca btl_tcp_if_include <ip地址> -np reactingTwoPhaseEulerFoam -parallel,运行的时候发现计算的节点上cpu的用户进程占比us只有50-60%,系统进程占比sy有40-50%,这个问题有没有什么好的解决办法?

    • L

      自定义类中调用PrimitivePatch类中的faceCentre的bug
      • lmessi1011

      2
      2
      帖子
      60
      浏览

      李东岳

      Info << patchCentre.size() << endl; // 若注释掉上一条Info语句,在这里输出patchCentre的size得到的值变为了0

      换成这个呢?

      Info << patch.faceCentres();
    • 刀尔東

      向各位大佬请教一下网格划分的基础问题
      • 刀尔東

      4
      4
      帖子
      210
      浏览

      bestucan

      可以在 OpenFOAM cavity 算例里执行 blockMesh 后,查看 constant/plymMesh 文件夹。就是这些东西。
      不过记录形式向会有区别。但都是典型的“非结构网格”。

      网格系统,自己开发的通用性不强,处理起来全都得自己手写一套。当然好处就是不用去学成熟的网格系统。便于上手,但越往后,想要的功能越多,越麻烦。

      如果是 OpenFOAM 的用的网格系统,paraview 就可以看,也可以用 blender 结合 blockMesh 生成。snapHexMesh 也可以。对网格、流场的各种处理也可以调用 VTK 库直接在程序里进行。

      看了一下你上传的数据,没有像样的文件头,估计是刚接手一套祖传代码:136:

    • D

      程序自动终止
      • dxl

      5
      5
      帖子
      123
      浏览

      W

      @dxl 噢,那可以在相应的位置加一些测试语句试试。

    • J

      高压下interFoam算液滴运动能量不守恒?
      • JqBu

      5
      5
      帖子
      122
      浏览

      星

      会不会是质量有问题?sum变成了0.5就不对了吧

    • 学流体的小明

      OpenFOAM v-2012 singleGraph 提取一条线上的数据出错
      • 学流体的小明

      9
      9
      帖子
      267
      浏览

      学流体的小明

      更新一下
      发现了问题的源头,是网格的问题。
      我使用ICEM画网格,或者OpenFOAM的blockMesh工具画网格,都是先画背景网格,然后对近壁面进行多次加密。加密是八叉树类型的加密,所以在网格尺寸变化的地方,大网格的尺寸直接是小网格的二倍。这样的网格确实不好,可能一些拓扑结构上的不好导致了singleGraph程序进行插值时找不到插值的基点。
      解决办法:
      举例说距离壁面0~1的网格尺寸是1,1~2的网格尺寸是2,那么就使用singleGraph在0~1这个范围内提取一条线,在1~2再提取一条线,这时的type可以是uniform,也可以是midPoint或者midPointAndFace。一句话,就是分段提取信息。
      我是重新画了网格, 老师说之前画的这网格根本不能用:mihu:

    • 我

      cgns格式下的多面体网格,在paraview中查看
      • 我爱梨涡

      10
      10
      帖子
      580
      浏览

      我

      @希望先生 硫酸老师说他上传的版本坏掉了,缺东西,找时间再上传一个新的:135:

    • wg0632

      LES中关于Resolved TKE和Modelled TKE求解比例的问题
      • wg0632

      15
      15
      帖子
      2150
      浏览

      尚

      @ct 我处理时也出现了负值,好奇怪啊

    • adcpk

      跨节点运行openfoam慢
      • adcpk

      6
      6
      帖子
      1156
      浏览

      C

      @adcpk 超算每个节点20核,是因为只有20核还是只用了20核?如果是只用了20核,其他核在跑别的作业吗?如果只有20核,建议换成15+15这样来测试。

      一般情况下超算平台的CPU性能肯定没有你工作站的好,工作站肯定比超算新吧,快一些的话其实也可以理解。

    • 刘

      边界条件的问题请教
      • 刘飞

      2
      2
      帖子
      127
      浏览

      李东岳

      这种边界条件不是特别稳定。很容易发散。所以总是报错。

    • 田畔的风

      多相流求解器中的曳力项实现
      • 田畔的风

      5
      5
      帖子
      130
      浏览

      田畔的风

      @李东岳 感谢李老师!现在对这个求解器理解了一些,对于$\mathbf{U}_1$的控制方程, $K_d \mathbf{U}_2$一项作为显式项被直接纳入pEqn.H的界面通量的修正。

    • E

      《无痛苦N-S方程笔记》勘误?
      • EZY

      2
      2
      帖子
      165
      浏览

      李东岳

      非常感谢!已更新

    • 李东岳

      不需要壁面距离的kOmegaSST模型
      • 李东岳

      3
      3
      帖子
      171
      浏览

      李东岳

      嘿,我还没关注这个历史。还真是。太折磨人了。

    • 韬

      OpenFOAM模拟空化气泡一些参数的问题
      • 韬智tz

      2
      2
      帖子
      113
      浏览

      李东岳

      @韬智tz 在 OpenFOAM模拟空化气泡一些参数的问题 中说:

      那最大气泡半径怎么得知呢

      这个应该是随着模拟自动发展出来的吧?

    • C

      讨论帖:静止到不稳定性流动发生采用湍流模型计算。
      • Chen_hao

      2
      2
      帖子
      70
      浏览

      李东岳

      你可以直接采用湍流模型来算试一下。用湍流模型计算层流,只要湍流粘度足够小,影响就很小。

    • D

      大家有没有发现foamyHexMesh和foamyQuadMesh都是不能用的
      • durm17

      3
      3
      帖子
      1136
      浏览

      李东岳

      @李东岳

      sudo apt-get install libcgal-dev

      这样就可以编译了

    • C

      量纲问题:加入的fvm::susp部分总差个密度量纲?求大佬指点,我已黔驴技穷了
      • Chen_hao

      7
      7
      帖子
      172
      浏览

      vbcwl

      openFoam可以无量纲的,应该在etc/controlDict这个文件里里吧dimensionset 1改为0

    • 小

      粘度模型,求解随温度变化的粘度?
      • 小龙

      16
      16
      帖子
      6600
      浏览

      2

      @nanxuan 请问你解决这个问题了吗?能否分享一下?谢谢

    • vbcwl

      DPMFoam如何得到粒子的位置
      • vbcwl

      4
      4
      帖子
      145
      浏览

      vbcwl

      @星星星星晴 谢谢星星前辈,这就去试试:146:

    • 念

      openfoam采用tecplot后处理
      • 念吾冰心

      1
      1
      帖子
      82
      浏览

      念

      各位前辈好,我采用open foam并行计算,想用tecplot后处理。导入controlDict后只有模型显示,没有计算时间信息。另外在open foam中重组的时候出现以下报错Create time

      --> FOAM Warning :
      From function int main(int, char**)
      in file reconstructPar.C at line 220
      No times selected
      不知道什么原因。请问有没有什么办法可以让我用tecplot后处理的。

    • winsway_zero

      Paraview 处理千万级网格问题
      • winsway_zero

      7
      7
      帖子
      414
      浏览

      C

      @winsway_zero 千万级别笔记本开paraview比较难,还是得找台本地的服务器。

      数据传回本地你可以写个脚本啥的自动去跑,不过这个得看集群的网络。我们是大量千万网格级别的计算随时回传的,感觉速度也还行。不过我们的计算是稳态不可压,算是最简单的了。

      有效的后处理看你需求了,如果同类型的案例,只要一开始能够看到三维的展示就好,这样能明确知道哪些地方需要关注。后续写成各种function配到controldict里面,计算完成之后就直接跑一遍,这样生成的结果文件数据量小一些。

    • D

      DPMFOAM 鼓泡床
      • dxl

      7
      7
      帖子
      171
      浏览

      李东岳

      是的,MPPIC把拉格朗日粒子看成parcel了,泡泡的话,还是粒子比较好

    • O

      OpenFOAM+IBM
      • OItoCFD

      9
      9
      帖子
      438
      浏览

      O

      @rachel0096 我没看过他这个 但基本都大同小异 其实 写一个ibm在openfoam就用不了多少代码 我也就看了几篇文章 找准一篇你觉得好实现的对着做 你可以先用最简单的方法 比如在pimplefoam里 对于2d圆柱绕流 写一个函数检测小于半径r范围内的cell 这样就检测出一个圆柱范围内的流体cell 标记为1 其他流体的cell标记为0 然后在压力方程那里 根据固体cell和desired velocity的速度差算出体积力 加给phi那里 进入压力迭代 这就是一个最简单的ibm 这个弄对了再加上二阶插值分布函数那些来考虑更高精度的界面识别

    • E

      非线性涡粘性模型编译问题
      • EZY

      3
      3
      帖子
      89
      浏览

      E

      @李东岳 感谢东岳老师提供的思路,我在代码中把ShihQuadraticKE改了个名,目前在源文件中用Allwmake编译成功了。
      不过孩子还是很不明白怎么单独拿出来编译这类非线性湍流模型,看来暂时只能通过这种方式代替了。

    • 爱

      喷射流线图出现平面问题
      • 爱吃鱼的兔子

      7
      7
      帖子
      385
      浏览

      爱

      @bestucan 好的,谢谢老师

    • 爱

      blockMesh命令报错
      • 爱吃鱼的兔子

      3
      3
      帖子
      95
      浏览

      爱

      @wangfei9088 好的,谢谢,可以了

    • C

      关于几个运算符运算后的量纲疑问
      • Chen_hao

      3
      3
      帖子
      90
      浏览

      C

      @chen_hao
      解决了,改成了无量纲,就避免出问题:

      volSymmTensorField Sij(twoSymm(tgradU())/omega_); volTensorField Wij(2.0*skew(tgradU())/omega_);
    • C

      请问有并行debug的工具吗?
      • CFDngu

      4
      4
      帖子
      124
      浏览

      Cp_Zhao

      @cfdngu 收费也没办法,我之前找了一圈也没有找到比这个好用的

    • W

      OpenFoam中是否可以使用一个时间函数作为边界?
      • WangQi 0

      5
      5
      帖子
      150
      浏览

      W

      @tens 感谢!这正是我想要的

    • 杨

      interpolate()函数怎么用
      • 杨英狄

      1
      1
      帖子
      54
      浏览

      杨

      如果已知流场内某一点的坐标(a,b,c),想通过插值获得这一点的流场物理量,可以使用interpolate()函数,这一函数的定义如下: template<class Type> Type Foam::AveragingMethods::Basic<Type>::interpolate ( const barycentric& coordinates, const tetIndices& tetIs ) const { return data_[tetIs.cell()]; }

      代码中coordinates、tetIs分别表示什么呢?
      如果已知点(a,b,c)如何获取coordinates、tetIs呢?
      谢谢!

    • W

      相求两个标量梯度的内积报错,求指教
      • WangQi 0

      5
      5
      帖子
      146
      浏览

      W

      @李东岳 十分感谢

    • 是

      湍流模型方程和代码问题
      • 是嘿嘿牛啊

      12
      12
      帖子
      407
      浏览

      是

      @李东岳 正在学习,谢谢李老师!