Skip to content
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
CFD中文网

CFD中文网

  1. CFD中文网
  2. OpenFOAM
  3. 算例topoSet、refineMesh后,无法decomposePar

算例topoSet、refineMesh后,无法decomposePar

已定时 已固定 已锁定 已移动 OpenFOAM
7 帖子 3 发布者 4.7k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • H 离线
    H 离线
    hy1112006
    写于 最后由 编辑
    #1

    最近在试运行一个算例,整体计算区域是标准六面体,结构化网格(网格单元亦为六面体):
    (1)串行运算:blockMesh --> checkMesh --> XXXFoam(运行求解器),没有问题;
    (2)并行运算:blockMesh --> topoSet --> refinMesh --> checkMesh 至此没有问题,但是开始分解网格时decomposePar,出现错误,过程如下;

    --- blockMesh如下(无问题):
    374bf096-52c5-4a1e-9a04-dafe667beaf0-image.png

    --- topoSet -constant 如下 (无问题):
    57716544-4b75-4a27-9a0a-43831f2a9bce-image.png

    --- refineMesh -overwrite 如下(无问题):
    7a0f86b6-a7b8-4d97-9050-e9e72cf84eac-image.png

    --- decompossePar 如下,报错!!:
    0e2312a1-8e5e-40fa-a6b7-8b9239ce2763-image.png

    请问各位专家,这个有可能是什么原因呐,感谢!

    W 1 条回复 最后回复
  • W 离线
    W 离线
    wsxfyy
    在 中回复了 hy1112006 最后由 编辑
    #2

    @hy1112006 我之前这种做法分块的时候并没有报错,也能正常运行。你要不换一下分块方式,不要用这种分块方式,用scotch试一下

    H 1 条回复 最后回复
  • H 离线
    H 离线
    hy1112006
    在 中回复了 wsxfyy 最后由 编辑
    #3

    @wsxfyy 我看了下,这个算例就是用scotch 分解的:143: 只有看看以后有没有啥方法了

    X 1 条回复 最后回复
  • X 离线
    X 离线
    xpqiu 超神
    在 中回复了 hy1112006 最后由 编辑
    #4

    @hy1112006
    先 refineMesh,后 topoSet 试试。
    topoSet 生成的 cellZone 或者 cellSet 等,保存的网格ID是你refineMesh 之前的, refineMesh 之后,网格数量都变了,所以保存在 cellZone 或者 cellSet 里面的编号跟refine之后的网格都不匹配了。

    H 1 条回复 最后回复
  • H 离线
    H 离线
    hy1112006
    在 中回复了 xpqiu 最后由 编辑
    #5

    @xpqiu 刚才试了下,如果先refineMesh的话,会报错:
    05284b26-cf3a-49b2-a5f8-37b62413c0c9-image.png

    这又是什么原因呐,疑惑~~

    X 1 条回复 最后回复
  • X 离线
    X 离线
    xpqiu 超神
    在 中回复了 hy1112006 最后由 编辑
    #6

    @hy1112006
    哦,你的 refineMeshDict 里面需要一个 cellSet 来定义需要refine 的网格。这个 cellSet 也只是用来起这个作用吧。
    所以,你需要在 refineMesh 之前,先 topoSet 把 cellSet 生成出来,然后 refineMesh
    但是,在 decomposePar 的时候要排除对 cellSet 进行 decompose,因为我上一条回复说的原因。可以给 decomposePar 加一个选项,-noSets,这样在 decomposePar 的时候就不读取 cellSet 了,也就不会再触发你主楼遇到的错误了。

    H 1 条回复 最后回复
  • H 离线
    H 离线
    hy1112006
    在 中回复了 xpqiu 最后由 编辑
    #7

    @xpqiu 好的,已经尝试成功,感谢老师指点啊!

    1 条回复 最后回复

  • 登录

  • 登录或注册以进行搜索。
  • 第一个帖子
    最后一个帖子
0
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]