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



  • 没有报错,courant number 0.225.



  • 在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
    


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

    十分感谢!



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


  • Linux讲师 OpenFOAM讲师

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

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

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

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


Log in to reply
 

CFD中文网 2016 - 2020 | 京ICP备15017992号-2