关于OF并行分区的问题
-
一个方形box计算域,中间一小块区域(如下图红框处)需要放在单独设置出来放在1个核心上算,剩下的其余区域想要自动分区。这种该如何指定?
我看了论坛里关于setFields(或者cellDict)指定manual进行手动分区的,感觉这样做太累了,我有56个核心需要指定,而且网格有局部加密,手动分区难以做到负载均衡。请问,还有什么其他便捷方法么?
感谢关注! -
试试这个方法?你需要topoSet创建两个区域
https://www.openfoam.com/releases/openfoam-v1712/parallel.php
numberOfSubdomains 2048; method metis; regions { heater { numberOfSubdomains 2; method hierarchical; coeffs { n (2 1 1); } } "*.solid" { numberOfSubdomains 16; method scotch; } }
-
-
这种应该可以
constraints { geometric { type geometric; grow false; selection { box1 { source box; min (-0.1 -0.01 -0.1); max (0.1 0.30 0.1); } ball { source sphere; origin (-0.1 -0.01 -0.1); radius 0.25; } blob { source surface; surfaceType triSurfaceMesh; surfaceName blob.obj; } } } }
-
@xpqiu 手动划分网格吗?
-
@液固两相流 不是,这个是把选定区域内的网格放到一个processor里面
-
@xpqiu 您能够介绍一下上述方法,单看您发的文件不太懂
-
@液固两相流
把上面这一段加到 decomposeParDict 的后面,然后在分块的时候,就会保证选出来的区域内的网格会分到同一个processor里面。 -
@xpqiu 感谢分享!!
大佬的到来让本群蓬荜生辉!
-
多谢,我一定尝试一下告知结果。后来给老师干活儿忘记了
-
@东岳