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. 怎样输出interFoam中的项分数?

怎样输出interFoam中的项分数?

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

    怎样输出interFoam中的项分数?例如dambreak中的alpha.water
    我需要获取某个网格处相分数的数据,我是这样写的:

    alpha.water[sphereCellsI[i]]
    

    但是编译的时候会报错:

    turbinesupdate.H:467:36: error: ‘class Foam::DynamicList<Foam::List<Foam::List<double> > >’ has no member named ‘water’
                          if( mag(alpha.water[sphereCellsI[i]]-0.5) < mindisalpha )
    

    也就是说alpha.water并不是一个变量啊,而且这也不符合C++里面变量名称的规则呀
    那么,我怎样才能得到这个数据呢?
    请各位大佬多多指教~~~

    D 1 条回复 最后回复
  • D 离线
    D 离线
    dzw05 超神
    在 中回复了 范准 最后由 编辑
    #2

    @范准 openfoam中的相名称是动态指定的,也就是说是从transportProperties中读取的。interFoam求解器中creatFields.H文件中,定义了alpha1为第一项的体积分数,alpha2为第二项的体积分数。所以你可以根据water是第几项,选择变量alpha1或alpha2。

    自主匠心,普惠仿真。

    范准范 1 条回复 最后回复
  • 范准范 离线
    范准范 离线
    范准
    在 中回复了 dzw05 最后由 编辑
    #3

    @dzw05 明白了,也就是说,water并不是一个真正原始的量,这个量的值实际上是由alpha1来指定的,那么我想输出water,直接就输出alpha1就行了。我刚刚试了一下,确实是这样的。多谢啦~~~~

    1 条回复 最后回复

  • 登录

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