Skip to content
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
CFD中文网

CFD中文网

  1. CFD中文网
  2. OpenFOAM
  3. LES与RANS的结果不相同

LES与RANS的结果不相同

已定时 已固定 已锁定 已移动 OpenFOAM
37 帖子 5 发布者 22.4k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 星 离线
    星 离线
    星星星星晴
    写于 最后由 李东岳 编辑
    #1

    各位大佬,之前我一直用$k-\varepsilon$ 模型,用在喷雾的模拟。
    想着试试看LES,能不能解决我far field与实验结果差别很大的问题。

    但是发现换到LES以后,很多东西不一样了,特此求个轮子,有没有靠谱的介绍LES在OF中的设置的相关资料什么的?

    如图所示,左侧是未修改其他的东西,只是将湍流模型修改为smagorinsky
    右侧是$k-\varepsilon$
    天差地别啊,求解惑,求资料,求个轮子。

    30318dbc-09d6-49b4-b973-4a3c4ecf1b05-image.png

    游荡

    李东岳李 C 2 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    在 中回复了 星星星星晴 最后由 编辑
    #2

    @星星星星晴 就是单相流?你看下nut这个场,估计差别很大

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    星 1 条回复 最后回复
  • 星 离线
    星 离线
    星星星星晴
    在 中回复了 李东岳 最后由 编辑
    #3

    @李东岳 早,是的,目前是单相流。
    原来是这样算的,先等流场充分发展以后,然后再将parcel喷进去,2-way。
    但是再0.2m以后,发现parcel的$U_r, U_{r,rms}, U_{z,rms}$ 和实验测量差别比较大。
    在想换湍流模型以后,会不会有所提升。

    我看了大佬你的一些材料,
    现在我就是瞎弄弄,然后将$C_k$从默认的0.09 现在改到0.75就得到类似下面的流场。
    不知道这么改对不对,$C_k$ 就是$C_{sgs}$吧??

    LES
    {
        model           Smagorinsky;
        turbulence      on;
        printCoeffs     on;
        delta           cubeRootVol;
        cubeRootVolCoeffs
        {
            deltaCoeff      1;
        }
        Ce              1.048;
        Ck              0.75; //C_sgs = 0.2;
    }
    

    40a73413-bf5f-4113-8cb1-f889b540f1bf-image.png

    我知道LES应该是瞬时速度,和$k-\varepsilon$的结果不能这么比,但是最起码应该类似把。
    另外我在论坛搜的相关的帖子,里面总提到 http://www.dyfluid.com/LES.html 这个材料,但是我发现这个资源好像已经不可用了。

    @李东岳 在 求个LES的轮子 中说:

    @星星星星晴 就是单相流?你看下nut这个场,估计差别很大

    另外为什么nut是这么个东西,震惊,感觉左边LES算的不太对劲啊
    23d44190-1a72-49b4-84e4-f4319342fc2b-image.png

    第一次用LES, 以为换一下湍流模型就啥也不用改了,见笑了。
    另外网格密度我也没改,换LES需要加密么?
    另外filter是$\Delta$ 但是这个 $\Delta$怎么确定的是cubeRootVol吧?但是of内置有好多种方法,每种方法大概是什么样,适用于某种情况呢呢,请求一些资料看看,求个现成的轮子。
    谢谢

    游荡

    Z 1 条回复 最后回复
  • Z 离线
    Z 离线
    zhouxu
    在 中回复了 星星星星晴 最后由 编辑
    #4

    @星星星星晴 在 求个LES的轮子 中说:

    现parcel的

    为什么觉得是LES有问题,而不是k-e有问题呢?

    星 Z 2 条回复 最后回复
  • 星 离线
    星 离线
    星星星星晴
    在 中回复了 zhouxu 最后由 编辑
    #5

    @zhouxu
    我刚开始用LES,在学怎么弄
    理论上是知道一些,但是用的时候特别蛋疼,很多问题

    游荡

    1 条回复 最后回复
  • Z 离线
    Z 离线
    zhouxu
    在 中回复了 zhouxu 最后由 编辑
    #6

    @zhouxu 你这个计算的是带有伴流的射流吗?

    星 1 条回复 最后回复
  • 星 离线
    星 离线
    星星星星晴
    在 中回复了 zhouxu 最后由 编辑
    #7

    @zhouxu 你指的是 impinging jet?
    不是
    就是单纯的一个简单的jet,这是个 cone nozzle

    游荡

    Z 1 条回复 最后回复
  • Z 离线
    Z 离线
    zhouxu
    在 中回复了 星星星星晴 最后由 编辑
    #8

    @星星星星晴 网格不大的话,可以分享一下算例吗

    星 1 条回复 最后回复
  • 星 离线
    星 离线
    星星星星晴
    在 中回复了 zhouxu 最后由 编辑
    #9

    @zhouxu 不好意思,这个算例无法分享。。
    请问你有没有什么教程或者有什么比较系统的介绍OF中的LES的材料么?

    游荡

    Z 1 条回复 最后回复
  • Z 离线
    Z 离线
    zhouxu
    在 中回复了 星星星星晴 最后由 编辑
    #10

    @星星星星晴 没有资料。我只是觉得没有实验数据或者理论解,无法判断哪个模型好。不过你可以算一下湍流圆射流,和理论解对比一下

    星 1 条回复 最后回复
  • 星 离线
    星 离线
    星星星星晴
    在 中回复了 zhouxu 最后由 编辑
    #11

    @zhouxu :142: 谢谢

    游荡

    1 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    写于 最后由 编辑
    #12

    你的上面的边界,进口在中间,中间两边的是什么,壁面么?这种射流如果算LES的话,一般是比较混乱的,类似这样:

    捕获.JPG

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    星 2 条回复 最后回复
  • C 离线
    C 离线
    cccrrryyy 超神
    在 中回复了 星星星星晴 最后由 编辑
    #13

    @星星星星晴 LES和RANS的区别是全方位的,不要带着任何RANS里面的习惯来做LES。从最基本的开始,先跑个管内流经典算例再来做你自己的case比较好。

    I don't want to survive, I want to thrive.

    星 1 条回复 最后回复
  • 星 离线
    星 离线
    星星星星晴
    在 中回复了 李东岳 最后由 编辑
    #14

    @李东岳
    大佬 你看这个是k-e的结果,速度场, 壁面的网格很粗,我也不考虑壁面,所以之前哪个nut的场,特别怪异我也可以理解。
    我这个模拟是不考虑primary breakup那个区的,直接拿喷头下25mm测量数据,流场,parcel的
    所以我完全不知道能不能达到你给的那个图的效果,而且 jet 速度也不高。。

    a80f298b-be8b-42d7-9ddc-4928742d21c6-image.png
    ab863067-300c-427c-8760-b8350e592949-image.png 70d2aa58-e15a-49eb-a93e-065f3c8842bd-image.png

    我有一点很困惑,k-e里面,进口瞬时速度是 $u = \bar{u} + u'$
    但是LES呢?我找到of内置一个turbulentInlet,还是我那个进口速度field,然后给了 fluctuationScale (0.15 0.15 0.15)。然后现在jet就变成了有点海草舞的那种扭动一点的状态。。不知道对不对。。
    另外有一点,能不能通过调节Turbulence里面的 $C_e, C_k$ 然后大致让 LES的结果和KE的匹配呢?

    游荡

    1 条回复 最后回复
  • 星 离线
    星 离线
    星星星星晴
    在 中回复了 cccrrryyy 最后由 编辑
    #15

    @cccrrryyy 谢谢大佬的建议,所以我想这看看找找有没有介绍OF LES的现成的资料什么的,在网上找了一圈,大部分都是介绍LES是空间filter,然后RANS是时均,然后什么关于Delta的设置啊什么的,完全摸不到头脑。。还有看到很多Delta用Van什么的,不是用cubeRootVol的,
    包括Smagorinsky还是KEqn啊,什么WALE什么的很少有具体解读。。

    我想问一下,我之前看到教材什么说LES肯定是Mesh-dependent的,而且根据理论来说,网格越小,约密集,这让解析的更多,Ko尺度嘛。 那现在的问题就来了,如何选择合适的网格尺寸?另外一点在于如果假如Particle的话,网格也不能太小,不然也会有很多其他的问题。。
    这个尺度很难把握,另外直接用k-e的网格,换成LES,不考虑壁面,您觉得可以么?

    游荡

    C 1 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    写于 最后由 编辑
    #16

    你这个是瞬态RANS吧?fvSolution、fvScheme啥的都对么。

    你可以在LES进口加扰动。如果进口周围都是墙的话,速度梯度比较大应该会发生不稳定行。

    调节Ce、Ck可以,但是说不太通,现存的参数已经是前人调试过非常普适性的值,你调了之后,就不普适性了。

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    星 4 条回复 最后回复
  • 星 离线
    星 离线
    星星星星晴
    在 中回复了 李东岳 最后由 编辑
    #17

    @李东岳 test forbidden>?

    游荡

    1 条回复 最后回复
  • 星 离线
    星 离线
    星星星星晴
    在 中回复了 李东岳 最后由 编辑
    #18

    @李东岳 @李东岳
    我这方面非常薄弱,我用的sprayFoam

    @李东岳 在 LES与RANS的结果不相同 中说:

    你这个是瞬态RANS吧?fvSolution、fvScheme啥的都对么。

    你可以在LES进口加扰动。如果进口周围都是墙的话,速度梯度比较大应该会发生不稳定行。

    调节Ce、Ck可以,但是说不太通,现存的参数已经是前人调试过非常普适性的值,你调了之后,就不普适性了。

    $C_k$ $C_e$ 如果我用of 默认的设置的话,就如同第一个帖子一样了,jet直接射出去了,完全和ke的结果不一样,但是无论用什么方法,都应该和实验结果差不多匹配的吧,至少ke弄得匹配了

    下面是k-e的设置

    /*--------------------------------*- C++ -*----------------------------------*\
      =========                 |
      \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
       \\    /   O peration     | Website:  https://openfoam.org
        \\  /    A nd           | Version:  7
         \\/     M anipulation  |
    \*---------------------------------------------------------------------------*/
    FoamFile
    {
        version     2.0;
        format      ascii;
        class       dictionary;
        location    "system";
        object      fvSchemes;
    }
    // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
     
    ddtSchemes
    {
        default         Euler;
    }
     
    gradSchemes
    {
        default         Gauss linear;
    }
     
    divSchemes
    {
        default         none;
     
        div(phi,U)      Gauss linear;
        div(phid,p)     Gauss linear;
        div(phi,K)      Gauss linear;
        div(phi,k)      Gauss linear;
        div(phi,epsilon) Gauss linear;
        div(U)          Gauss linear;
        div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
        div(phi,Yi_h)   Gauss upwind;
    }
     
    laplacianSchemes
    {
        default         Gauss linear orthogonal;
    }
     
    interpolationSchemes
    {
        default         linear;
    }
     
    snGradSchemes
    {
        default         orthogonal;
    }
     
     
    // ************************************************************************* //
     
    
    /*--------------------------------*- C++ -*----------------------------------*\
      =========                 |
      \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
       \\    /   O peration     | Website:  https://openfoam.org
        \\  /    A nd           | Version:  7
         \\/     M anipulation  |
    \*---------------------------------------------------------------------------*/
    FoamFile {
             version     2.0;
             format      ascii;
             class       dictionary;
             location    "system";
             object      fvSolution;
    }
    // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
     
    solvers {
             rho
             {
                       solver          PCG;
                       preconditioner  DIC;
                       tolerance       1e-06;
                       relTol          0;
             }
     
             rhoFinal
             {
                       $rho;
                       tolerance       1e-06;
                       relTol          0;
             }
     
             "(U|k|epsilon)"
             {
                       solver                  GAMG;
                       tolerance               1e-6;
                       relTol                  0;
                       smoother                GaussSeidel;
                       nPreSweeps              0;
                       nPostSweeps             2;
                       cacheAgglomeration      true;
                       nCellsInCoarsestLevel   64;//sqrt(cellnumber/cores)
                       agglomerator            faceAreaPair;
                       mergeLevels             1;
                       minIter                 1;
             }
     
             p
             {
                       solver                  GAMG;
                       tolerance               1e-6;
                       relTol                  0;
                       smoother                GaussSeidel;
                       nPreSweeps              0;
                       nPostSweeps             2;
                       cacheAgglomeration      true;
                       nCellsInCoarsestLevel   64;//sqrt(cellnumber/cores)
                       agglomerator            faceAreaPair;
                       mergeLevels             1;
                       minIter                 1;
             }
     
             pFinal
             {
                       $p;
                       tolerance       1e-06;
                       relTol          0;
             }
     
             "(U|k|epsilon)Final"
             {
                       $U;
                       tolerance       1e-06;
                       relTol          0;
             }
     
             "(h|Yi|O2|N2|H2O)"
             {
                       solver          PBiCGStab;
                       preconditioner  DILU;
                       tolerance       1e-6;
                       relTol          0;
             }
     
             "(h|Yi|O2|N2|H2O)Final"
             {
                       $Yi;
                       relTol          0;
             }
    }
     
     
    PIMPLE {
     
             nOuterCorrectors    150;
             nCorrectors         1;
             nNonOrthogonalCorrectors 0;
             consistent          yes;
     
             outerCorrectorResidualControl
             {
                       "(U|k|epsilon)"
                       {
                                tolerance  1e-6;
                                relTol      0;
                       }
             }
     
             residualControl
             {
                       U                                 1e-6;
                       p                                   1e-6;
                       "(k|epsilon|omega)"                 1e-6;
             }
     
    }
     
     
     
    relaxationFactors {
             fields
             {
                       p      0.3;
             }
     
     
             equations
             {
     
                       epsilon         0.9;
                       k               0.9;
                       U               0.7;
                       ".*"        0.7;
             }
    }
     
    // ************************************************************************* //
     
    

    游荡

    1 条回复 最后回复
  • 星 离线
    星 离线
    星星星星晴
    在 中回复了 李东岳 最后由 编辑
    #19

    @李东岳
    这个是那种魔改LES的 kEqn 的Ck和Ce的到的海草舞。。
    out.mp4

    游荡

    1 条回复 最后回复
  • C 离线
    C 离线
    cccrrryyy 超神
    在 中回复了 星星星星晴 最后由 编辑
    #20

    @星星星星晴 网格尺寸理论上是有一堆公式可以估算的,但大都针对基础的案例,平板流动啊啥的,对实操没啥用。最好的方式就是找类似的文献,别人用多少你就用多少:chitang:

    直接用k-e的网格感觉太粗了些,壁面不壁面的看你模拟的东西了。你这个没有传热,而且兴趣区域在中间不在外面,感觉壁面可能没啥影响。

    RANS改到LES,需要考虑的有边界条件(特别是入口,可能需要添加认为的扰动)、时间格式、数值格式(迎风就不太好,中心差分会好一些)、网格等等。所以比较建议先找个标准的算例试一下。

    另外说一点,RANS你用的k-e,这里的k是所有的湍动能。LES里面的k是ksgs,是亚格子湍动能,不一样。Smagorinsky的话其实没有直接求解这个ksgs,直接用代数方法给出来的,但也有直接求解ksgs的(叫kEqn还是啥的,就是ksgs有一个自己的输运方程)。

    I don't want to survive, I want to thrive.

    星 1 条回复 最后回复

  • 登录

  • 登录或注册以进行搜索。
  • 第一个帖子
    最后一个帖子
0
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]