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. OpenFOAM求解器植入自己的代码后并行计算问题

OpenFOAM求解器植入自己的代码后并行计算问题

已定时 已固定 已锁定 已移动 OpenFOAM
4 帖子 2 发布者 3.9k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 施 离线
    施 离线
    施主格子
    写于2020年11月17日 08:50 最后由 编辑
    #1

    请问一下,OpenFOAM求解器植入自己的代码后还能并行计算吗,代码功能并不是CFD相关算法,具体来说应该是对求解器每个时间步计算得到数据的再次使用。

    没有理解,只有认可

    1 条回复 最后回复
  • B 离线
    B 离线
    bestucan 版主 大神
    写于2020年11月19日 06:12 最后由 编辑
    #2

    那并行求解器也是人写的……
    用开源不就是为了对计算过程肆意妄为,想干啥干啥:chitang:
    当然能啊,只要想到就能。计算机就是帮助人类做重复无意义的工作的。

    你描述的这个其实不用改求解器也行,只是用时间步的数据,算了完再处理也行。编程语言都能处理纯文本数据,或者matlab、excel

    滚来滚去……~(~o ̄▽ ̄)~o 滚来滚去都不能让大家看出来我不是老师么 O_o

    异步沟通方式(《posting style》from wiki)(下载后打开):
    https://www.jianguoyun.com/p/Dc52X2sQsLv2BRiqnKYD
    提问的智慧(github在gitee的镜像):
    https://gitee.com/bestucan/How-To-Ask-Questions-The-Smart-Way

    1 条回复 最后回复
  • 施 离线
    施 离线
    施主格子
    写于2021年1月1日 09:15 最后由 编辑
    #3

    首先,谢谢老师回答,我们这个工作不能输出后再处理,涉及利用计算数据进行反演计算。第二,我不是很懂OpenFOAM的并行是什么原理,只是按照使用规则用过,加了自己的代码后再并行就崩了 :xinlei:

    没有理解,只有认可

    1 条回复 最后回复
  • B 离线
    B 离线
    bestucan 版主 大神
    写于2021年1月2日 02:58 最后由 编辑
    #4

    OpenFOAM 并行和通常意义上的并行有点区别。一般并行的部分都是写在代码里的。OpenFOAM 的并行部分不在代码里,严格说,都不是并行的。并行的任务分配是通过 decomposePar 完成。并行计算是通过 runParallel 完成的。所谓并行就是一下开几个求解器进程,同时算不同的区域,几个求解器的计算区域的交接处信息交换也是 runParallel 完成的。

    这样求解器中的变量就不能“特殊”,要“通识”。不能直接“全场”信息,要用“我计算的所有网格”信息。

    你的第一个帖子说要用每个时间步计算的到的数据,这个数据的调用直接写进求解器。那么在各个区域上计算的进程有的快,有的慢。全场的信息(或者说某个时间步计算的到的结果)对于单个进算进程来说是未知的。对于单个进程:我只计算左上角的区域,然后下一步计算需要引用全区域变量。

    runParallel 应该是没有这样的调度的。进程有快慢,所以偶尔会互相等待。等待也是等待交界面的信息。而这个全场信息是等不来的,得合并各个进程的计算结果才有。

    所以有些求解器它就是不能并行,施主又何必强求:chigua:

    滚来滚去……~(~o ̄▽ ̄)~o 滚来滚去都不能让大家看出来我不是老师么 O_o

    异步沟通方式(《posting style》from wiki)(下载后打开):
    https://www.jianguoyun.com/p/Dc52X2sQsLv2BRiqnKYD
    提问的智慧(github在gitee的镜像):
    https://gitee.com/bestucan/How-To-Ask-Questions-The-Smart-Way

    1 条回复 最后回复
2020年11月17日 08:50

2/4

2020年11月19日 06:12

2021年1月2日 02:58
  • 登录

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