CFD中文网

    CFD中文网

    • 登录
    • 搜索
    • 最新

    运行pisoFoam的时候,卡住不动了

    OpenFOAM
    3
    5
    973
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • X
      xjwang 最后由 编辑

      没有报错,courant number 0.225.

      1 条回复 最后回复 回复 引用
      • X
        xjwang 最后由 李东岳 编辑

        在HPC上运行,一开始用一个节点16个处理器运行的时候,花了12个消失得到了3.6s的数据,后来为了提高速度,就换了16个节点一共256个处理器。
        运行了两次,一次在0.163秒卡住了,一次在0.17秒卡住了。

        没有报错,只是卡在那里不动,查看了一下各个处理器还是在满载运行。

        一共有560万个单元,入口风速的边界条件是自己写的,能产生随机风俗时程,之前没有加密沿高度向的底部单元的时候,没有出现过这样的问题。

        我现在觉得问题可能出现在:1.在那一个具体时间步进入死循环出不来了,可能引起的原因是不收敛了,但是那一步的courant number还是很小。2.我写的入口风速有问题。

        感谢各位能提供一些信息!

        如下是运行到最后时候的

        Time = 0.168
        
        Courant Number mean: 0.2252957 max: 0.3151702
        Patch: inlet recycled 3 eddies
        mass flow correction coefficient: 1.005238
        smoothSolver:  Solving for Ux, Initial residual = 0.005431484, Final residual = 3.443522e-07, No Iterations 4
        smoothSolver:  Solving for Uz, Initial residual = 0.00986471, Final residual = 6.099746e-07, No Iterations 4
        GAMG:  Solving for p, Initial residual = 0.1917015, Final residual = 0.01027828, No Iterations 2
        time step continuity errors : sum local = 8.542895e-07, global = 6.909716e-10, cumulative = -8.085466e-07
        GAMG:  Solving for p, Initial residual = 0.01235708, Final residual = 8.729178e-07, No Iterations 21
        time step continuity errors : sum local = 7.655085e-11, global = -5.037762e-13, cumulative = -8.085471e-07
        ExecutionTime = 440.13 s  ClockTime = 426 s
        
        Time = 0.169
        
        Courant Number mean: 0.2252872 max: 0.3151045
        Patch: inlet recycled 4 eddies
        mass flow correction coefficient: 1.005221
        smoothSolver:  Solving for Ux, Initial residual = 0.004916222, Final residual = 3.063116e-07, No Iterations 4
        smoothSolver:  Solving for Uz, Initial residual = 0.009755776, Final residual = 6.022459e-07, No Iterations 4
        GAMG:  Solving for p, Initial residual = 0.1274995, Final residual = 0.008578488, No Iterations 2
        time step continuity errors : sum local = 7.616146e-07, global = -1.088968e-10, cumulative = -8.08656e-07
        GAMG:  Solving for p, Initial residual = 0.009608369, Final residual = 8.486479e-07, No Iterations 21
        time step continuity errors : sum local = 7.726608e-11, global = 7.693458e-13, cumulative = -8.086552e-07
        ExecutionTime = 442.66 s  ClockTime = 429 s
        
        Time = 0.17
        
        Courant Number mean: 0.2252813 max: 0.3153122
        Patch: inlet recycled 7 eddies
        mass flow correction coefficient: 1.00542
        
        1 条回复 最后回复 回复 引用
        • X
          xjwang 最后由 编辑

          补充一点:在这个问题中,我删掉了0.17s的数据,然后让pisoFoam 从0.168s开始运行,可以再运行一会,但是又在0.196s卡住了,卡住的时候,courant number平均位0.2255,最大为0.348.

          十分感谢!

          七 1 条回复 最后回复 回复 引用
          • 七
            七辆战车 @xjwang 最后由 编辑

            @xjwang 请问你的这个问题解决了吗,我也遇到这个问题,不知道咋回事,算例并行计算仍在继续,就是时间步不增加了

            1 条回复 最后回复 回复 引用
            • bestucan
              bestucan 版主 副教授 最后由 编辑

              在求解器的各处随机插入
              cout << "run in line xx"
              重新编译这个求解器,看看具体在哪一步之后就不输出了。

              根据描述,断点续算可以,但是直接突破不过去,而且只是不输出而不是不计算。应当是某个变量积累超过输出语句的判断范围。所以还在算但不输出。所以上面提到的具体哪一步就是修改了这个变量超出了范围。

              更精准的定位错误就要看输出残差的函数怎么写的了。

              OF 的 debug 模式编译有更强大和方便的调试功能。

              滚来滚去……~(~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/blob/master/README-zh_CN.md

              1 条回复 最后回复 回复 引用
              • First post
                Last post