Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
各位老师朋友,大家好,最近在使用probe探针函数的时候发现一点问题,如下图所示两个测点在垂直于平面方向存在测点,且两个面测点的y分别是+0.05和-0.05。使用探针函数输入坐标诸如(x,0.05,z)时,运行FOAM得到如下结果。但是将测点改为(x,0.0500001,z)形式时,FOAM可以检测到测点。实际上测点所处面的实际坐标确实是0.05....,探针报错。请问这是什么原因?测点图如下,报错图如下,麻烦各位朋友或者老师解疑一下
是在分块并行运算中出现,还是单核测试时就发生了。这边建议可以先结合paraview中来检查一下划分网格后的模型属性
@hitsc30 这东西是OpenFOAM底层的一个bug,它在某些情况下会判断点不在任何一个cell里,高版本应该不会再有问题了。
http://bugs.openfoam.org/view.php?id=1544
我尝试过将高版本的相关代码在低版本上进行编译,但是因为底层代码区别有点大,编译失败了。最后换成高版本的OF去计算的。
如果你一定要使用某个版本的OF,那么可以尝试重新划分下网格,或者像你尝试的一样挪一下点位,但这些都不能百分百保证不会报错。
@cresendo 您好,是使用分块并行计算后,测点搜寻不到。但是稍微调整一点测点坐标后,又能寻找到测点坐标。
@cccrrryyy我去试一下单核计算或者是不同的并行设置,看一下能否搜寻到测点。谢谢您的建议
@hitsc30 我的经验是这个是并行不并行没有关系,你先试试看。一般挪一下点位之后就能出来结果,但是挪多少不固定,因为这个方法本质上是让点位避开OpenFOAM出bug的那个地方,但bug还是存在的。
@cccrrryyy 感谢,我先试一下轻微移动一下测点,看一下是否有数据