LES初始速度场设置和壁面函数设置



  • 大家好。
    最近开始做圆柱绕流,用的LES,pimpleFoam,雷诺数1e5有几个问题想要请教一下大家。

    1. 看了tutorial,和前辈的算例。初始场速度的设置里头,有些设置是直接设置了速度的,比如LES pisoFoam里头motobike算例。
      internalField uniform (20 0 0);
      有一些则没有,例如同样文件夹下pitzDaily算例
      internalField uniform (0 0 0);
      不知道这两者对结果和计算速度是否有影响? 应该如何设置才正确。

    2. 对于使用LES时的避免函数,在边界层控制在yplus小于1的情况下,是否不需要设置壁面函数?因为看到@random_ran 的贴里有设置,觉得有点困惑。

    希望和大家一起探讨,共同进步!
    谢谢


  • OpenFOAM副教授

    原则上讲,初始条件不应该对最终结果有很大影响。从实际操作来讲,一个是LES本身是瞬态的,需要一定的时间达到稳态,初始条件会影响达到稳态所需要的时间,更接近最终结果的初始场自然会更快的到达稳态;另外一个是LES本身计算起来有时候容易不稳定,一个更接近最终结果的初始值有利于一定程度上抑制这种不稳定。从这个角度讲,初始场的设置最好是参考文献,再加上你自己的物理直觉。目的就是挑选一个尽可能接近最终结果的初始场。从科研兴趣的角度讲嘛,你完全可以两个都试一下,得到一个自己的结论。
    yplus小于1不需要设置壁面函数。我自己做过一些壁面函数的粗略分析,现在基本上是用nutUSpaldingWallFunction,但我不做精细的管内流动,所以yplus很少做到1这么小。壁面函数建议参考这个



  • @cccrrryyy 您好!非常感谢你的回答!
    对于yplus小于1而言,我的case表面有很多细小的部分,所以有一些地方的max yplus会达到1.3-1.5这个范围。但是大部分区域和平均值又只有0.5不到。
    所以我不知道是不是应该设置壁面函数来解决这个问题。

    另外,如果使用LES Y+在2-5的范围内的话,是否可以通过添加壁面函数来使得网格数量减小呢?


  • OpenFOAM副教授

    @hoversoar yplus具体应该怎么弄我不清楚,你可以再问问看。印象中,一般的壁面函数都是针对buffer layer而设计的,因为这个是我们不能准确预测速度分布的地方。粘性层(yplus<5)和外面的(yplus>30左右)outer layer是有准确解的。你yplus这么小感觉不需要壁面函数吧?
    你是现在的网格预测不准确还是怎么样?像你说的最大yplus也只是到了1.5,平均值都在0.5以下。这种量级如果预测结果和参考结果差别都很大的话,那应该不是壁面函数的问题吧。
    我说的都只是大概,因为我不做精细的壁面处理,仅供参考。



  • @cccrrryyy
    这两天算了一下初始速度场(0 0 0)和有速度的(1 0 0),发现定量的阻力和升力差别不是太大,确实是有初始速度的稳定起来相对快一些。
    我现在遇到的主要有两个问题:

    1. 在1w雷诺数下,普通圆柱绕流的阻力系数几乎为1. 据文献来看应该在1.1左右比较正确。3w雷诺数下,阻力系数为1.08左右,相对而言比较可以接受。(两个case的模型一样,用的模型是3w的,也就是说yplus在1w的case下会比较小,大概在0.4-0.5左右)
    2. 表面有小凹槽的圆柱模型,3w雷诺数下,阻力系数却相对而言达到了1.2(试验和其他文献来看应该有所降低才对)。
      综上来看,确实不是yplus的原因。不过我也怀疑是不是我的设置有问题,导致结果有偏差。我这里传上来我的几个文件,如果您有空可否帮我看看什么地方的设置有偏差?
      非常感谢!!!


  • 文件格式不支持上传,我重新上传了压缩文档。settings.zip


  • OpenFOAM副教授

    圆柱扰流之前在论坛看到也有人算,好像不太容易算准。大略看了一下你的设置,有以下几个问题,按我认为的重要性排列。
    1、PIMPLE算法一般我会给至少20个nOuterCorrectors,然后2个nCorrectors。你的虽然是不可压的算例,不过nOuterCorrectors是不是也可以多给一些。现在每一个时间步都达到收敛要求了么?我觉得可以尝试pisoFoam,这样就不用管nOuterCorrectors,但相应的时间步可能需要小一点。
    2、当前时间步你的CFL数是多少?
    3、速度对流项的格式,LES还是尽量避免迎风吧。迎风总会有些数值耗散,会导致细节上有些地方不准确。中心差分最好,当然前提是网格质量要高,不然太容易发散。
    你最好参考一下文献里面别人的设置,同样量级雷诺数下别人的入口条件、格式、网格等等,不然修改起来完全没有方向。


  • OpenFOAM副教授

    看到有人讨论圆柱绕流就很激动。

    可是我已经挖了太多坑还没填。关注中,加油。



  • @cccrrryyy 非常感谢您的建议!

    1. 附上现在1w雷诺数的光滑圆柱绕流的例子的某个时间步的截图,用of里头的monitor监控的residual,我也一直很困惑Uz的曲线不像稳定的样子。
      我现在把2个nOuterCorrectors由2提高到5(从31秒开始),算个十秒左右看看结果。

    2. 目前的时间步库朗数是控制在1.5以下。

    3. 这个十秒计算过之后,我会把速度对流格式换成中心差分继续跑看看结果是否有改善,到时候再过来更新!

    Screenshot from 2020-02-27 11-33-27.png
    Screenshot from 2020-02-27 11-35-36.png



  • @random_ran 欢迎吃瓜


  • OpenFOAM副教授

    前排小板凳,:chigua:

    附上现在1w雷诺数的光滑圆柱绕流的例子的某个时间步的截图,用of里头的monitor监控的residual,我也一直很困惑Uz的曲线不像稳定的样子。

    为什么关注点再 U_z 不在 残差最大的 p 上投入精力?

    我现在把2个nOuterCorrectors由2提高到5(从31秒开始),算个十秒左右看看结果。

    这样做的原因是? 为什么是从2到5?而不是其他的数字,比如7?

    目前的时间步库朗数是控制在1.5以下。
    :chigua:

    这个十秒计算过之后,我会把速度对流格式换成中心差分继续跑看看结果是否有改善,到时候再过来更新!

    这个是 case 是机密么?如果能简单运行,我也想试试你的 case.



  • @random_ran
    问得好!

    1. Uz太抢眼了。我看了下之前算的几个例子,发现p的残差几乎都在0.001这个量级。不知道怎么才能继续降下去?
    2. 我一开始尝试增加到10个nOuterCorrectors, 发现第4~5个外循环开始残差下降不明显甚至开始上升,No Iteration也几乎为0。 为了节省时间所以设定到5。
    PIMPLE: iteration 1
    smoothSolver:  Solving for Ux, Initial residual = 0.000154843, Final residual = 2.69652e-07, No Iterations 1
    smoothSolver:  Solving for Uy, Initial residual = 0.00295664, Final residual = 4.75419e-06, No Iterations 1
    smoothSolver:  Solving for Uz, Initial residual = 0.00438083, Final residual = 8.2538e-06, No Iterations 1
    GAMG:  Solving for p, Initial residual = 0.00648663, Final residual = 8.19988e-05, No Iterations 4
    GAMG:  Solving for p, Initial residual = 0.000125942, Final residual = 4.5224e-05, No Iterations 1
    time step continuity errors : sum local = 3.53308e-10, global = -1.25279e-13, cumulative = -2.33184e-10
    GAMG:  Solving for p, Initial residual = 0.000354817, Final residual = 8.87088e-05, No Iterations 1
    GAMG:  Solving for p, Initial residual = 0.000110154, Final residual = 9.47584e-07, No Iterations 8
    time step continuity errors : sum local = 7.40376e-12, global = -2.0947e-13, cumulative = -2.33394e-10
    PIMPLE: iteration 2
    smoothSolver:  Solving for Ux, Initial residual = 1.15813e-06, Final residual = 1.15813e-06, No Iterations 0
    smoothSolver:  Solving for Uy, Initial residual = 1.59673e-05, Final residual = 4.28047e-08, No Iterations 1
    smoothSolver:  Solving for Uz, Initial residual = 3.989e-05, Final residual = 1.15289e-07, No Iterations 1
    GAMG:  Solving for p, Initial residual = 0.00371771, Final residual = 8.15447e-05, No Iterations 3
    GAMG:  Solving for p, Initial residual = 0.000113078, Final residual = 4.60568e-05, No Iterations 1
    time step continuity errors : sum local = 3.60026e-10, global = 4.84724e-15, cumulative = -2.33389e-10
    GAMG:  Solving for p, Initial residual = 0.000230915, Final residual = 6.19172e-05, No Iterations 1
    GAMG:  Solving for p, Initial residual = 8.10529e-05, Final residual = 8.7777e-07, No Iterations 8
    time step continuity errors : sum local = 6.86178e-12, global = 1.42834e-14, cumulative = -2.33375e-10
    PIMPLE: iteration 3
    smoothSolver:  Solving for Ux, Initial residual = 2.91121e-08, Final residual = 2.91121e-08, No Iterations 0
    smoothSolver:  Solving for Uy, Initial residual = 3.97728e-07, Final residual = 3.97728e-07, No Iterations 0
    smoothSolver:  Solving for Uz, Initial residual = 8.90301e-07, Final residual = 8.90301e-07, No Iterations 0
    GAMG:  Solving for p, Initial residual = 0.000168175, Final residual = 1.98109e-05, No Iterations 1
    GAMG:  Solving for p, Initial residual = 3.82521e-05, Final residual = 3.82521e-05, No Iterations 0
    time step continuity errors : sum local = 2.99032e-10, global = -2.47605e-14, cumulative = -2.33399e-10
    GAMG:  Solving for p, Initial residual = 4.55083e-05, Final residual = 4.55083e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 4.55083e-05, Final residual = 9.29993e-07, No Iterations 3
    time step continuity errors : sum local = 7.27013e-12, global = -1.36329e-15, cumulative = -2.33401e-10
    PIMPLE: iteration 4
    smoothSolver:  Solving for Ux, Initial residual = 1.71081e-09, Final residual = 1.71081e-09, No Iterations 0
    smoothSolver:  Solving for Uy, Initial residual = 2.12255e-08, Final residual = 2.12255e-08, No Iterations 0
    smoothSolver:  Solving for Uz, Initial residual = 4.28694e-08, Final residual = 4.28694e-08, No Iterations 0
    GAMG:  Solving for p, Initial residual = 3.37196e-05, Final residual = 3.37196e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 3.37196e-05, Final residual = 3.37196e-05, No Iterations 0
    time step continuity errors : sum local = 2.63599e-10, global = -1.96671e-15, cumulative = -2.33403e-10
    GAMG:  Solving for p, Initial residual = 3.64374e-05, Final residual = 3.64374e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 3.64374e-05, Final residual = 6.46133e-07, No Iterations 2
    time step continuity errors : sum local = 5.05107e-12, global = 3.57324e-16, cumulative = -2.33402e-10
    PIMPLE: iteration 5
    smoothSolver:  Solving for Ux, Initial residual = 3.81718e-10, Final residual = 3.81718e-10, No Iterations 0
    smoothSolver:  Solving for Uy, Initial residual = 3.41675e-09, Final residual = 3.41675e-09, No Iterations 0
    smoothSolver:  Solving for Uz, Initial residual = 5.30364e-09, Final residual = 5.30364e-09, No Iterations 0
    GAMG:  Solving for p, Initial residual = 2.63333e-05, Final residual = 2.63333e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 2.63333e-05, Final residual = 2.63333e-05, No Iterations 0
    time step continuity errors : sum local = 2.05857e-10, global = 4.08418e-16, cumulative = -2.33402e-10
    GAMG:  Solving for p, Initial residual = 2.98151e-05, Final residual = 2.98151e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 2.98151e-05, Final residual = 9.1923e-07, No Iterations 1
    time step continuity errors : sum local = 7.18597e-12, global = 1.67701e-15, cumulative = -2.334e-10
    PIMPLE: iteration 6
    smoothSolver:  Solving for Ux, Initial residual = 1.86276e-10, Final residual = 1.86276e-10, No Iterations 0
    smoothSolver:  Solving for Uy, Initial residual = 2.12072e-09, Final residual = 2.12072e-09, No Iterations 0
    smoothSolver:  Solving for Uz, Initial residual = 1.8065e-09, Final residual = 1.8065e-09, No Iterations 0
    GAMG:  Solving for p, Initial residual = 2.79915e-05, Final residual = 2.79915e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 2.79915e-05, Final residual = 2.79915e-05, No Iterations 0
    time step continuity errors : sum local = 2.1882e-10, global = 1.66412e-15, cumulative = -2.33398e-10
    GAMG:  Solving for p, Initial residual = 3.20665e-05, Final residual = 3.20665e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 3.20665e-05, Final residual = 7.84955e-07, No Iterations 1
    time step continuity errors : sum local = 6.13629e-12, global = 2.44261e-15, cumulative = -2.33396e-10
    PIMPLE: iteration 7
    smoothSolver:  Solving for Ux, Initial residual = 1.86182e-10, Final residual = 1.86182e-10, No Iterations 0
    smoothSolver:  Solving for Uy, Initial residual = 1.67569e-09, Final residual = 1.67569e-09, No Iterations 0
    smoothSolver:  Solving for Uz, Initial residual = 1.11517e-09, Final residual = 1.11517e-09, No Iterations 0
    GAMG:  Solving for p, Initial residual = 3.13138e-05, Final residual = 3.13138e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 3.13138e-05, Final residual = 3.13138e-05, No Iterations 0
    time step continuity errors : sum local = 2.44792e-10, global = 2.48318e-15, cumulative = -2.33394e-10
    GAMG:  Solving for p, Initial residual = 3.63778e-05, Final residual = 3.63778e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 3.63778e-05, Final residual = 7.91691e-07, No Iterations 1
    time step continuity errors : sum local = 6.18895e-12, global = 3.12078e-15, cumulative = -2.3339e-10
    PIMPLE: iteration 8
    smoothSolver:  Solving for Ux, Initial residual = 1.92788e-10, Final residual = 1.92788e-10, No Iterations 0
    smoothSolver:  Solving for Uy, Initial residual = 2.05456e-09, Final residual = 2.05456e-09, No Iterations 0
    smoothSolver:  Solving for Uz, Initial residual = 9.56459e-10, Final residual = 9.56459e-10, No Iterations 0
    GAMG:  Solving for p, Initial residual = 3.49563e-05, Final residual = 3.49563e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 3.49563e-05, Final residual = 3.49563e-05, No Iterations 0
    time step continuity errors : sum local = 2.73267e-10, global = 3.06099e-15, cumulative = -2.33387e-10
    GAMG:  Solving for p, Initial residual = 4.11002e-05, Final residual = 4.11002e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 4.11002e-05, Final residual = 7.86332e-07, No Iterations 1
    time step continuity errors : sum local = 6.14706e-12, global = 3.60325e-15, cumulative = -2.33384e-10
    PIMPLE: iteration 9
    smoothSolver:  Solving for Ux, Initial residual = 2.26526e-10, Final residual = 2.26526e-10, No Iterations 0
    smoothSolver:  Solving for Uy, Initial residual = 2.22568e-09, Final residual = 2.22568e-09, No Iterations 0
    smoothSolver:  Solving for Uz, Initial residual = 8.66044e-10, Final residual = 8.66044e-10, No Iterations 0
    GAMG:  Solving for p, Initial residual = 3.87527e-05, Final residual = 3.87527e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 3.87527e-05, Final residual = 3.87527e-05, No Iterations 0
    time step continuity errors : sum local = 3.02945e-10, global = 3.67155e-15, cumulative = -2.3338e-10
    GAMG:  Solving for p, Initial residual = 4.62632e-05, Final residual = 4.62632e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 4.62632e-05, Final residual = 8.09623e-07, No Iterations 1
    time step continuity errors : sum local = 6.32914e-12, global = 4.16309e-15, cumulative = -2.33376e-10
    PIMPLE: iteration 10
    smoothSolver:  Solving for Ux, Initial residual = 2.52859e-10, Final residual = 2.52859e-10, No Iterations 0
    smoothSolver:  Solving for Uy, Initial residual = 2.63933e-09, Final residual = 2.63933e-09, No Iterations 0
    smoothSolver:  Solving for Uz, Initial residual = 8.84599e-10, Final residual = 8.84599e-10, No Iterations 0
    GAMG:  Solving for p, Initial residual = 4.41963e-05, Final residual = 4.41963e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 4.41963e-05, Final residual = 4.41963e-05, No Iterations 0
    time step continuity errors : sum local = 3.455e-10, global = 4.12535e-15, cumulative = -2.33372e-10
    GAMG:  Solving for p, Initial residual = 5.2893e-05, Final residual = 5.2893e-05, No Iterations 0
    GAMG:  Solving for p, Initial residual = 5.2893e-05, Final residual = 8.16536e-07, No Iterations 1
    time step continuity errors : sum local = 6.38319e-12, global = 4.56977e-15, cumulative = -2.33367e-10
    smoothSolver:  Solving for k, Initial residual = 0.000235852, Final residual = 4.67513e-07, No Iterations 1
    
    
    1. 现在这边的例子是光滑圆柱,如果要算看看很高兴分享。(how)

  • OpenFOAM副教授

    :chigua2:

    Uz太抢眼了。

    不知道坐标系是如何定义?

    我看了下之前算的几个例子,发现p的残差几乎都在0.001这个量级。

    非常有意思的问题,我之前没怎么考虑过 压力 残差的取值问题。我也好好思考一下。

    不知道怎么才能继续降下去?

    减小时间步长?提高收敛准则?或者优化网格形态?...

    我一开始尝试增加到10个nOuterCorrectors, 发现第4~5个外循环开始残差下降不明显甚至开始上升,No Iteration也几乎为0。 为了节省时间所以设定到5。

    我之前也一直在用 piso, 不过是默认值,没有动,我得好好看看 piso 算法再来回答你的问题。

    现在这边的例子是光滑圆柱,如果要算看看很高兴分享。(how)

    • 我记得论坛里有人分享过 *.zip 包含算例和运行脚本,简单点的办法就是做相同的事情

    • 稍微难一点的是可以把楼主的 case 文件,在层主的 compute 仓库下 caseIdoNotUnderstand

    然后我们一起来 hack.

    :chigua2:



  • @random_ran
    我上传了case在google drive , 点击链接!(github 文件太大,我放弃了...)
    晚些我会更新一下最近算的这个case的结果。



  • 更新一下。按照@cccrrryyy 的建议算了几天,虽然结果还是不尽如人意,还是贴上来和大家讨论下。

    Step1,31-38s,把nOutercorrectors 从2改成5.

    31.jpg 31-R.jpg

    几点观察:

    • 阻力系数,升力系数主要与Uy残差曲线有关
    • 在34.5s处震荡减小,CdCl均明显下降。
    • Uz曲线不稳定


  • Step2. 38.5-51s, fvscheme中的速度对流项 从upwind 改为 Gauss linear
    图片21.jpg 图片3.jpg

    • 残差相比迎风格式,有明显的量级上升。Uz 呈现出收敛的趋势,稳定了。
    • Uy同样的在47s处出现振幅下降,CdCl下降。
    • 把40s处当成稳定,分为两个区段来考虑。CdClSt系数如下表。

    4c2e61c9-d822-47c2-a65d-8744a60d8989-image.png

    看趋势50.5s处出现第二次Uy残差的振幅下降,51s之后会怎样?我打算继续算下去10s左右看看是不是周期性的。


  • OpenFOAM副教授

    楼主 mesh 太大了,我把设置文件拷贝下来,打算用很小的脚本来生成圆柱网格.

    这样的话,别人可以更方便地帮助你.

    我们就可以一起讨论了.

    too-big.PNG

    仓库地址: https://github.com/randomwangran/chigua



  • @random_ran这个mesh是用ICEM生成的,我已经转化到openfoam了。
    你真的太nice了!!!!


  • OpenFOAM副教授

    @hoversoar 台兄过奖了。我只是好奇罢了。自己玩的很杂,可是遇到能一起玩的,实在不易,所以慢慢来。我在找 of 的脚本,自动生成。最好简单可控,小 mesh 大家可以互相交流,大 mesh 大家自己留着做研究就好。



  • 科研整的挺好 老铁们 @random_ran 是这个领域的专家 hoversoar命中遇到天子 :chitang:



  • @东岳 对,抱紧大腿!怎么加表情 - -


  • OpenFOAM副教授

    今天才把case文件整理了一下,下一步找合适的网格.

    @东岳 岳兄过奖了.
    @hoversoar 今天才整理了一下你的 case.

    乃有新发现的话留言在这,大家都能看到,或者帮助你,我只能尽力,还是要靠氖自己的.



  • @random_ran 非常感谢!慢慢会成长的哈哈哈



  • 上次算到step2的中心差分的50.5s处,说可能会阻力又下降。
    那之后我把它继续算到了59.5s,然后速度对流项的linear换到了limitedLinear。把结果贴上来一下。
    捕获.JPG

    几个发现:

    1. 整体看起来的话,三个阶段的定量CdCl差距不是很大。和文献也对的比较上。初步认定是速度对流项选择了迎风格式造成的。
    2. 跟之前的猜想有关,在55s处残差的Uy震荡明显,造成了Cd上升,Cl振幅也增大。
    3. 换成limitedLinear 0.5 之后,可以发现残差有明显的下降。@random_ran 是否可以回答前面的问题,虽然P的量级并没有发生变化。但是Uz的曲线震荡明显(相比中心差分),猜想可能是由于TVD 里头那个0.5造成的,混入了一部分迎风格式,造成耗散?

    一些疑问:

    1. 我这样中途切换差分格式是否ok?
    2. 这个网格是纯结构化的光滑圆柱,但是如果是非结构化质量并没有那么高的情况下,TVD的系数应该怎么取?可能要参考经验感觉来试?

    下一步:
    根据@cccrrryyy 的建议,和疑问中的1点。
    我把这个case在limitedlinear 0.5的条件下,从头开始算。并且将pimple改为piso,步长缩小,并控制CFL小于0.8。

    且看结果。
    good night



  • Screenshot from 2020-03-05 17-49-39.png

    Checking topology...
        Boundary definition OK.
        Cell to face addressing OK.
        Point usage OK.
        Upper triangular ordering OK.
        Face vertices OK.
        Number of regions: 1 (OK).
    
    Checking patch topology for multiply connected surfaces...
        Patch            Faces    Points   Surface topology                  
        front            42924    43120    ok (non-closed singly connected)  
        back             42924    43120    ok (non-closed singly connected)  
        cylinderwalls    11564    11760    ok (non-closed singly connected)  
        inlet            5782     5940     ok (non-closed singly connected)  
        outlet           5782     5940     ok (non-closed singly connected)  
    
    Checking geometry...
        Overall domain bounding box (-1.9999997 -1.9999999 -0.16500001) (1.9999997 1.9999999 0.16500001)
        Mesh has 3 geometric (non-empty/wedge) directions (1 1 1)
        Mesh has 3 solution (non-empty) directions (1 1 1)
        Boundary openness (1.6166424e-16 9.3817059e-18 -4.6447921e-15) OK.
        Max cell openness = 1.2635419e-15 OK.
        Max aspect ratio = 103.67801 OK.
        Minimum face area = 9.5109381e-08. Maximum face area = 0.0011336842.  Face area magnitudes OK.
        Min volume = 5.3196771e-10. Max volume = 6.3409456e-06.  Total volume = 4.1415295.  Cell volumes OK.
        Mesh non-orthogonality Max: 2.405209 average: 0.4164805
        Non-orthogonality check OK.
        Face pyramids OK.
        Max skewness = 0.12001675 OK.
        Coupled point location match (average 0) OK.
    
    Mesh OK.
    

    贴一下现在这个mesh的check结果和样子。


  • OpenFOAM副教授

    辛苦了,做了这么多测试!关于对流项格式,建议看openfoam.com上的介绍,链接在这里。注意,严格意义上二阶格式一定要过(0.5 0.75)那个绿色的点。我自己用的最多的是Gauss linear和Gauss vanLeer(这个说实话我不懂,但是很好用)。
    关于limitedLinear的系数,好像除了试没啥别的办法。不过这就是参考文献的价值了,如果有类似的算例,用它的格式最靠谱,这样能够快速缩小需要查验的问题的范围。


  • OpenFOAM副教授

    @hoversoar

    上次算到step2的中心差分的50.5s处,说可能会阻力又下降。

    建议楼主定一个准则.比如计算了 N 个 Vortex Shedding 周.之后又计算了 2N 个周期,然后比较一下所感兴趣的物理量.

    那之后我把它继续算到了59.5s,然后速度对流项的linear换到了
    limitedLinear。把结果贴上来一下。

    不清楚楼主研究的重点是?层主个人来说,是很好奇, linear -> limitedLinear 的区别.

    整体看起来的话,三个阶段的定量CdCl差距不是很大。和文献也对的比较上。
    初 步认定是速度对流项选择了迎风格式造成的。跟之前的猜想有关,在55s处残
    差的Uy震荡明显,造成了Cd上升,Cl振幅也增大. 换成limitedLinear 0.5 之后,
    可以发现残差有明显的下降。

    不知楼主有没有对这些格式的比较?

    UDS 对网格要求更高.

    "Peaks or rapid variations in the variables will be smeared out and,
    because the rate of error reduction is only first order,
    very fine grids are required to obtain accurate solutions."

    楼主还可以探索一下这些:

    • Linear Interpolation (CDS)
    • Quadratic Upwind Interpolation (QUICK)
    • Higher-Order Schemes

    @random_ran 是否可以回答前面的问题,虽然P的量级并没有发生变化。但是Uz
    的曲线震荡明显(相比中心差分),猜想可能是由于TVD 里头那个0.5造成的,
    混入了一部分迎风格式,造成耗散?

    我没法准确回答你,因为我自己没有太多探索过.

    我这样中途切换差分格式是否ok?

    为什么不可以?如果是研究格式的问题,我可能也会这么做,省很多时间.但是如果是分析流体机理,最好从头开始用一种固定格式.



  • @random_ran

    不清楚楼主研究的重点是?层主个人来说,是很好奇, linear -> limitedLinear 的区别.
    不知楼主有没有对这些格式的比较?

    重点是在三分力这些定量系数,和流场机理。而不是在格式的研究,所以也没有深入探讨。

    UDS 对网格要求更高.

    "Peaks or rapid variations in the variables will be smeared out and,
    because the rate of error reduction is only first order,
    very fine grids are required to obtain accurate solutions."

    楼主还可以探索一下这些:

    • Linear Interpolation (CDS)
    • Quadratic Upwind Interpolation (QUICK)
    • Higher-Order Schemes

    根据前辈们的算例几乎用的都是limitedLinear 格式,大家的系数取的也是各不相同。所以我也很困惑,问大家也说不出个所以然来。只好自己试了。

    为什么不可以?如果是研究格式的问题,我可能也会这么做,省很多时间.但是如果是分析流体机理,最好从头开始用一种固定格式.

    研究的是流体机理,所以我也会有点困惑中途换格式的问题。
    另外还想请问LES下pimpleFoam的步长问题,库郎数看到可以稍大,但是看了很多例子发现有到10,也有在2的。这对于计算时长来说貌似影响很大。



  • 大家好..
    我又来了...
    更新一下近期结果。两个结果都是Re1.1w,网格一样。用piso代替了pimple,计算无量纲时间100s之后,取了大概20个周期。
    唯一的不同是pic1用了limitedLinear0.5, pic2用的0.2。
    捕获.JPG
    两者的差别并不大,对于文献的1.1左右还是有一些差距。
    这几个例子算下来,发现对于结构化网格的话,质量还不错用中心差分的结果应该是比较精确的了。



  • 最后一楼的结果不错



  • @东岳 谢谢李老师!

    有个问题想请教下大家。
    由于用的是LES, 首层的y+满足了1的情况下,接下来还需要再布置多少层?
    目前对于非结构化网格,我一共布置了5层。
    但是由于首层厚度太小了,导致第五层和之后的外围网格的变化率有点大。
    不知道这样的层数够吗,这个突变会导致对结果影响过大吗?
    pic1是整体的流域的网格,pic2是近壁面的。
    捕获.JPG



  • 导致第五层和之后的外围网格的变化率有点大。

    为何不把1-5层按照2的比例加厚?

    网格是SATR做的么



  • 订正:布置了十层。



  • @东岳 回复好快.. 我还在等60s...
    2和1是一个模型,都是10层prism。
    网格是ansys自带的meshing做的。



  • 按照ratio=2或者3的比例加厚



  • @东岳 非常感谢您及时的回复!
    我现在的ratio是1.05,所以是有些小吗?因为之前结构化网格也是用的这个ratio。



  • @hoversoar 这个值多少要保证网格渐变的过渡性。目前从你那个图来看过渡性很差。不过这个对结果影响多少不好说,我感觉差异会很小。你可以试试然后反馈

    :chouchou:

    现在这边的例子是光滑圆柱,

    你的粗糙算例听起来很好玩



  • @东岳

    这个值多少要保证网格渐变的过渡性。目前从你那个图来看过渡性很差。不过这个对结果影响多少不好说,我感觉差异会很小。你可以试试然后反馈

    我也意识到过渡性差,但继续细化网格太庞大算不动。不知道prism处ratio=2这样的比例会不会太大。

    你的粗糙算例听起来很好玩

    麻子脸圆柱,就是算起来太耗时了...


  • OpenFOAM副教授

    @hoversoar 原来是ANSYS Meshing,近壁面是规整的四边型,然后五边型过渡,之后就是大量的六边型并掺杂一些不得不用的五边形。感觉ANSYS Meshing的思路是尽可能缩小五边形所占的比例,从而大量使用六边形?我之前算过一个很低很低雷诺数的圆柱绕流(二维,FLUENT,纯稳态),感觉四边型之后全部是三角形最好。不过这个可能不太会影响最终的结果,而且会让cell数量变大。
    ANSYS Meshing全局控制特别方便,我记得画圆管都不需要我设置它自己就画出个O-grid,但细节处想要加强比较难操作。可能的话建议换个别的软件试试。



  • 最近结果有更新么



  • @东岳
    上一个过渡性太大的例子算完了。
    又做了个过渡性比较好的case,不过表面带坑的圆柱算起来特别久。一个大概要20天,还在跑现在。
    prism的ratio取的1.3,然后减小了外面poly的尺寸(这样一来mesh数量会有增大很多),过渡率大概控制再2左右。
    ratio.JPG



  • @cccrrryyy

    原来是ANSYS Meshing,近壁面是规整的四边型,然后五边型过渡,之后就是大量的六边型并掺杂一些不得不用的五边形。

    我是用ANSYS meshing生成的全都是棱柱tetra,然后用fluent转化成polymesh就是五边形六边形的样子, 再用fluent with meshing 导出msh文件。

    感觉四边型之后全部是三角形最好。不过这个可能不太会影响最终的结果,而且会让cell数量变大。

    确实三角形的网格数量会大大增加,所以采用了转化到多边形来减小网格数提高计算效率。之前可能没说清楚,这个算例不是二维的是三维的。之前的polymesh的图是从z轴看过去的样子,所以可能像2D。



  • 不过表面带坑的圆柱算起来特别久。一个大概要20天,还在跑现在。

    你这个多少网格?



  • @东岳 poly的话四百多万,tetra一千二百万。
    因为坑的地方mesh尺寸很小,CFL数控制下的步长在-5次方量级。



  • @hoversoar 嗯,确实,要解析这么小的坑很麻烦,跟高尔夫球一样。不过你这个挺有意思



  • @东岳 把3D的图贴一下,这样比较直观。

    捕获.JPG
    如图1的样子,ratio 2-3的话,坑里放不下... 权衡之后取了1.3。
    多做了几个density box 逐渐扩大mesh的尺寸,在最靠近边界层的box尺寸取的比较小,来让过渡性处于2左右。

    因为计算时长较久,导致试错成本很高,也是一个大问题。



  • @cccrrryyy

    感觉ANSYS Meshing的思路是尽可能缩小五边形所占的比例,从而大量使用六边形?

    这个倒是没有研究, 就让他自动转化了。个人觉得可能形状没有太拘泥,如果不是edge的处不能合并三角形的话,尽量会合并成多边形并且满足所设定的size(也就是不会合并到过分大)。



  • @hoversoar

    因为计算时长较久,导致试错成本很高,也是一个大问题。

    你这个网格处理的很精细 很厉害 :duang:

    你这个是工程导向还是纯科研?什么上面有这种特别圆的孔?



  • @东岳 谢谢夸奖!
    算是基于工程的研究吧.. 桥索上用的


  • OpenFOAM副教授

    @hoversoar 哇,三维的,这网格数量惊人啊。提炼工程问题确实容易这样,需要花很多时间在前处理上,求解器本身其实也不应该特别特别重要。从这个角度讲,感觉可能你需要的是花大量精力在网格上,而不是求解器的那些参数调整。
    你之前提到过跟现有文献对比,是哪个文章呀,挺感兴趣的。


Log in to reply
 

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