foam-extend 3.2 cyclic边界转换问题
-
使用foam-extend-3.2的createPatch将壁面转换成周期性边界,但是出现报错
但是同样的设置对OpenFOAM2.4.0则没有问题/
使用OpenFOAM2.4.0转换完成后用foam-extend3.2计算也会出现同样的报错
这个是OpenFOAM2.4.0的createPahtchpointSync false; // Patches to create. patches ( { name wall_r; patchInfo { type cyclic; neighbourPatch wall_l; transform unknown; matchTolerance 1E-1; } constructFrom patches; patches (WALL_R) set f0; } { name wall_u; patchInfo { type cyclic; neighbourPatch wall_d; transform unknown; } constructFrom patches; patches (WALL_U) set f0; } { name wall_l; patchInfo { type cyclic; neighbourPatch wall_r; transform unknown; matchTolerance 1E-1; } constructFrom patches; patches (WALL_L) set f0; } { name wall_d; patchInfo { type cyclic; neighbourPatch wall_u; transform unknown; } constructFrom patches; patches (WALL_D) set f0; } );
这个是foam-extend3.2的createPatch
matchTolerance 1e-1; // Do a synchronisation of coupled points after creation of any patches. // Note: this does not work with points that are on multiple coupled patches // with transformations. pointSync true; // Patches to create. patchInfo ( { name wall_r; patchInfo { type cyclic; neighbourPatch wall_l; transform unknown; matchTolerance 1E-1; } constructFrom patches; patches (WALL_R) set f0; } { name wall_u; patchInfo { type cyclic; neighbourPatch wall_d; transform unknown; } constructFrom patches; patches (WALL_U) set f0; } { name wall_l; patchInfo { type cyclic; neighbourPatch wall_r; transform unknown; matchTolerance 1E-1; } constructFrom patches; patches (WALL_L) set f0; } { name wall_d; patchInfo { type cyclic; neighbourPatch wall_u; transform unknown; } constructFrom patches; patches (WALL_D) set f0; } );
这个问题我应该怎么避免或者修正呢?
-
试试cyclicAMI边界呢
-
这个问题比较常见,也不太好规避。一般情况如果用商软,严格的通过周期性边界条件生成的,都不会有问题。但是如果不是通过周期性生成的网格,或者自己不知道怎么搞出来的,虽然看起来是cyclic,但是数学上可能不是那么严丝合缝,就会提示错误。
-
@zhouxu 尝试过,但是直接报错,导致无法生成cyclicAMI,看着似乎是我的模型在转换时点的对应上有10-5量级的变动
-
@李东岳 这个网格模型是通过UG绘制流体域后导入ICEM中绘制的,不太清楚是因为什么原因,但在points文件中发现有部分顶点出现了小量级的位移,是否是这个原因导致的呢?
这个问题有可能规避一下吗? -
@冠竹 一般可以通过增加matchTolerance来实现,不过我看你都0.1了
-
@李东岳 这个可能是我遇到的另一个问题,就是,在foam-extend 3.2中,我明明把matchTolerance修改到0.1了,但是他好像还是默认的0.001,而不是遵循我的设置
-
请问最后解决了吗。我也遇到了同样的问题。
-
@hhh 解决了,需要现在ICEM中设置周期性边界,之后就可以了
我参照的是https://blog.csdn.net/muyangzixue/article/details/108631943