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. 关于CreateTurbulenceFieldsLES疑问

关于CreateTurbulenceFieldsLES疑问

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

    想计算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 条回复 最后回复
  • bestucanB 离线
    bestucanB 离线
    bestucan 版主 大神
    写于 最后由 编辑
    #2

    箭头是对指针的成员的引用,找到这个类的定义: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

    1 条回复 最后回复

  • 登录

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