Navigation

    CFD中文网

    CFD中文网

    • Login
    • Search
    • 最新

    压力方程和压力修正方程

    OpenFOAM
    3
    10
    4636
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      litong189456 last edited by

      请问一个压力基的的问题,压力方程和压力修正方程的区别到底是什么,为什么几乎所有的教材在讲述simple和Piso算法的时候都是用的压力修正方程,但是openfoam里面却全是压力方程?

      1 Reply Last reply Reply Quote
      • 程
        程迪 last edited by

        https://chengdi123000.github.io/2018/01/05/OpenFOAM的不可压缩流算法/#压力联系方程之到底是哪个方程

        github: chengdi123000
        网站:chengdi123000.github.io
        本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

        L 1 Reply Last reply Reply Quote
        • 李东岳
          李东岳 管理员 last edited by

          压力方程和压力修正方程的区别到底是什么,为什么几乎所有的教材在讲述simple和Piso算法的时候都是用的压力修正方程,但是openfoam里面却全是压力方程?

          • 主要原因是教材都非常老了,经典教材第一版写的时候都是90年代。同理,教材都是采用的交错网格。虽然同位网格有介绍。如果2018年有人写一本新的CFD巨著,很有可能用的就是压力方程而不是压力修正方程。

          • 但为了遵守SIMPLE算法的基本思想,压力修正方程的介绍还是有必要。但是你看PISO直接用的就是压力泊松。但相对于PISO,SIMPLE更容易理解因此教材中主要介绍原始的SIMPLE压力修正。

          • 压力方程可以从压力修正方程推导出来

          线上CFD课程 7月1日报名截止 http://dyfluid.com/class.html
          CFD高性能服务器 http://dyfluid.com/servers.html

          L 1 Reply Last reply Reply Quote
          • L
            litong189456 @李东岳 last edited by

            @李东岳
            感谢东岳老师。

            • 主要原因是教材都非常老了,经典教材第一版写的时候都是90年代。同理,教材都是采用的交错网格。虽然同位网格有介绍。如果2018年有人写一本新的CFD巨著,很有可能用的就是压力方程而不是压力修正方程。

            您的意思是压力方程和压力修正方程都一样,还是说压力方程相对于压力修正方程更有优势?

            • 但为了遵守SIMPLE算法的基本思想,压力修正方程的介绍还是有必要。但是你看PISO直接用的就是压力泊松。但相对于PISO,SIMPLE更容易理解因此教材中主要介绍原始的SIMPLE压力修正。

            我看computational methods for fluid dynamics等教材, PISO也是用压力修正方程推导的。

            是不是对于可压缩的压力基计算,压力修正方程更适合一些呢?
            对于压力方程:
            0_1516258562958_416c8085-9cc7-421c-a508-0581e98ae84e-image.png
            只有是rho=a*p这种形式的状态方程才可以直接把对流项里面的rho换成p。
            但是对于压力修正方程:0_1516258780373_a1c21623-ee79-44e9-8b58-6402c5a8f75c-image.png
            对于任何状态方程都是可以用的。
            谢谢您!

            1 Reply Last reply Reply Quote
            • L
              litong189456 @程迪 last edited by

              @程迪
              您写的博客实在太详细了,关于openfoam的piso算法,

              1.这个是由piso.correct()控制的,而piso.correct()是由变量label corrPISO_控制的。
              2.重复的时候,UEqn所引用的U是有更新的。所以用UEqn构造的UEqn.A(), UEqn.H()也可能会有所更新。

              之前有帖子曾经讨论过这个问题,http://www.cfd-china.com/topic/589/关于piso循环的二次修正的一个疑问/15 。

              @李东岳 在 关于piso循环的二次修正的一个疑问 中说:

              piso循环的二次修正是建立在第一次修正的基础上的。第二次修正的连续性方程是涉及到u**。上面的代码里,UEqn并没有做更新。如果忽略函数fvc::ddtCorr(U, phi),pEqn也是没有变动的。
              问题1: 这是不是就意味着对同一个pEqn重复一次迭代运算?

              虽然构建的速度矩阵Ueqn没有更新,但是HbyA有变化,因此求解的pEqn不是同一个pEqn

              问题2:我对问题1的理解是,在icoFoam的算法里,速度u通过连续性方程被隐性的耦合到了pEqn里面。第二次的修正是没有必要的。这与原始的PISO算法有区别。请问这样的理解对吗?

              不是很清楚你说的哪个二次修正,如果你说的是楼上指的非正交修正,一般情况下不需要进行,除非在那个potentialFoam中。因为这个求解器没有进行速度-压力耦合迭代。

              为什么Ueqn没有更新,但是HbyA有变化,HbyA不是等于UEqn.H()/UEqn.A()吗? Ueqn没有更新,那么UEqn.H()和UEqn.A()应该没变啊,为什么HbyA反而有变化。

              程 1 Reply Last reply Reply Quote
              • 李东岳
                李东岳 管理员 last edited by

                我看computational methods for fluid dynamics等教材, PISO也是用压力修正方程推导的。

                是不是对于可压缩的压力基计算,压力修正方程更适合一些呢?

                看了下,确实这本书里面是压力修正方程。但是JCP上Issa那个论文用的压力方程。因为压力修正方程经过几步运算可以直接推导出来压力方程,类似你求解3a+4b=S,变成6a+8b=2S。暂时没有深入研究是不是压力修正方程或者压力方程哪个更合适,不过压力方程不需要存储压力修正量。如果有文献对比过压力修正方程或者压力方程我也想看看,但我个人感觉没区别。

                线上CFD课程 7月1日报名截止 http://dyfluid.com/class.html
                CFD高性能服务器 http://dyfluid.com/servers.html

                程 L 2 Replies Last reply Reply Quote
                • 程
                  程迪 @litong189456 last edited by

                  @litong189456
                  UEqn是一个fvMatrix<T> 类,类成员里有个指针psi_,指向了U,所以UEqn.A, H计算都会引用U,U更新,A,H也更新。

                  github: chengdi123000
                  网站:chengdi123000.github.io
                  本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

                  L 1 Reply Last reply Reply Quote
                  • 程
                    程迪 @李东岳 last edited by

                    @李东岳
                    同问,到底谁是压力方程,Pressure Linked Equation(PLE), Pressure Poisson Equation(PPE)?

                    PISO用的好像也不是PPE
                    @litong189456
                    另外OpenFOAM是Picard迭代,

                    至少SIMPLE的PLE是玩的Discrete Then Split, DTS流程。投影法之类的玩的是STD流程。

                    github: chengdi123000
                    网站:chengdi123000.github.io
                    本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

                    1 Reply Last reply Reply Quote
                    • L
                      litong189456 @李东岳 last edited by

                      @李东岳
                      好的,谢谢东岳老师。

                      1 Reply Last reply Reply Quote
                      • L
                        litong189456 @程迪 last edited by

                        我还得更深入的阅读代码了,太感谢了。

                        1 Reply Last reply Reply Quote
                        • First post
                          Last post

                        CFD中文网 | 东岳流体 | 京ICP备15017992号-2
                        论坛登录问题反馈可联系 li.dy@dyfluid.com