二维自适应网格
-
参考论文Dynamic meshing around fluid-fluid interfaces with applications to droplet tracking in contraction geometries附录B 里面的代码,修改OpenFOAM自带的三维自适应网格算法,不过没有成功。我选用了一个最简单的2D导热问题,来调试这个代码,后俩发现在hexRef4.C(这个文件原来是hexRef8.C用于处理三维问题)的函数createInternalFaces里有一个判断if(edgeMidPointI==-1),这个出现了问题,而论文里并没有写这个,edgeMidPointI这个变量是传递到函数storeMidPointInfo这个函数中,所以现在想改写一下这个函数,但我对这个函数的原理还没有看明白,不知有人实现了OpenFOAM下2D自适应没? 想交流一下,如果最终能把代码调通,我会把代码也共享一下。
-
@supersoldier
没看文章,不过3D网格自适应可以直接用,不过2D的需要更改网格boundary的类型,变成pesudo-2D即可。所以不需要更改代码。 -
我试过采用symmetryPlane和cyclic边界,但是三维方向上网格还是被切了,我现在只想让x和y方向切网格。这个pesudo-2D是指在三维方向上采用类似symmetryPlane和cyclic边界条件处理吗? 我找了一下 ,好像是这个意思。 谢谢你的回复@administrators
-
@supersoldier
是的,不能用empty
,用的是什么我也记不太清了,13年曾经别人提出过自适应网格不能用于2D算例,后来我改变了下polyMesh
下面的boundary可以实现,但是现在记不得用的什么类型了。不过肯定不用改源代码。头像好萌 -
@cfd-china 当时Z方向上的一层网格有被加密码?
-
@supersoldier 没有。网格就是2D网格。不过把
boundary
类型改了。 -
@浪迹天大 The OpenFOAM Technology Primer 这本书动网格一章里面有讲自适应网格的,OpenFOAM求解器大多可以添加自适应,而且步骤比较简单。:happy:
-
-
@supersoldier 好久没来了,2d的问题进展的如何啊?我最近在尝试做AMR的并行运算,level一高网格数过大nodes之间的数值传达总会出error,我想可能是跟内存大小和nodes之间的通讯设置有关系。你有试过高level的并行运算吗?我的case背景网格用的uniform 1mm,到level6(15.625um)就算不动了,你有什么建议吗?
-
@harvee @harvee 不好意思一直没回复 ,最近都没弄了,在搞化学反应一直又问题,你有什么进展吗?cfd-online上那个帖子有回复,我一直也没看。cfd-online二维自适应
-
已经找到了论文Dynamic meshing around fluid-fluid interfaces with applications to droplet tracking in contraction geometries作者的代码,使用OpenFOAM2.1版本测试了一下结果没有问题,代码下载位置,大家可以下来试试。
这个是我运行作者给的算例的结果:
-
不是特别懂自适应网格的问题。还请研究这方面的朋友用比较简单的语言向外行解释一下:
- 为什么要用自适应?传统网格不能解决的什么样的问题,但自适应网格能解决得更有效率?
- 自适应网格是怎么实现的?什么样的主要变量在控制网格自动地变小,或者变大?
- 有什么样的实际应用场合?
- 自适应遇到什么样的瓶颈?
-
@random_ran 浸入边界法,在物面附近需要较细的网格