还可以考虑GPU运行,不使用cpu运行,具体可以看一下这个WX公众号的内容:TFluid多物理场仿真
Mina Lee
帖子
-
CFDEM计算耗费 -
preCICE软件在CentOS7超算集群上无root权限从源码编译安装记录贴@尚善若水 可能不太行,我这个所有三方库、所有软件都用新C++重新编译的。
-
preCICE软件在CentOS7超算集群上无root权限从源码编译安装记录贴我之前在超算里安装precice+ccx+of,安装了一个月才装上,同样也是没有root权限,找了一大堆人,花了七八张毛爷爷才搞上。
我遇到的问题,OF编译就会报错,超算里所有的C++都试过了,都报错。最后找人查到了原因,超算的C++缺mpicxx环境,重新装的C++才搞上。 -
openfoam viv 网格变形@msm 不好意思,根据你所提供的网格信息,无法判断是哪里的问题。
你提供的图片没看出来是哪个位置的。1、可以参考fluent一样,把边界层提取出来,给边界层也指定位移。
2、也可以使用二次逆距离扩散系数试一下,你现在用的是一次逆距离扩散系数。
3、你需要关注一下,是不是因为单个时间步长的位移过大引起的网格问题,如果不是的话,可以调整动网格方法。 -
openfoam viv 网格变形你应该放几个动网格的运动图片上来,并且描述一下你的动网格方法。
-
分享CFDEM+OpenFOAM+LIGGGHTS初次编译安装过程@李东岳 DEM软件是没有网格的概念的,因为DEM软件就是对每个颗粒求解牛顿第二定律,计算得到每个颗粒的运动。
所以OF耦合liggghts,OF是提取liggghts颗粒的位置、速度......,然后OF识别颗粒所在网格,最后计算拖曳力、体积分数......。反之,根据OF传递进来对每个颗粒的力,liggghts计算牛顿第二定律,得到颗粒位置。
换而言之,CFD-DEM耦合,大多数的活都需要CFD软件干。
所以我觉得,要做这个耦合,OF的代码修改量可能会远远大于liggghts的代码修改量。
-
分享CFDEM+OpenFOAM+LIGGGHTS初次编译安装过程@capillaryFix 我之前想干的事,是把openfoam和liggghts通过precice耦合起来,但是这个工作量太大了,一个人很难完成。
现在的OF和liggghts是通过侵入式的耦合,导致了升级OF版本,就需要重新修改求解器。
这是我之前的设想,这个设想,不需要修改liggghts源代码,但是,因为现在苦于毕业没文章,所以这个想法只能暂时搁置了。 -
overPimpleDyMFoam在设置网格参数有什么需要注意的吗?您好,请问您这个问题解决了吗?能分享一下解决办法吗?
-
overset技术的后处理,如何处理两套网格交界处的数据不连续问题?您好,请问您这个问题解决了吗?能分享一下解决办法吗?
-
重叠网格hole太小,插值区域离核心区域很近 -
precice tourorials中的受力问题@RolandLent precice中没有计算OF力的能力,力都是在OF里计算的。OF中的力也是通过force函数计算的。
pecice只干三件事:
1、引用of中的力变量,提取流固耦合交界面的力变量;引用位移变量。2、precice内部运算。3、覆盖引用的位移变量。 -
precice tourorials中的受力问题因为你编译的openfoam-adapter里,已经对流固耦合交界面的force变量引用了,OF在运行完成后,adapter会引用force变量,precice运行完毕后,会覆盖这个force变量。
precice就是给openfoam施加了一个狄利克雷位移边界条件-理解了这句话就全明白了。 -
流固耦合,换了质量更好的网格流体突然就不收敛了?你好
PIMPLE: iteration 40 **time step continuity errors : sum local = 20238.39271, global = -1326.825454, cumulative = -1286.292262** **time step continuity errors : sum local = 1965.022984, global = -493.7266286, cumulative = -1780.018891** PIMPLE: iteration 22 GAMG: Solving for p, Initial residual = 0.1839153372, Final residual = 1.265686901e-06, No Iterations 20 GAMG: Solving for p, Initial residual = 0.1398796637, Final residual = 1.397575026e-06, No Iterations 17 GAMG: Solving for p, Initial residual = 0.1463017811, Final residual = 1.437462198e-06, No Iterations 16 GAMG: Solving for p, Initial residual = 0.121320625, Final residual = 6.97291136e-08, No Iterations 20 PIMPLE: iteration 23 .GAMG: Solving for p, Initial residual = 0.1600126604, Final residual = 1.256444652e-06, No Iterations 23 GAMG: Solving for p, Initial residual = 0.09022545056, Final residual = 7.317342264e-07, No Iterations 20 GAMG: Solving for p, Initial residual = 0.08084307981, Final residual = 7.297894683e-07, No Iterations 18 GAMG: Solving for p, Initial residual = 0.06296048891, Final residual = 7.500379861e-08, No Iterations 22
你的问题在于:
1、瞬态项上,你的瞬态项很难收敛,残差爆掉了,这个似乎与你的瞬态项离散方式有关,可以试一下二阶向后差分。ddtSchemes { default CrankNicolson 0.9; }
2、你的泊松方程收敛性很差,外循环很难收敛,残差很高,你定义的外循环收敛条件根本达不到,泊松方程在非正交修正后,迭代次数反而变多,证明你的网格质量可能较差。
建议:1.更换瞬态项离散方式。2.增加非正交修正次数,提高你的网格质量。
注意:外循环定义50次合理,一般难收敛问题,最多10次就可以收敛了。流固耦合交界面前几个时间步不收敛很正常,但是你这个是流体不收敛,这就不对了,建议你先单独跑一下流体看看,你这个流体设置不太好。
祝好~ -
大步长下变形网格发散@lwjetmann 可以去查一下solid4foam,这里边提供了RBF求解器,solid4foam的RBF库已经处理好并行问题了,但是你需要做一下改动,因为据我所知(个人见解,真伪自辩!):这个RBF库只能实现被动位移,显然,你要做的仿真是需要写一个主动位移函数的。
dynamicOversetFvMesh确实可以定义运动,因为都是求解位移拉普拉斯方程,区别就是扩散系数是选择均一的?还是逆距离的?还是。。。@lwjetmann 在 大步长下变形网格发散 中说:
但是不知道overset的边界怎么在变形
理论上来说,位移拉普拉斯方程,就是给所有网格单元“中心”定义的,你要好好读一下代码,位移拉普拉斯方程是根据已知的位移边界条件,求解其余单元的位移值,这个需要插值到网格节点上的。换句话说,是不是overset边界,根本不影响变形。fixed边界,才会影响变形。
如果你要用重叠网格,记住,不要用逆距离,OF的这个方法存在BUG!不要问我为什么,因为我也不知道怎么解决这个问题。
祝好~
-
大步长下变形网格发散可以尝试一下RBF求解器,RBF支持的动网格幅度很大,远超扩散和逆距离,当然,也可以尝试一下overset。
https://www.bilibili.com/video/BV18a4y1D7zB/?vd_source=17ca8ef5f5c666dfc54376ddcfdd33da -
目前是否存在库或求解器:可以实现 重叠域运动的同时背景域网格发生形变? -
openfoam如何结合主动控制和被动控制?可不可以结合codestream实现旋转呢?