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. OpenFOAM中能量方程的疑问

OpenFOAM中能量方程的疑问

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

    各位老师好!

    我采用compressibleInterFoam二次开发计算了一个可压缩空化问题,目前对里面的能量方程有一点疑问。能量方程代码如下:

    fvScalarMatrix TEqn
        (
            fvm::ddt(rho, T)
          + fvm::div(rhoPhi, T)
          - fvm::laplacian(mixture.alphaEff(turbulence->mut()), T)
          + (
                fvc::div(fvc::absolute(phi, U), p)
              + fvc::ddt(rho, K) + fvc::div(rhoPhi, K)
            )
           *(
               alpha1/mixture.thermo1().Cv()
             + alpha2/mixture.thermo2().Cv()
            )
        );
    

    根据东岳老师的能量方程教程(链接:http://www.dyfluid.com/docs/energy.html ) 公式(7)和公式(21),可以得到alpha_eff 的单位应该是 kg/(ms),但通过查看of源代码可以发现alpha_eff 单位竟然可以是 kg/(ms) 还可以是 J/m/s/K。
    代码链接:https://cpp.openfoam.org/v3/a02698.html#a9648c27c51ad3b583ca3c44c7ac0d868
    https://cpp.openfoam.org/v3/a00123.html#a20f8bad2335b8c29d97af5ac7d324746

    问题一:我感觉alpha_eff 单位应该是 kg/(ms),怎么又多出来一个呢?

    问题二:通过查阅文献,发现混合热扩散系数alpha_eff 需要通过导热率k,定容比热容Cv来计算(在本例中为水和水蒸气的导热率),在of中如何计算导热率k呢?
    111111.png

    麻烦各位老师指点一下,同时请问有什么资料可以推荐参考呢?我去学习一下

    李东岳李 T 2 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    在 中回复了 小考拉 最后由 编辑
    #2

    @小考拉 在 OpenFOAM中能量方程的疑问 中说:

    mixture.alphaEff(turbulence->mut())

    你说的是这个的单位么

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

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

    @李东岳

    感谢老师的回复。

    是的,我说的就是alphaEff的单位。我目前认为单位是 kg/(ms)

    问题二中,对于导热率( thermal diffusivity)我通过查找资料,感觉可能是通过 普朗特数计算得到的吧。

    我计算之前设置了流场的普朗特数,就可以计算得到导热率了,不知道我这样的理解是否正确呢?:chigua:

    _ZKW6R19G4A%HV2H72LAEJY.png

    小 1 条回复 最后回复
  • 小 离线
    小 离线
    小考拉
    在 中回复了 小考拉 最后由 编辑
    #4

    @小考拉 继续补充,对于第二个问题,目前导热系数的确可以通过普朗特数的公式计算得到,但前提是我设置的case里面保证了thermophysicalProperties中的transport里面选择const

    具体的介绍,可以参考:https://cfd.direct/openfoam/user-guide/v6-thermophysical/

    https://www.cfd-online.com/Forums/openfoam-programming-development/172223-how-thermal-conductivity-calculated.html

    1 条回复 最后回复
  • T 离线
    T 离线
    Tens 神
    在 中回复了 小考拉 最后由 编辑
    #5

    @小考拉
    J/m/s/K这个单位是求能量方程时使用的,而kg/(ms)这个单位是求解温度方程时使用的,两个单位之间差一个比热容的单位J/(kg·K)

    李东岳李 小 2 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    在 中回复了 Tens 最后由 编辑
    #6

    @小考拉

    在compressibleInterFoam中没找到你写的这一行代码,我的OpenFOAM-7/8是下面的:

    fvScalarMatrix TEqn
        (
            fvm::ddt(rho, T) + fvm::div(rhoPhi, T) - fvm::Sp(contErr, T)
          - fvm::laplacian(turbulence.alphaEff(), T)
          + (
                fvc::div(fvc::absolute(phi, U), p)()() // - contErr/rho*p
              + (fvc::ddt(rho, K) + fvc::div(rhoPhi, K))()() - contErr*K
            )
           *(
               alpha1()/mixture.thermo1().Cv()()
             + alpha2()/mixture.thermo2().Cv()()
            )
         ==
            fvOptions(rho, T)
        );
    

    我看了下compressibleMultiphaseInterFoam倒是发现了类似的:

    fvScalarMatrix TEqn
        (
            fvm::ddt(rho, T)
          + fvm::div(mixture.rhoPhi(), T)
          - fvm::laplacian(mixture.alphaEff(turbulence->mut()), T)
          + (
                fvc::div(fvc::absolute(phi, U), p)
              + fvc::ddt(rho, K) + fvc::div(mixture.rhoPhi(), K)
            )*mixture.rCv()
        );
    

    里面有mixture.alphaEff(turbulence->mut()),这个单位在multiphaseMixtureThermo里面定义了:

    //- Effective thermal diffusivity of mixture [W/m/K]
                virtual tmp<volScalarField> alphaEff
                (
                    const volScalarField& alphat
                ) const;
    

    [W/m/K]。看起来注释错了,应该是kg/(ms)

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

    1 条回复 最后回复
  • 小 离线
    小 离线
    小考拉
    在 中回复了 Tens 最后由 编辑
    #7

    @tens 学到了,感谢老师的指点!:chitang:

    1 条回复 最后回复

  • 登录

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