CFD中文网

    CFD中文网

    • 登录
    • 搜索
    • 最新

    计算圆管绕流,的流固耦合fsiFoam的Floating point exception (core dumped)

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

      计算圆管绕流,的流固耦合fsiFoam,库郎数和残差较大,第一个时间步长都计算不过去。使用了foam-extend3.1,迭代了30次都无法收敛,请教大神如何才能降低库郎数和残差让他收敛

      Time = 0.00025, iteration: 30
      Maximal accumulated displacement of interface points: 0.0030560221
      GAMG:  Solving for cellMotionUx, Initial residual = 0.91131119, Final residual = 0.00072219997, No Iterations 1
      GAMG:  Solving for cellMotionUy, Initial residual = 0.8372583, Final residual = 0.00018220686, No Iterations 4
      GAMG:  Solving for cellMotionUz, Initial residual = 0.83907808, Final residual = 0.00074754473, No Iterations 3
      GAMG:  Solving for cellMotionUx, Initial residual = 0.005840706, Final residual = 3.3755319e-06, No Iterations 5
      GAMG:  Solving for cellMotionUy, Initial residual = 0.0014240355, Final residual = 9.3916646e-07, No Iterations 5
      GAMG:  Solving for cellMotionUz, Initial residual = 0.0037156885, Final residual = 2.0135642e-06, No Iterations 5
      Evolving flow model
      Courant Number mean: 0.12920764 max: 2.1173853 velocity magnitude: 5.8284982
      DILUPBiCG:  Solving for Ux, Initial residual = 0.00050711718, Final residual = 6.735853e-07, No Iterations 3
      DILUPBiCG:  Solving for Uy, Initial residual = 0.00036428585, Final residual = 8.7737472e-07, No Iterations 3
      DILUPBiCG:  Solving for Uz, Initial residual = 0.0016313381, Final residual = 1.5961465e-07, No Iterations 4
      GAMG:  Solving for p, Initial residual = 0.00108613, Final residual = 7.8685153e-07, No Iterations 8
      GAMG:  Solving for p, Initial residual = 0.00019371718, Final residual = 5.401407e-07, No Iterations 5
      time step continuity errors : sum local = 2.3989423e-09, global = -6.1017797e-11
      GAMG:  Solving for p, Initial residual = 0.0003988323, Final residual = 4.1675183e-07, No Iterations 7
      GAMG:  Solving for p, Initial residual = 4.9145888e-05, Final residual = 5.1093922e-07, No Iterations 4
      time step continuity errors : sum local = 2.270261e-09, global = 2.9434889e-10
      GAMG:  Solving for p, Initial residual = 8.1696621e-05, Final residual = 5.3236835e-07, No Iterations 5
      GAMG:  Solving for p, Initial residual = 7.3969174e-06, Final residual = 4.311989e-07, No Iterations 2
      time step continuity errors : sum local = 1.915783e-09, global = 2.5707342e-10
      DILUPBiCG:  Solving for epsilon, Initial residual = 0.00031614333, Final residual = 1.050823e-07, No Iterations 3
      DILUPBiCG:  Solving for k, Initial residual = 0.0012814958, Final residual = 4.2631276e-07, No Iterations 3
      Setting traction on solid patch
      Total force (fluid) = (-459.15346 -1.0986824 6.7686718e-06)
      Total force (solid) = (459.1594 1.0991446 -6.379015e-06)
      
      Time = 0.00025, iteration: 30
      Maximal accumulated displacement of interface points: 0.065467478
      GAMG:  Solving for cellMotionUx, Initial residual = 0.79783225, Final residual = 4.939853e-06, No Iterations 1
      GAMG:  Solving for cellMotionUy, Initial residual = 0.98797867, Final residual = 0.00038088437, No Iterations 1
      GAMG:  Solving for cellMotionUz, Initial residual = 0.99921705, Final residual = 0.00017911438, No Iterations 1
      GAMG:  Solving for cellMotionUx, Initial residual = 1.2711546e-05, Final residual = 4.7196981e-07, No Iterations 3
      GAMG:  Solving for cellMotionUy, Initial residual = 0.00037198031, Final residual = 6.6720231e-07, No Iterations 4
      GAMG:  Solving for cellMotionUz, Initial residual = 0.00017081592, Final residual = 5.0439818e-07, No Iterations 4
      Evolving flow model: consistentIcoFlow
      Courant Number mean: 0.0090301047 max: 0.065159774 velocity magnitude: 0.057301147
      DILUPBiCG:  Solving for Ux, Initial residual = 0.0026059227, Final residual = 7.4154757e-07, No Iterations 1
      DILUPBiCG:  Solving for Uy, Initial residual = 0.014165186, Final residual = 4.8137205e-09, No Iterations 2
      DILUPBiCG:  Solving for Uz, Initial residual = 0.008498764, Final residual = 2.0793996e-09, No Iterations 2
      Consistent backwardDdtPhiCorr
      GAMG:  Solving for p, Initial residual = 0.051049597, Final residual = 9.9704343e-07, No Iterations 126
      GAMG:  Solving for p, Initial residual = 0.020685413, Final residual = 9.673727e-07, No Iterations 32
      time step continuity errors : sum local = 3.1839476e-08, global = -2.5816328e-09
      Consistent backwardDdtPhiCorr
      GAMG:  Solving for p, Initial residual = 0.0063770573, Final residual = 9.5379753e-07, No Iterations 28
      GAMG:  Solving for p, Initial residual = 0.0017021007, Final residual = 7.7514105e-07, No Iterations 7
      time step continuity errors : sum local = 2.5870532e-08, global = -3.2020508e-09
      Consistent backwardDdtPhiCorr
      GAMG:  Solving for p, Initial residual = 0.00032173865, Final residual = 8.340539e-07, No Iterations 6
      GAMG:  Solving for p, Initial residual = 6.000076e-05, Final residual = 9.9786163e-07, No Iterations 3
      time step continuity errors : sum local = 3.324389e-08, global = 1.4105992e-09
      Setting traction on solid patch
      Total force (fluid2) = (-0.032864973 -7.3826261e-06 -8.2297438e-06)
      Total force (solid) = (0.032882651 4.759419e-06 8.2338506e-06)
      Evolving stress model
      DICPCG: Solving for D, Initial residula = 9.4105628e-05, Final residual = 7.0815126e-05, No outer iterations = 62
      Max relative residual = 0.00010949815, Relative residual = 9.6889967e-08, enforceLinear = 0
      here. rheol
      Current fsi relative residual norm: 0.99756477
      there. rheo? 
      ExecutionTime = 393.24 s  ClockTime = 393 s
      
      forces output:
          forces(pressure, viscous)((459.60513 1.099789 -6.5750415e-06) (0.45167049 0.0011065994 1.9363028e-07))
          moment(pressure, viscous)((-0.27504867 114.90181 -0.00011651384) (-0.00027659408 0.11291678 -1.6157571e-05))
      
      forceCoeffs output:
          Cd = 13.047032
          Cl = 0.031220971
          Cm = -7.5250194e-06
      
      Time = 0.0005
      
      
      Time = 0.0005, iteration: 1
      Modes before clean-up : 28, modes after clean-up : 28
      Maximal accumulated displacement of interface points: 131520.66
      GAMG:  Solving for cellMotionUx, Initial residual = 0.99999997, Final residual = 0.00059804825, No Iterations 3
      GAMG:  Solving for cellMotionUy, Initial residual = 1, Final residual = 0.00018112037, No Iterations 4
      GAMG:  Solving for cellMotionUz, Initial residual = 1, Final residual = 0.00071242028, No Iterations 3
      GAMG:  Solving for cellMotionUx, Initial residual = 0.00030676863, Final residual = 6.1484473e-07, No Iterations 4
      GAMG:  Solving for cellMotionUy, Initial residual = 9.0611988e-05, Final residual = 9.4170358e-07, No Iterations 3
      GAMG:  Solving for cellMotionUz, Initial residual = 0.00035888355, Final residual = 5.823629e-07, No Iterations 4
      Evolving flow model
      Courant Number mean: 4.4963525 max: 8386.7294 velocity magnitude: 223638.76
      DILUPBiCG:  Solving for Ux, Initial residual = 0.99999848, Final residual = 1.0000271, No Iterations 1000
      DILUPBiCG:  Solving for Uy, Initial residual = 0.99997733, Final residual = 0.99997733, No Iterations 1000
      DILUPBiCG:  Solving for Uz, Initial residual = 0.99999992, Final residual = 0.99999992, No Iterations 1000
      Floating point exception (core dumped)
      
      * 列表
      外侧流体 	epsilon 	k 	nut 	p 	pointmotion U 	U 	
      INLET 	inletOutlet 	inletOutlet 	calculated 	zeroGradient 	fixedValue 	fixedValue 	
      OUTLET 	inletOutlet 	inletOutlet 	calculated 	fixedValue 	fixedValue 	zeroGradient 	
      FRONT_AND_BACK 	epsilonWallFunction 	kqRWallFunction 	nutkWallFunction 	zeroGradient 	fixedValue 	fixedValue 	
      UP_AND_DOWN 	epsilonWallFunction 	kqRWallFunction 	nutkWallFunction 	zeroGradient 	fixedValue 	fixedValue 	
      INTERFACE_INTERFACE 	epsilonWallFunction 	kqRWallFunction 	nutkWallFunction 	zeroGradient 	fixedValue 	movingWallVelocity 	
      内侧流体 	epsilon 	k 	nut 	p 	pointmotion U 	U 	
      INLET 	inletOutlet 	inletOutlet 	calculated 	zeroGradient 	fixedValue 	fixedValue 	
      OUTLET 	inletOutlet 	inletOutlet 	calculated 	fixedValue 	zeroGradient 	zeroGradient 	
      INTERFACEWATER 	epsilonWallFunction 	kqRWallFunction 	nutkWallFunction 	zeroGradient 	fixedValue 	movingWallVelocity 	
      固体 	D 	pointD 	密度 	弹性模量 	泊松比 		
      OUTERWALL 	tractionDisplacement 	calculated 	6500 	7.80E+10 	0.37 		
      INNERWALL 	tractionDisplacement 	calculated 					
      UP_AND_DOWN 	fixedValue 	fixedValue 		
      
      控制条件为
      application     fsiFoam.rheo;
      
      startFrom       startTime;
      
      startTime       0;
      
      stopAt          endTime;
      
      endTime         0.42;
      
      deltaT          2.5e-4;
      
      writeControl    runTime;
      
      writeInterval   2.5e-3;
      
      purgeWrite      0;
      
      writeFormat     ascii;
      
      writePrecision  8;
      
      writeCompression uncompressed;
      
      timeFormat      general;
      
      timePrecision   6;
      
      runTimeModifiable yes;
      
      adjustTimeStep  yes;
      
      maxCo           0.01;
      
      maxdeltaT       2.5e-3;
      
      fsi设置如下
      solidPatch OUTERWALL;
      solidZone OUTERWALL_zone;
      
      fluidPatch INTERFACE_INTERFACE;
      fluidZone INTERFACE_zone;
      
      solidPatch2 INNERWALL;
      solidZone2 INNERWALL_zone;
      
      fluid2Patch INTERFACEWATER;
      fluid2Zone INTERFACEWATER_zone;
      
      relaxationFactor 0.01;
      
      interfaceDeformationLimit 0;
      
      outerCorrTolerance 1e-6;
      nOuterCorr 20;
      
      interpolatorUpdateFrequency 0;
      
      //couplingScheme FixedRelaxation;
      //couplingScheme Aitken;
      
      couplingScheme IQN-ILS;
      couplingReuse 1;
      
      coupled yes;
      
      1 条回复 最后回复 回复 引用
      • 炎
        炎冰灬灬 最后由 编辑

        请问你解决了吗,我最近也遇到了同样的问题。我不是刚开始出现的,我是计算到三分之一的时候出现的这个问题

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

          库朗数大就减小时间步啊,如果一个时间步冲出网格,怎么都收敛不了

          滚来滚去……~(~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

          炎 2 条回复 最后回复 回复 引用
          • 炎
            炎冰灬灬 @bestucan 最后由 编辑

            @bestucan 对哦,我发现我的也是库朗数是1.9。害,没发散就没往库朗数那边考虑,一语惊醒梦中人,谢谢

            1 条回复 最后回复 回复 引用
            • 炎
              炎冰灬灬 @bestucan 最后由 编辑

              @bestucan 你看下我这个,我的最大库朗数还是很小的,但是每次都要迭代到最大次数30才能推进下一个时间步 1.png 2.png

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

                @炎冰灬灬 看看这是残差监视设的太低了。就是fvSolution里的面tolerance。达不到这么小的值就认为还没收敛就继续算。你的30次迭代,残差都e-8了,太小了。relTol也会影响,一个相对的,一个绝对的。

                滚来滚去……~(~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 条回复 最后回复 回复 引用
                • 炎
                  炎冰灬灬 @bestucan 最后由 编辑

                  @bestucan 我的耦合求解器设置的是e-6,流体也是e-6,固体是e-9。是不是固体这边设置的残差太小了呢?下面的截图依次是流体、耦合和固体的残差设置。残差.png 耦合.png guti.png

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

                    @炎冰灬灬 我没做过,所以不清除多大合适。但是你说每次都计算到30次才进入下一个时间步是因为这个设置的。设大了,就不会要计算到30步才停了。或者把最大迭代步设大点。

                    判断当前的残差还需不需要算,需要看残差图,看看随着迭代的增加残差是否还明显下降,如果残差线都平了,再算意义也不大了。如果还有很大的下降空间,再算算稳一些。

                    滚来滚去……~(~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 条回复 最后回复 回复 引用
                    • bestucan
                      bestucan 版主 副教授 最后由 编辑

                      OpenFOAM生成残差图,好像之前有人在论坛里讨论过

                      滚来滚去……~(~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 条回复 最后回复 回复 引用
                      • 炎
                        炎冰灬灬 @bestucan 最后由 编辑

                        @bestucan 我设置的计算时间是6秒,前面都还好,算得很快,每次算到2秒的时候,就开始每个时间步迭代到30次了

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

                          @炎冰灬灬 八成是算到两秒的时候,物理量开始急剧变化了(比如撞倒边界突然减速之类的),所以追踪起来比较费劲。那就让他算到30步。等后面这种变化平稳了,就不会每一步都要算到30步了

                          滚来滚去……~(~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

                          炎 2 条回复 最后回复 回复 引用
                          • 炎
                            炎冰灬灬 @bestucan 最后由 编辑

                            @bestucan 我算的是柔性翼形。我看自带算例里面,大概在两秒的时候,自带算例里面的固体开始出现变形。所以我在考虑两秒的时候是不是就是固体开始变形的时候呢,然后这个时候有什么东西导致了迭代出现30次

                            bestucan 1 条回复 最后回复 回复 引用
                            • 炎
                              炎冰灬灬 @bestucan 最后由 编辑

                              @bestucan 自带算例里面也是,从某一时刻开始一直到计算结束,每个时间步迭代为16次

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

                                @炎冰灬灬 反正不崩了,能算下去就是希望₍₍ (ง ˘ω˘ )ว⁾⁾
                                先过一遍再慢慢改善

                                滚来滚去……~(~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 条回复 最后回复 回复 引用
                                • 炎
                                  炎冰灬灬 @bestucan 最后由 编辑

                                  @bestucan 有没有可能是差分格式或者是求解格式的问题呢

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

                                    @炎冰灬灬 判断差分和求解格式需要的理论深度比较深,我说不来。

                                    我目前的认知:如果是差分的问题,可能会造成特殊的结果,不符合实际(比如中心差分的棋盘压力,比如迎风算带回流的)。如果是求解格式,它会影响能不能收敛或者收敛的速度。

                                    可是的你的计算很正常,只是收敛的慢些,还不至于出错。可能会有另一种求解格式能快一些收敛。但是差分格式有没有问题要看物理场合不合预想,结果合不合实际。

                                    如果你那么在意单时间步内收敛步数。那就再缩短时间步。时间步越短,单时间步收敛的越快。当然计算同样的时间,需要的时间步越多。

                                    滚来滚去……~(~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

                                    炎 2 条回复 最后回复 回复 引用
                                    • 炎
                                      炎冰灬灬 @bestucan 最后由 编辑

                                      @bestucan 谢谢,涨知识了。我在考虑要不要最大迭代次数变成50次,看看它是不是要迭代到50次,如果迭代不到50次,那就应该是30次不够收敛,如果迭代到了50次,就有点问题了感觉

                                      1 条回复 最后回复 回复 引用
                                      • 炎
                                        炎冰灬灬 @bestucan 最后由 编辑

                                        @bestucan 我设置迭代50次,它还真的就迭代到了50次。。。

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

                                          @炎冰灬灬 所以要看残差线,如果随着迭代残差不再下降,迭代到天荒地老也不行啊:mihu:

                                          滚来滚去……~(~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 条回复 最后回复 回复 引用
                                          • 炎
                                            炎冰灬灬 @bestucan 最后由 编辑

                                            @bestucan 对的,我正在监测,我看了自带算例的残差,0-2秒残差下降,2秒这一刻突然集体升高,然后2-4秒一直上升,4-6秒上下波动趋于稳定。然后我现在主要就是两秒这个时候在那疯狂迭代,我两秒之前和自带算例一样,残差是下降的

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