fluent用LES算水翼边界层选择中心差分引起的震荡如何消除



  • 各位大佬好,小弟最近在用fluent算一个扭曲水翼的边界层速度剖面(约1~4mm以下的区域),雷诺数在5e5的量级。经过个把月的计算尝试,排除各种影响因素,现在确定只有中心差分能把边界层速度剖面和脉动量与LDV实验对上,其他差分格式包括有界中心差分(bounded central difference)都带有迎风性质,老师说迎风数值粘性大,可能因此在近壁区域与实验相差较大。

    但问题如图,中心差分会在瞬时速度流场存在轻微的震荡,导致涡量表示会有一些碎涡,并且速度场等值面也会不光滑,不知道如何消除,看有的文献貌似是加一个滤波将震荡消除,但是不是很清楚具体做法,不知道各位大佬有何高招。

    已经排除的因素如下:
    1.网格 数量1000w左右,展向流向法向都经过反复调整,震荡不会因为网格的变化而改变,确定不是网格的问题,并且尝试了非结构的八叉树网格,这样除了边界层几乎是各项同性,仍然会有震荡。
    2.LES模型,主要采用的WALE,湍流常数0.325,0.5没有明显区别
    3.边界条件,全流道或半个水翼,无影响,进出口速度压力不同组合也无影响
    4.速度压力耦合或解耦simple simplec,无影响
    5.进口或出口长度, 进口4倍弦长,出口5倍弦长,应该足够了
    6.时间步长 从5e-6到5e-5,确定跟CFL数无关,所有库朗数都小于1也会震荡

    Q.png


  • 管理员

    看有的文献貌似是加一个滤波将震荡消除

    什么文献

    不用WALE有震荡么

    现在确定只有中心差分能把边界层速度剖面和脉动量与LDV实验对上,其他差分格式包括有界中心差分(bounded central difference)都带有迎风性质,老师说迎风数值粘性大,可能因此在近壁区域与实验相差较大。

    你应该先试试看看再说,比如superbee、vanLeer、Minmod甚至upwind



  • 感谢李老师的及时回复!目前情况是这样

    1. https://aip.scitation.org/doi/pdf/10.1063/1.5045795 文献引用的文献[23]提到了一种filter,但是并不清楚怎样应用到fluent
    2. 试过dynamic也会震荡,貌似跟模型无关,因为要算边界层还是主要用WALE
      3.目前fluent自带的差分格式包括upwind, 2nd upwind, 3ord MUSCL, quick, bound cd 和cd都试了,只有cd能比较精确的算准边界层的速度剖面和脉动强度,检索到涉及定量分析边界层的文献比如槽道流动,平板流动,绝大多数也是用的中心差分,只是雷诺数都偏低。

    震荡并不影响边界层平均速度和脉动与实验的对照,但是瞬时流场会有这样的锯齿形状,所以Q涡显示时会有一些非物理的碎涡出现,怎么都感觉会对后处理有影响。。
    v.png



  • 有试过二阶中心差分格式中耦合小部分一阶迎风格式吗,比如给个0.02%的一阶迎风格式,之前用fluent算3900的圆柱绕流,用纯二阶中心出现过数值振荡容易发散的情况,改成混合之后收敛性好很多,精度也还行,没有很明显的下降


  • 副教授

    @心里的小漩涡 好奇FLUENT里面怎么实现这个操作?一直以为格式这一块FLUENT没法儿自定义。



  • @cccrrryyy 直接用TUI命令:
    solve/set/numerics/
    一直回车到1-st order to higher order blending factor: 1就是纯二阶,0.98就是耦合0.02的一阶迎风
    感觉有点像TVD格式,也不是很懂,导师之前教我的操作,具体也不是太懂:135:


  • 副教授

    @心里的小漩涡 原来可以这样调!恩,这个很类似TVD/NVD了,有空我也去试试



  • 感谢老铁的建议,我查了查好像没有这种现成的耦合操作,bounded cd可能是最像的,但是经过计算发现在边界层应该是全部切换成迎风格式了,没有部分耦合这种机制。
    908a923b-8eff-42d7-ab5f-6bea52333f70-image.png
    在国外cfd论坛上找到一个相似的情况,幸运的是那个人好像不关注边界层就改成迎风就没有震荡了,我看有个人的回答也解释了为什么除了中心差分都算不太准边界层。。
    The choice of the scheme for LES should be based on the numerical diffusion it introduces. Ideally you should use linear(中心差分), or cubic. You need good and prett uniform mesh anyways for LES, since you are assuming the filter operator and the differential operator are commutative, which is not true on non-uniform grids! The filtered schemes are a last resort scheme in my view, if you can't really do better with your mesh. Upwind and linearUpwind, but also limitedLinear and QUICK should be avoided because they are too dissipative.
    可惜就是无法消除震荡:136:


  • 管理员

    把这个盾体扰流的算例发给我我给你调节一下:xiezuoye:



  • @李东岳 https://www.cfd-online.com/Forums/openfoam-solving/106700-dicretization-schemes-les-pitzdaily.html 李老师,这是钝体扰流那个原贴,里面好像发了几个算例文件,不过我Openfoam水平有限,您可以参考下帖子:146:



  • 试了下,把水的粘性增大了一百倍,也就是雷诺数降了100倍,震荡就没有了,但是边界层整个就加厚了几十倍。。难道高雷诺数下解析边界层是无解的吗:zoule:


  • 管理员

    我又看了下,你这个是Fluent啊。

    不涉密的话可以把网格发给我我用openfoam跑跑



  • @李东岳 谢谢李老师:ok3: 您有时间的话可以试试foam的中心差分格式,我用CFX和fluent都会有震荡。这是约450万的网格文件:https://cowtransfer.com/s/82c878e62de64d
    介质为水,边界条件inlet 5m/s, outlet 静压45300 Pa,wall为滑移壁面,foilwall为无滑移壁面,symmetry面设为symmetry,LES模型用的WALE,时间步长用的5e-5


  • 管理员

    Sorry that I am using OpenFOAM to set up the test case and my Chinese input is missing. How long does it take to observe the oscillation?



  • @李东岳 李老师,我是用的超算3个节点,大概80核,定常SST20分钟,非定常中心差分只要算起来应该就有震荡,算到升力系数稳定的话可能要3个小时左右?(可以先用迎风差分)后面改差分格式是直接用前面算好的结果初始化,算个几十分钟(0.1s)就能看下大概结果。我想知道Openfoam有没有更好的差分方法可以在保证精度的同时抑制震荡


  • 管理员

    @gengchenfluent用LES算水翼边界层选择中心差分引起的震荡如何消除 中说:

    目前fluent自带的差分格式包括upwind, 2nd upwind, 3ord MUSCL, quick, bound cd 和cd都试了,只有cd能比较精确的算准边界层的速度剖面和脉动强度

    Regarding this, do you have any plots?



  • 李老师,可以先看下0.15弦长处的速度剖面,我是在这个位置插入一根沿z方向4mm线导出平均速度,x=0.0002m, y=-0.059182m, z=0.016964m到0.020964m,根据最大值无量纲化,图表附在文件里。velocity_profile_ldv_test_0.15C.zip


  • 管理员

    @gengchen I cannot open opju document. Could you please upload an image?



  • 抱歉,李老师,那我直接把LDV的数据贴上吧,谢谢老师!

    0.51874	0.02
    0.54523	0.04
    0.57821	0.06
    0.60027	0.08
    0.61619	0.1
    0.63168	0.12
    0.65259	0.16
    0.67519	0.2
    0.69035	0.24
    0.71312	0.28
    0.72578	0.32
    0.75144	0.38
    0.76757	0.42
    0.78385	0.46
    0.79825	0.5
    0.81624	0.54
    0.83174	0.58
    0.86305	0.66
    0.89698	0.74
    0.9205	0.82
    0.94188	0.9
    0.96355	0.98
    0.98842	1.14
    0.99863	1.3
    1.00000 1.46
    0.99797	1.62
    0.99706	1.78
    

    LDV.png


  • 管理员

    1. is it time-averaged U predicted by LES?
    2. What is the maxima? the Umax in this line or in the computational domain?

    Your results look quite good. Is it predicted by linear scheme? How about the other schemes, e.g., limited schemes?

    I am runing LES simulation, but it is very slow. I try to limit Co under 0.6. Since the global Umax is around 10 m/s, it indicates $\Delta t = 2.6e-6$. What value is your global Umax?

    Courant Number mean: 0.00518159 max: 0.59921
    deltaT = 2.67779e-06
    Time = 0.0168822
    
    GAMG:  Solving for p, Initial residual = 0.0474207, Final residual = 0.00156874, No Iterations 2
    time step continuity errors : sum local = 3.90116e-10, global = -6.12223e-14, cumulative = 5.73243e-11
    DICPCG:  Solving for p, Initial residual = 0.0105353, Final residual = 9.99036e-07, No Iterations 608
    time step continuity errors : sum local = 2.48515e-13, global = -3.59741e-15, cumulative = 5.73207e-11
    ExecutionTime = 401.48 s  ClockTime = 421 s
    
    fieldMinMax minMaxp write:
        min/max(mag(U)) = 0 10.5464
    
    Courant Number mean: 0.0051816 max: 0.601813
    deltaT = 2.61829e-06
    Time = 0.0168848
    
    GAMG:  Solving for p, Initial residual = 0.0479045, Final residual = 0.00156265, No Iterations 2
    time step continuity errors : sum local = 3.72593e-10, global = 2.37179e-14, cumulative = 5.73444e-11
    DICPCG:  Solving for p, Initial residual = 0.0102726, Final residual = 9.97099e-07, No Iterations 152
    time step continuity errors : sum local = 2.38352e-13, global = 2.12724e-14, cumulative = 5.73657e-11
    ExecutionTime = 402.54 s  ClockTime = 423 s
    
    


  • @李东岳 辛苦李老师!
    1、图中是fluent统计的时间平均速度 2. 最大值为这条线上的最大值
    我的计算是这样,图中是中心差分的结果,但是会有震荡。其他结果,比如有界中心差分,会使边界层剖面有整体的改变,二阶迎风能稍微好一点,但是在边界层的粘性底层和过渡层偏差会比较大
    Umax差不多11m/s,时间步长的话,因为隐式格式为了快速看结果,我用的5e-5,试了从1e-5到5e-5,结果基本不变。
    LDV_bcd.png


  • 管理员

    I did a rough calculation, my time step is 3.3e-6, Co = 0.6, my server takes 2 s to calculate one time step. If I want to calculate 0.5 s, it takes me $0.5/(3.3e-6)*2/3600/24=2.5$ days to run, which looks too long for me.

    Another point we need to discuss is that, if Umax is 11 m/s, to ensure Co < 1, you should use similar time step like mine.

    试了从1e-5到5e-5

    No matter 1e-5 or 5e-5, the Co is larger than 1. Unless time step is smaller than 5e-6, Co is smaller than 1.

    Meanwhile, I heard that commercial software can employ much larger Co number. Since the code is not public to the users, I dont understand why.



  • @李东岳 谢谢李老师的说明,我这边只试了中心差分Co<1的情况,确定是有震荡的,其他格式结果我还可以再减小时间步长测试下变化,您可以在确保稳定计算的情况增大下时间步长,简单看下foam的中心差分格式结果,有没有类似的不光滑速度等值面,或者破碎的震荡涡,不需要算那么长时间统计平均速度。有改善的话,我就全力研究争取用Openfoam计算。如果太麻烦的话就算啦,还是十分感谢李老师!
    co1.png
    关于库朗数可以大于1的原因,我也不甚清楚,看有篇文献说测试平均库朗数到5还能保证计算结果,可能让我没有重视用小时间步计算。


  • 管理员

    Yes. My OpenFOAM results show that oscillation occurs if linear scheme is used. Although this can be explained by theory, you know that. You can try other schemes like superbee which is quite sharp to verify if it predicts better results.

    Now, I terminate my calculation.



  • @李东岳 非常感谢李老师!如果方便的话,您可以把Openfoam的文件打包发给我吗,这个文件中转网站速度还行 https://cowtransfer.com/ 我看能不能改改差分格式,不方便也没关系,我这边摸索得比较慢,目前只能跑跑教程算例啥的。


  • 管理员

    Yes, after I have the steadyState results I will upload tit to you.

    x=0.0002m, y=-0.059182m, z=0.016964m到0.020964m,

    BTW, the distance is 0.004m. Why is it 0.002 in your y label? did you scale it?



  • @李东岳 谢谢李老师!我发现有个filteredlinear格式,准备用这个试试。先研究下您写的中文手册:146:

    因为LDV只测到2mm,模拟时取了4mm,其实用不着这么多,对比实验只用了2mm


  • 管理员

    Below is the plot predicted by steadyState solver simpleFoam. 10 mins is enough if you have 60/80 cores. You can see that it can be improved. I am not sure if LES can predict better results. Here is the test case, feel free to adjust the settings to see if you can obtain better results. Please also keep me updated. This is an excellent test case to investigate.

    foil.png

    Screenshot from 2020-12-02 18-09-33.png


  • 管理员

    瞬态的玩了下 :haqi: 感兴趣的可以搞搞

    替代文字


  • 副教授

    这是LES么,好像算出来转捩了,用的什么sgs模型呀?



  • @李东岳 十分感谢李老师!对OPENfoam不太熟,抱歉耽误了这么长时间回复您,现在使用了三种差分格式 1. filteredlinear 过滤系数取0.5 2. filteredlinear 过滤系数取1 3. LUST格式,25%迎风+75%中心
    1.filter0.5.png
    2.filter1.png
    3. LUST.png

    速度场wiggle

    velocity_wiggle.png
    可以看到中心差分随着过滤强度从0.5-1,耗散性会变大,导致靠近边壁的涡结构被抹平,逐渐向迎风格式的结果过渡,但是都不能解决震荡问题,(过滤掉了一些高频的震荡(碎涡),但是速度场的wiggle依然存在)。LUST格式下没有震荡,虽然只有25%的迎风,但仍然会造成边界层计算不准确,速度梯度不对,结果和二阶迎风类似。

    目前我认为应该是这个高雷诺数问题(5e5)本身无法用千万量级的网格算边界层,网格雷诺数太高,(我看有人说cell Re <2才能稳定),中心差分耗散太小,导致震荡难以消除。现在准备暂时放弃边界层定量研究了。。。



  • @cccrrryyy 老师您好,用的WALE模型,我看近些年基本用这个的比较多


  • 管理员

    你这个确实挺好玩。



  • @gengchen geng大神



  • @ZX ???xu神好。。。:threaten:



  • @gengchen 之前跑les也是,只有中心差分对得上实验,但是震荡。。



  • 您好,我也用过LES做过边界层,请问这么高的$Re$,$y^+$是多少,WALE模型的LES要求近壁面的$\nu_{sgs}$几乎为0吧。



  • @gengchen 你预估需要多大的网格量


  • 管理员

    @eason 他之前说用了1000万,目前他给我的网格500万



  • @李东岳 李老师,早上好。我翻了翻我以前做的文章,以弦长为Re=6000的矩形case,和 @gengchen 发的图有点像,网格尺寸是0.0125弦长,用的是笛卡尔网格,yPlus可以小于10。 如果这位同学的网格量估计在5~10亿以下,我应该是可以提供这个算力的。

    gengchen


Log in to reply
 


CFD中文网 | 东岳流体学术 | 东岳流体商业 | 吉ICP备20003622号-1