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
12 帖子 4 发布者 11.0k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • Z 离线
    Z 离线
    zwl
    写于 最后由 编辑
    #1

    现在在解析reactingTwoPhaseEulerFoam求解器,因此以此为例说明求助问题:
    研究气液两相,液相为纯相,气相包含空气和蒸汽。
    那么我的问题是求解器内直接给的是气相的物性(应该是混合物性,比如密度等),但是每个组分在字典里都单独给了状态方程参数,我猜想会先单独求解各组分物性然后再混合,仔细看了两天代码,求解器看了一遍,热物性库也看了不少,就是没发现在哪进行的混合计算。看求解器感觉求解器里获得的直接就是混合的,看热物性库,感觉求的是每相的单组分的。中间的过度始终没找到。
    另外在rhoThermo里调用状态方程里的密度,和可压缩性是这样的:

        rho_
        (
            IOobject
            (
                phasePropertyName("thermo:rho"),
                mesh.time().timeName(),
                mesh,
                IOobject::NO_READ,
                IOobject::NO_WRITE
            ),
            mesh,
            dimDensity
        ),
    
        psi_
        (
            IOobject
            (
                phasePropertyName("thermo:psi"),
                mesh.time().timeName(),
                mesh,
                IOobject::NO_READ,
                IOobject::NO_WRITE
            ),
            mesh,
            dimensionSet(0, -2, 2, 0, 0)
        ),
    

    thermo:rho是在哪定义的,没看到。。。
    请研究这方面的各位CFDers指点、赐教、相互交流,谢谢。

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

    phasePropertyName("thermo:rho"),中的thermo:rho是初始化不是定义

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

    Z C 2 条回复 最后回复
  • Z 离线
    Z 离线
    zwl
    在 中回复了 李东岳 最后由 编辑
    #3

    @东岳 我知道它的意思是初始化,可我想知道这个表示方法怎么来的,它的具体实现在哪?
    东岳老师了解多组分的物性计算流程吗?单组分物性到混合物性的计算过程,有大致流程就行,具体细节我可以自己去看,我的思路现在断了一块,能给些提示对我的帮助会很大,谢谢。

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

    目前还没计算过带化学反应的组分传输呢。这块我放在2019年后半段 :duang:

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

    Z 1 条回复 最后回复
  • Z 离线
    Z 离线
    zwl
    在 中回复了 李东岳 最后由 编辑
    #5

    @东岳 其实我也不带化学反应,只是多组分,有相变。那我先研究研究,趟趟路~:chouchou:

    1 条回复 最后回复
  • 浪 离线
    浪 离线
    浪迹天大
    写于 最后由 编辑
    #6

    好像可以参考:OpenFOAM 如何更新混合物的属性

    OpenFOAM 学习交流:https://openfoam.top

    Z 1 条回复 最后回复
  • Z 离线
    Z 离线
    zwl
    写于 最后由 编辑
    #7

    这个更贴近些吧,不过也不全,杂七杂八看了不少,似乎快有眉目了。
    http://xiaopingqiu.github.io/2016/06/25/thermophysics1/

    1 条回复 最后回复
  • Z 离线
    Z 离线
    zwl
    在 中回复了 浪迹天大 最后由 编辑
    #8

    @浪迹天大 谢谢,之前看过,忘了,重看一遍,收获不小。:chigua:

    1 条回复 最后回复
  • C 离线
    C 离线
    cccrrryyy 超神
    写于 最后由 编辑
    #9

    看时间估计楼主已经得到答案了,不过下面这个链接还是建议你看一下。这个人做的的关于OpenFOAM的东西挺好的,他在cfd-online(https://www.cfd-online.com/Forums/members/fumiya.html)上也比较活跃。

    http://caefn.com/openfoam/solvers

    热物性主要是在src/thermophysicalModels里面,我只看过basicThermo。基本逻辑是,basicThermo发展出fluidThermo,fluidThermo发展出psiThermo和rhoThermo。然后psiThermo和rhoThermo结合heThermo发展出psiHeThermo和rhoHeThermo(这两个就是你在使用求解器的时候告诉OpenFOAM的热物性名字,thermoType里面的type),你需要的关于混合物物性的计算在这两个类里面,主要是里面的calculate()函数。这也是为什么在涉及到热物性的求解器里面的能量方程(比如HEqn.H)的末尾会有一个thermo.correct(),这个correct()函数实际上就可以理解为calculate(),即在求解能量方程之后更新混合物的热物性。

    个人理解是,OpenFOAM里面热物性是单独一块,然后混合物定义是单独一块,这两块结合起来得出的类是关于混合物的热物性的。

    仅供参考,欢迎交流。

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

    1 条回复 最后回复
  • C 离线
    C 离线
    cccrrryyy 超神
    在 中回复了 李东岳 最后由 编辑
    #10

    @东岳 请问这个thermo:rho是初始化是什么意思?如果我把里面的IOobject::NO_WRITE改成IOobject::AUTO_WRITE,我在输出结果里是可以看到thermo:rho(以及thermo:psi)的,这个thermo:rho和thermo:psi是不是就是按照混合物热物性更新得到的密度和可压缩比呢?

    一直很好奇为什么名字不直接做成"rho"和"psi",而要做成"thermo:rho"和"thermo:psi",这里面是有什么含义么,还是就是随便取个名字。

    期待解答。

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

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

    thermo:rho这个词随便写,你可以写成thermo:::rho,这是一个名字,实际就是rho_。

    一直很好奇为什么名字不直接做成"rho"和"psi",而要做成"thermo:rho"和"thermo:psi",

    防止冲突,你这么写输出是thermo:::rho表示实在rhoThermo.C里面输出的,求解器如果还输出rho,这样两个thermo:::rho和rho不冲突

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

    C 1 条回复 最后回复
  • C 离线
    C 离线
    cccrrryyy 超神
    在 中回复了 李东岳 最后由 编辑
    #12

    @东岳 在 OpenFOAM多组分返回热物性 中说:

    实际就是rho_

    这样!明白了明白了,谢谢。

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

    1 条回复 最后回复

  • 登录

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