CFD中文网

    CFD中文网

    • 登录
    • 搜索
    • 最新

    关于CreateTurbulenceFieldsLES疑问

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

      想计算LES下的耗散率,搜到cfdonline的一个程序CreateTurbulenceFieldsLES,是这个createTurbulenceFieldsLES2.zip ,这个是cfdonline链接,里面对于耗散率的计算非常简单,贴下代码

      volScalarField epsilon
      (
      IOobject
      (
      	"epsilon",
       	runTime.timeName(),
       	mesh,IOobject::NO_READ,
       	IOobject::NO_WRITE
       ),
       turbulence->epsilon()
       );
      

      对于这个不是很理解,箭头应该是指针吧,但是我不能很好的找到计算公式,貌似是采用的层流下的计算方式,因为在这个程序另一个文件createFields.H下有这么一处代码:

          singlePhaseTransportModel laminarTransport(U, phi);
      
          autoPtr<incompressible::turbulenceModel> turbulence
          (
              incompressible::turbulenceModel::New(U, phi, laminarTransport)
          );
      

      然后我找了下层流laminar.C下计算的方法

      tmp<volScalarField> laminar::epsilon() const
      {
          return tmp<volScalarField>
          (
              new volScalarField
              (
                  IOobject
                  (
                      "epsilon",
                      runTime_.timeName(),
                      mesh_,
                      IOobject::NO_READ,
                      IOobject::NO_WRITE
                  ),
                  mesh_,
                  dimensionedScalar
                  (
                      "epsilon", sqr(U_.dimensions())/dimTime, 0.0
                  )
              )
          );
      }
      

      两个具体问题,我找的laminar.C这个是不是计算epsilon的公式,第二个问题层流下计算耗散率epsilon的公式为什么是这样的,按照定义应该是下图这样的,Eij就是指耗散率,应该是脉动速度的乘积,希望得到解答,谢谢!
      8545ee27-f883-41aa-8142-3a38baddc552-image.png

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

        箭头是对指针的成员的引用,找到这个类的定义:turbulenceModel.H

        epsilon()函数声明在205行,是个虚函数,所以在 turbulenceModel.C 里没有定义,而是在使用其作为模板创建新类的时候再各自定义

        在上面那个窗口里搜 epsilon() 函数:
        Screenshot from 2020-09-15 16-37-07.png

        看你的情况是用的哪种定义,其实里面 epsilon() 函数定义大差不差,
        你用的 LES,咋找上层流的了,你找的那个确实是层流的对于 epsilon() 的一个实现,在我发的那个图片里也有

        脉动速度都用上了,那应该不是层流了,速度分成脉动速度和平均速度这就是用了湍流模型了

        滚来滚去……~(~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 条回复 最后回复 回复 引用
        • First post
          Last post