oepnFoam如何初始化非均匀内部标量场
-
由于计算需要,在oepnFoam中想要生成随Y轴变化的温度场(比如T=300+100*Y),但是不知道要如何才能实现,希望诸位大佬能不吝赐教。
我自己目前看到两个实现方案,但是都尚未能实现-
1是看到blastXiFoam求解器在setField文件中通过volScalarFieldFunction来施加code标量场,但是我使用该方法时一直报错(即使直接运行blastXiFoam案例中的Allrun文件);
-
2是看到很多说使用funkySetFields包可以实现复杂初始化场,目前尚未实现。
-
-
of是否有相应的边界条件满足你这个需求我不知道,但是有个不成熟的想法,你把每个网格坐标列出来,然后在excel里面编写公式,再复制进0文件
-
@xuqiming 论坛里有个名为“【分享+搬运】自定义非均匀inlet U”的帖子,或许可以帮到你
-
@Rachel0096 感谢你的回复,但是该教程是对边界条件进行修改,如果将二维工况中的内部标量类比于三维条件下的边界标量似乎可以尝试,希望有更好的办法。
-
感谢上述诸位的帮助,我已经成功通过funkySetFields解决了上述问题。并有一些自己的感受
*blastXiFoam求解器中的volScalarFieldFunction在OF7中是不支持的,虽然不知道为何我下载的blastFoam对应版本turious中有该函数;
*通过swak4foam中funkySetFields能够实现非均匀场的指定。swak4foam安装需要找对对应自己OF版本的文件,目前我找到的最高的似乎只支持到OF7。在高版本的UBUNTU上安装swak4foam无法直接使用,因为swak4foam调用python内核,且只支持“Python”名,而在高版本的UBUNTU中识别的的是python3,因此需要将python3和python进行连接,使用sudo ln -sf /usr/bin/python3 /usr/bin/python
即可。
*funkySetFields的简单使用很容易实现,在system中复制入一个funkySetFieldDict文件,通过expression进行场和条件的指定,运行funkySetFields -time n
即可实现非均匀场的指定。
6/7