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 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 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 条回复 最后回复
  • 星 离线
    星 离线
    星星星星晴
    在 中回复了 cccrrryyy 最后由 编辑
    #21

    @cccrrryyy
    多谢大佬的解释,上面那个视频已经是三个方向添加15%的的turbulence了,原本ke里面就是一个user define的测量速度,然后LES进口也没有k的影响,我就觉得加个turb试试看,回头做个fieldaverage然后和测量比一下就好。所以我就在纠结 $C_k C_e$ 是不是就自己瞎选选就行,反正只要符合实验结果都可以啊。我是这么理解的

    我没有传热,没有壁面。其实课题主要研究的是 kinematic 的方向和其他的关系不大。

    时间格式,数值格式我回头查一下,因为我看了一下tut的设置,到时候跟着改改。
    标准算力?cavity?pitzdaily?也和jet没关系啊,我回头在翻翻吧。

    我现在用的就是kEqn求的$k_{sgs}$,没用smagorinsky。现在就有个问题,不知道大佬能不能帮忙解个惑。
    在kEqn里面有下面这个方程,我可不可以理解为这个东西算的是$\varepsilon_{sgs}$?因为我也需要这个$\varepsilon_{sgs}$。
    长话短说,我们用的particle turbulence dispersion model是根据$k-\varepsilon$的,所以有一项是需要知道这俩值的,现在考虑到转到LES的话,简单粗暴的将$k$ 和$\varepsilon$ 转为sgs的。
    道理都是一个道理,parcel见到的瞬时流场速度。 RANS的话就是全model,LES的话就是真实+sgs呗。您觉得靠谱么?

    template<class BasicMomentumTransportModel>
    tmp<volScalarField> kEqn<BasicMomentumTransportModel>::epsilon() const
    {
        return volScalarField::New
        (
            IOobject::groupName("epsilon", this->alphaRhoPhi_.group()),
            this->Ce_*k()*sqrt(k())/this->delta()
        );
    }
    

    游荡

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

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

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

    捕获.JPG

    话我我才看懂大佬的问题,
    进口u:turbulentinlet, p: zerogradient
    出口u:inletoutlet p:totalpressure

    游荡

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

    @李东岳 进口没有壁面,就是将一个PDA的测量面作为进口了,壁面就是外壁面 内部啥也没有

    游荡

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

    @星星星星晴 首先,那个视频是LES么?如果是的话,那很明显你的网格太粗了。按道理来说jet出来的地方,由于速度和周边环境的速度不一致,外缘在离出口很近的地方就应该开始有涡出来。你的网格量,RANS和LES都是一样的?

    其次,Ck,Ce这些系数,是可以调的,而且LES里面这些系数只要不是太离谱,可能差异不会特别大。所以重点仍然是,找个类似的文献用人家用的就行,总比完全没有依据好。

    最后,你提到的sgs下的耗散率,我个人是没见过这么定义的。这一项光看ksgs的输运方程,是表征ksgs的耗散率,但能不能和RANS里面的k-e模型的e对应起来,感觉需要严格的公式推导才可以。

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

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

    @cccrrryyy 感谢您的回复。

    @cccrrryyy 在 LES与RANS的结果不相同 中说:

    @星星星星晴 首先,那个视频是LES么?如果是的话,那很明显你的网格太粗了。按道理来说jet出来的地方,由于速度和周边环境的速度不一致,外缘在离出口很近的地方就应该开始有涡出来。你的网格量,RANS和LES都是一样的?

    是的,我没有修改网格,只修改了湍流模型,作为第一次尝试。
    确实,我这个还没有涡。
    我整个进口是开放的,不是东岳大佬说的有壁面的情况。
    整个进口的边界条件是turbulentinlet,然后每个cell都根据实验测的结果分配了值。然后fluctuations是0.15 三个方向。

    其次,Ck,Ce这些系数,是可以调的,而且LES里面这些系数只要不是太离谱,可能差异不会特别大。所以重点仍然是,找个类似的文献用人家用的就行,总比完全没有依据好。

    这个我得回头翻一下。

    最后,你提到的sgs下的耗散率,我个人是没见过这么定义的。这一项光看ksgs的输运方程,是表征ksgs的耗散率,但能不能和RANS里面的k-e模型的e对应起来,感觉需要严格的公式推导才可以。

    KE 里面的epsilon是需要解方程的。
    这部分我也得回头查一下, 最起码看看OF内置的

    游荡

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

    @cccrrryyy 悟了

    4717bd97-466c-4a1f-a47e-fa50ffa96c7e-image.png
    3b37ebaa-f387-456d-9005-accb740f1dba-image.png

    游荡

    百 C 2 条回复 最后回复
  • 李东岳李 离线
    李东岳李 离线
    李东岳 管理员
    写于 最后由 编辑
    #27

    我整个进口是开放的,不是东岳大佬说的有壁面的情况。

    我认为你搞成进口+壁面会有很大区别

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

    星 1 条回复 最后回复

  • 登录

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