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

    @李东岳 李老师,最近在算槽道流,发现fields的松弛因子对结果有影响。

    1. 用pisoFoam算法时,松弛因子一直设置fields{p 0.3;}。槽道流的结果是正确的
      985edc22-fd35-4906-8c7f-926aaf5fdb90-image.png
    relaxationFactors
    {
        fields
        {
            p           0.3;
        }
        equations
        {
            U           1;
        }
    }
    
    1. 用pimpleFoam算法时,由于松弛因子没改,导致计算结果偏差较大。
      2090dc0d-ed19-478e-947c-7ee3a5b3de7c-image.png
      然后按照这个帖子修改松弛因子:OpenFOAM guide/The PIMPLE algorithm in OpenFOAM - OpenFOAMWiki,重新计算结果就与pisoFoam的结果一致。
        fields
        {
            p      0.3;
            pFinal   1;
        }
        equations
        {
            "U|k|epsilon"     0.3;
            "(U|k|epsilon)Final"   1;
        }
    
    1. 原因分析:查看pisoFoam的pEqn.H,没有执行p.relax()。但pimpleFoam的pEqn.H中有执行p.relax(),猜测只设置fields{p 0.3;}导致了结果不准确。
    1 条回复 最后回复
  • 李东岳李 离线
    李东岳李 离线
    李东岳 管理员
    写于 最后由 编辑
    #2

    我那个一楼当时理解的不准确 为了不引起歧义我在另外一个帖子回复你

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

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

    用pisoFoam算法时,松弛因子一直设置fields{p 0.3;}。槽道流的结果是正确的

    PISO算法不能加松弛,加松弛会影响时间步进结果。不过最终的结果不受影响。
    你这个结果,是时间平均后的结果么?还是最终的结果?

    查看pisoFoam的pEqn.H,没有执行p.relax()。

    你是说你设置了松弛因子,pisoFoam没有执行?

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

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

    @李东岳 结果是槽道流时间和空间平均最终结果,of中自带的postChannelDict计算得到的结果。pisoFoam的pEqn.H代码中,没看到有执行p.relax(),但pimpleFoam有。所以想是否pisoFoam没有执行p.relax(),所以结果就比较吻合。

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

    pisoFoam的pEqn.H代码中,没看到有执行p.relax()

    piso确实不能执行松弛。Piso只能:

    1. 做方程松弛,系数是1,针对速度这种,增加收敛性,如果更低的系数,会导致时间步推进不正确
    2. 不能做场松弛

    如果piso加了松弛,会时间步进不正确。不过不影响最终的结果。表现就是1-100秒的时间步进,实际上是1-1000秒的结果。就像时间变慢了一样。

    这个很好验证,那个pitzdayli算例,加松弛之后,整体流动就像时间变慢了一样,但是还是正常的推进。

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

    1 条回复 最后回复
  • C 离线
    C 离线
    coolhhh 神
    写于 最后由 编辑
    #6

    理解了,谢谢李老师

    1 条回复 最后回复

  • 登录

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