找回密码
 注册
查看: 7458|回复: 9

求助分享帖——fluent求解船舶静水航行问题

[复制链接]
发表于 2016-12-29 08:59:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本次cfd计算目的在于实验fluent软件对船舶dtmb5415在静水中以2.097m/s的速度(fn=0.28)航行时的阻力计算精度。网上国际船池上的总阻力数据为4.605kgf(45.17N),我校实验室也仿造了DTMB5415模型,总阻力为4.87kgf(47.726N),相差无几。我跟根据型线建立三维模型,先前导入STAR-CCM+进行网格划分和计算,计算结果为总阻力45.68N,其中摩擦阻力30.1N,压阻力15.56N(含舍入误差)。但学习用fluent计算船舶航行阻力时,一直得不到理想的结果。现将我近一个月以来的具体操作情况分享,望前辈们指点。

先是用icem划分网格,网格质量如下
1.网格质量.PNG
几乎是在0.3以上,应该是可以计算的。

计算实验一:参考韩占中编的《fluent-流体工程仿真计算实例与分析》的2维算例
打开fluent导入网格,因为模型和网格是毫米为单位建立的,所以scale一下
2.转换单位.PNG
变成长-15~15m,高-15~9,的长方体区域,check一下网格
3.检查网格质量.PNG
solver选择瞬态
4.瞬态求解.PNG
model设置:vof多相流,k-epslon RNG湍流模式
5.model—Multiphase设置.PNG
6.model湍流模式.PNG
material添加水
7.材料添加水.PNG
phase设置:主相为空气,副相为水
8.相设置.PNG
cell zone condition设置:参考点设在空气的位置,设置重力加速度,勾选操作密度(不知道是什么。。。)
9.区域操作条件.PNG
边界条件:inlet速度入口,outlet质量出口,sym面为对称面,船体为固定壁面边界,池底为移动固壁,其余是滑移壁面边界。
10.速度入口.PNG
11.出口边界条件.PNG
12.对称边界.PNG
13.移动固壁.PNG
14.滑移边界.PNG
solution control里动量的松弛因子设置为0.1。默认是0.7,但动量方程计算发散,多次尝试降低松弛因子,在0.1时计算收敛。
15.动量松弛因子.PNG
monitor设置:多次经验,这里建议先不要打开力监视器,因为第一时间步的值总是算得不对且极大,可以先试算100步后,观察收敛与否再打开,监控hull和deck的受力。
16.力监视器.PNG
solution Intialization:从入口初始化,觉得能比较好的防止发散和加速收敛。
17.初始化设置-从入口初始化.PNG
Adapt>region>设置水的区域,因为模型0点在船型基线上,吃水为0.248m,所以设置如下,mark后关闭
18.设置水区域.PNG
然后“补丁”上水区域:
19.patch.PNG
检查初始化水面
20.检查初始化水面.PNG
设置时间步长为:0.001s。如果后面收敛速度快了,可以适当逐步加大时间步长,否则容易发散。
21.时间步长.PNG
残差控制调低一些,让其精度更高。
22.残差控制.PNG
开始计算时残差逐步下降,然后在100步(0.1s)左右时收敛,之后收敛状况也不错。但是一段时间没管后回头看,发现残差 开始回升,且出现湍流极限或回流,相信不久就会发散。定下来观察气液交接,果然出错了。
23.计算出错.PNG
如图所示,入口处有大量空气渗入,出现大量漩涡,感觉像是有限池水在摇晃(跟溃坝类似)。

计算实验2:参考常欣、黄胜《fluent船舶流体力学仿真计算工程应用基础》第6章
书中认为入口应区分水流入口和空气入口,出口使用UDF编的压力出口条件,操作如下,
在icem里修改网格,删除原来inlet,重新划分映射水入口waterinlet和空气入口airinlet。具体过程不累述了。
24.icem修改网格.PNG
导出网格后导入fluent设置,前半部分设置相同,主要是边界条件设置不同。
先把phase设置成mixture,设置空气入口和水流入口流速条件,再把phase设置成water,设置入口的相成分,waterinlet的体积分数设为1,airinlet的设为0
25.水入口设置.PNG
26.入口流速设置.PNG
27.入口相设置.PNG
出口条件首先编写udf如下
28.文件udf.PNG
生成C文件后,在fluent里点Define>User-defined>function>compile
28.编译.PNG
使用udf设置压力出口
29.压力出口设置.PNG
检查压力出口设置:基本是水越深压力越大,空气认为是0
29.2压力出口检查.PNG
其他设置基本不变,但把湍流粘度率的限制放大了,我的理解就是让判定发散的条件放宽了。如下图所示。
极限.JPG
计算,当阻力曲稳定后,读取结果:
30.压阻力过大的结果.PNG
咋看还可以总阻力是47.58N,但我这里计算的半船,结果还要翻倍的。这样的计算结果就有问题了。单独看粘性阻力:fluent计算结果15.26,全船30.52N,和starccm的计算结果比较接近。但压阻力32.32,全船64.64N,要比starccm的结果大将近4倍。先不说starccm的各阻力成分计算精度如何,从总阻力看,starccm计算结果是比较靠谱的。fluent里虽然显示计算converge,但从这次结果看却是完全不可靠。
31.2侧面波状.PNG
31.波形侧视.PNG
不过气液界面已经不像方案一那样分叉了。不过因为没有使用动网格,波形图也无法显示。

计算实验3:参考胡坤《ANSYS ICEM CFD工程实例详解》——动网格技术
区别于上述方法,区分气液两相不是用“打补丁”patch的方法而是,使用明渠流动和明渠波浪
32.勾选明渠流动.PNG
这里因为是要算静水航行,所以这里把波高设置为0,波长为任意不为0的常数。(这里本来不相勾选open channel wave BC,但初始化时一直出错)
波浪入口.JPG
为了观察波形还设置了动网格,详细就不说了,反正结果有问题。
33.计算结果依然偏大.PNG
总阻力计算的45.37,全船90.74N。依然不对。不过可以显示波形
34.波形图.PNG
求指教,我需要的是力的数值正确。fluent更新了这么多代,近10年来各船舶专业学者,工程师使用验证,不应该出现这样的结果,因此承蒙高手前辈指点迷津。
p.s. 本来想上传cas文件或网格文件,但是太大了不能上传。
发表于 2017-1-4 15:54:22 | 显示全部楼层
可以交流
发表于 2017-7-4 20:30:11 | 显示全部楼层



是不是没有设置Reference Values
 楼主| 发表于 2017-7-8 11:22:24 | 显示全部楼层
qixizhiying 发表于 2017-7-4 20:30
是不是没有设置Reference Values

是没有改,默认的。我刚才试了下,发现改了再输出报告,结果也是一样的。我想问是不是要在计算之前修改参考值Reference Values?而且,fluent13.0中的Reference Values没有OK确定键,也不知是不是没改成功,求指点?
发表于 2017-7-13 18:35:23 | 显示全部楼层
试了一下,怀疑是边界层的问题,你的Y plus是多少?
发表于 2017-7-23 17:18:06 | 显示全部楼层
如果仅看最后输出值,Reference Values 可以算了之后再设置!如楼上所说,可能是边界层的问题。
发表于 2017-7-23 17:19:23 | 显示全部楼层
如果仅看最后输出值,Reference Values 可以算了之后再设置!如楼上所说,可能是边界层的问题。
 楼主| 发表于 2017-9-5 09:28:31 | 显示全部楼层
月光疾风123 发表于 2017-7-23 17:19
如果仅看最后输出值,Reference Values 可以算了之后再设置!如楼上所说,可能是边界层的问题。

谢谢关注,第一层边界层这块的确之前没怎么关注。划网格时候只是设置了靠近船体的密,远离的小而已。不过从理论是讲我觉得即使边界层设置有误差,但也不应该误差这么大的
发表于 2023-10-27 09:25:13 | 显示全部楼层
作者找到解决办法了吗?我也遇到类似的问题了,计算结束之后我的水相直接漫过了船体。我查找了很多资料,也有说是因为工作条件中的操作密度设置不对,因为fluent默认是采用平均密度进行计算,不知道楼主有没有新的进展
发表于 2023-10-27 09:25:15 | 显示全部楼层
作者找到解决办法了吗?我也遇到类似的问题了,计算结束之后我的水相直接漫过了船体。我查找了很多资料,也有说是因为工作条件中的操作密度设置不对,因为fluent默认是采用平均密度进行计算,不知道楼主有没有新的进展
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表