CFD中文网

    CFD中文网

    • 登录
    • 搜索
    • 最新

    气液固三项流,耦合interFoam和DPMFoam可以实现吗?

    OpenFOAM
    9
    40
    4687
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • zhe
      zhe 最后由 编辑

      大家好,我研究的方向是海底水流对泥沙的冲刷。其中包括海面上的空气流,海水和海底的沙石颗粒。我个人的理解应该是一种不相容的三项流的模拟。所以我想用interFoam加DPMFoam来完成。但是有个问题:应该在interFoam里加入颗粒还是应该在现有的DPMFoam里把它的单项流换成我想要的双项流?希望各位能多多帮忙,互相学习。谢谢。

      1 条回复 最后回复 回复 引用
      • Y
        yfclark 讲师 最后由 编辑

        基金会做了一个mppicinterfoam,基本是是这样的,但是openfoam的拉格朗日追踪还是太落后了,它没法处理粒子比网格大的情况,因此欧拉项界面的精细解析没法耦合在一起,有不少人在开发这样的三相流求解器,我有看到解决了这个问题的论文,但是我还没有看到在openfoam上开源的代码

        1 条回复 最后回复 回复 引用
        • Y
          yfclark 讲师 最后由 编辑

          如果你的沙子很小,且不会越过气液界面,我想基金会的mppicinterfoam能够满足你的要求

          zhe 1 条回复 最后回复 回复 引用
          • zhe
            zhe @yfclark 最后由 编辑

            @yfclark 谢谢您的回复。我的项目的确满足您说的这种情况。沙子的尺寸很小,并且不会跃出水面。但是我看了MPPICInterFoam,这个仍然是解决不相容的两相流的问题。怎么添加固体颗粒啊?希望能得到您的再次指导,谢谢。

            1 条回复 最后回复 回复 引用
            • Y
              yfclark 讲师 最后由 编辑

              @zhe 你看看官方提供的算例,可以人工入射拉格朗日粒子的,也可以参考其他拉格朗日求解器的设置

              zhe 2 条回复 最后回复 回复 引用
              • 星
                星星星星晴 最后由 编辑

                理论上可以,

                同事在做三相bubble column 里面有颗粒。
                Bubble部分基于interFoam编写,particle部分使用的就是kinematic parcel。
                准确来说是自己修改的interFoam 和 Euler - Lagrangian的 Hard sphere.
                DEM和DPM的区别就是Hard sphere 和soft sphere的区别嘛~

                ps:我到现在一直不理解DEM和 Euler- Lagrangian的区别。

                我个人觉得,再interFoam中加入颗粒应该会比较简单
                主要修改两个地方,evolve parcel 和 修改动量方程源项(假设不考虑其他影响)
                建议看一下ReactingParcelFoam(及更上层的sprayFoam),这个应该是整个Lagrangian model中包含各种模型最全的。
                以及下方
                https://www.foamacademy.com/wp-content/uploads/2018/03/particles_slides.pdf

                m.sui20@foxmail.com

                zhe 1 条回复 最后回复 回复 引用
                • 李东岳
                  李东岳 管理员 最后由 编辑

                  欧拉拉格朗日倾向于是一种框架。连续相在欧拉框架下算,离散型在拉格朗日框架下。欧拉框架有很多算法,N-S方程是一种算法,矩方法是一种算法。同样拉格朗日框架下有很多算法。DEM属于一种算法。还比如MPPIC,PIC。DPM要比DEM简单些。但都属于拉格朗日跟踪

                  CFD高性能服务器 http://dyfluid.com/servers.html
                  2023年,线下CFD课,预热一下 http://dyfluid.com/class.html

                  zhe 小狗狗 2 条回复 最后回复 回复 引用
                  • zhe
                    zhe @星星星星晴 最后由 编辑

                    @星星星星晴 谢谢您的回复。但我有一个担心的问题就是,如果在interFoam里加入颗粒的话,需要更多的去考虑液固耦合,和颗粒与颗粒之间的碰撞机制。这样就不只是加入颗粒那么简单了。而如果在DPMFoam中换作两相流的话,是不是自带的就解决了流固耦合,和颗粒之间的碰撞的问题?

                    星 1 条回复 最后回复 回复 引用
                    • zhe
                      zhe @yfclark 最后由 编辑

                      @yfclark 谢谢,谢谢。我看了它的机制,觉得可以一试。过段时间如果再有问题,会继续向您请教。如果可以成功使用,我也会留言给以后用到的同学。感谢🙏

                      1 条回复 最后回复 回复 引用
                      • 星
                        星星星星晴 @zhe 最后由 编辑

                        @zhe
                        情况是这样的,不知道我理解的对不对。
                        毕竟我不做VOF这一块。。

                        interFoam 直接对于alpha的处理已经足够了。所以你的mixsolver中比较南的部分就已经解决了。
                        如果你反着来,implement 就可能会更复杂一点。
                        如果参考下面给你的那个PPT,需要添加源相即可。

                        至于你说的碰撞机制,再sprayFoam中就有 stochastic collision model(O'Rouke)。
                        以及我同事的论文
                        Influence of inter‐particle collisions and agglomeration on cyclone performance and collection efficiency(2019)
                        作者
                        Oscar Lino Sgrott, Martin Sommerfeld

                        颗粒碰撞的问题就操作比较复杂了,你要深入到src/Lagrangian/intermediate的深层次一点了。
                        对Parcel进行调整。

                        m.sui20@foxmail.com

                        zhe 1 条回复 最后回复 回复 引用
                        • zhe
                          zhe @星星星星晴 最后由 编辑

                          @星星星星晴 的确像您说的,如果在DPMFoam中加入interFoam的话,alpha的这部分很难。我尝试过,但是加入两相流的话还要在考虑颗粒占的体积分数。需要额外定义一个alpha3。惭愧的是,我一直也没生成这个求解器。可能是从理论上都没过关。我再试试您给的这个ppt上的方法。同时,上面yfclark提到的mppicinterfoam也是值得尝试的一种方法。我会接着在这个论租里更新我的情况。有问题了,还希望您能抽时间帮我看一下。真心感谢。也希望能帮到以后用到这个方法的同学。谢谢。

                          星 1 条回复 最后回复 回复 引用
                          • 星
                            星星星星晴 @zhe 最后由 编辑

                            @zhe 哈哈 我不做VOF 但是我做Lagrangian 这部分。
                            我觉得alpha3应该就是一个scalar 然后写出场即可吧?
                            另外PPT中只是 固液 coupling,如果涉及到气泡什么的,particle particle就需要自己根据模型写啦。

                            m.sui20@foxmail.com

                            zhe 1 条回复 最后回复 回复 引用
                            • zhe
                              zhe @星星星星晴 最后由 编辑

                              @星星星星晴 是,只是一个scalar。我是新能源和环境工程出身,对code的确很陌生。但是我真心觉得OpenFoam可以用在一些具体工程问题上,所以很想把他学好。谢谢您一直耐心回复,我会多个方法都试试,寻求出较好的方法。多谢!

                              星 1 条回复 最后回复 回复 引用
                              • 星
                                星星星星晴 @zhe 最后由 编辑

                                @zhe it's easy 慢慢来,我也是半路出家到多相流,做多相流的模拟不到一年。。

                                m.sui20@foxmail.com

                                zhe 1 条回复 最后回复 回复 引用
                                • zhe
                                  zhe @星星星星晴 最后由 编辑

                                  @星星星星晴 以后可以多交流交流。我现在还在利物浦大学读博,研究还要很久,并且之后也会接着再做学术研究,希望咱们能多交流多互相借鉴!

                                  星 1 条回复 最后回复 回复 引用
                                  • 星
                                    星星星星晴 @zhe 最后由 编辑

                                    @zhe ::ok: :ok: :high:

                                    m.sui20@foxmail.com

                                    1 条回复 最后回复 回复 引用
                                    • zhe
                                      zhe @yfclark 最后由 编辑

                                      @yfclark 您好,我遇到一个小问题。我用的是openfoam7的版本。MPPICInterFoam是由openfoam.com发布的,只有openfoam-1612v以上的版本才有。我需要换成另外的版本吗?还是说可以下载openfoam.com上的求解器到openfoam 7上?等您回复,谢谢。

                                      1 条回复 最后回复 回复 引用
                                      • zhe
                                        zhe @李东岳 最后由 编辑

                                        @东岳 您好,李老师。我下载了MPPICInterFoam后,想要安装。但是一run就出来了错误。希望您能帮我看一下,看看是哪里出了问题,谢谢您。!
                                        Screenshot from 2019-10-01 12-25-01.png

                                        zhe X 2 条回复 最后回复 回复 引用
                                        • Y
                                          yfclark 讲师 最后由 编辑

                                          换基金会版本,两个源代码不通用

                                          1 条回复 最后回复 回复 引用
                                          • zhe
                                            zhe @zhe 最后由 编辑

                                            已解决,路径问题。不好意思。

                                            1 条回复 最后回复 回复 引用
                                            • X
                                              xiaolin @zhe 最后由 编辑

                                              @zhe 您好,我也遇到了和你一样的问题,劳烦问一下,该怎么解决呢

                                              zhe 1 条回复 最后回复 回复 引用
                                              • zhe
                                                zhe @xiaolin 最后由 编辑

                                                @xiaolin 我是因爲安裝了不同版本的OpenFOAM而導致的問題.比如說OpenFOAM6和OpenFOAM18.06,這種不同編號的版本是不同組織創建的.所以裏面有一些東西不兼容.你需要下載相應的版本.

                                                W 1 条回复 最后回复 回复 引用
                                                • W
                                                  wangtao121 @zhe 最后由 编辑

                                                  @zhe 您好,你问题解决了吗?我想问一下后续你是interFoam加入颗粒,还是把DPM单项流给换掉了?谢谢

                                                  zhe 1 条回复 最后回复 回复 引用
                                                  • zhe
                                                    zhe @wangtao121 最后由 编辑

                                                    @wangtao121 之后发现,在openfoam中multiphase的solver中,有一个MPPICInterFoam的solver,把其中的MPPIC换成DPM就可以解决这个问题。实际上是在interfoam里加入了粒子效果。

                                                    星 1 条回复 最后回复 回复 引用
                                                    • 马乔
                                                      马乔 副教授 最后由 编辑

                                                      damBreak2.gif
                                                      像这样子嘛?

                                                      装逼没输过,吵架没赢过!

                                                      O 1 条回复 最后回复 回复 引用
                                                      • O
                                                        OItoCFD @马乔 最后由 编辑

                                                        @马乔 您好 请问 这种是直接把颗粒的lib加到interfoam里就可以吗?粒子从水里到空气中需要做些特殊处理吗?感觉不做也可以呀?

                                                        马乔 1 条回复 最后回复 回复 引用
                                                        • 马乔
                                                          马乔 副教授 @OItoCFD 最后由 编辑

                                                          @oitocfd 直接用MPPICInterFoam就可以了

                                                          装逼没输过,吵架没赢过!

                                                          O 1 条回复 最后回复 回复 引用
                                                          • O
                                                            OItoCFD @马乔 最后由 编辑

                                                            @马乔 好的谢谢

                                                            1 条回复 最后回复 回复 引用
                                                            • 星
                                                              星星星星晴 @zhe 最后由 编辑

                                                              @zhe 雷猴啊,同事要做三相的模拟,请问你做的咋样啦~

                                                              m.sui20@foxmail.com

                                                              小狗狗 zhe 2 条回复 最后回复 回复 引用
                                                              • 小狗狗
                                                                小狗狗 @星星星星晴 最后由 编辑

                                                                @星星星星晴 你好,我想请教一下,欧拉-拉格朗日方法中,DPM方法描述的拉格朗日颗粒是不是假设半径为0的点?

                                                                星 1 条回复 最后回复 回复 引用
                                                                • 小狗狗
                                                                  小狗狗 @李东岳 最后由 编辑

                                                                  @李东岳 你好,我想请教一下,欧拉-拉格朗日方法中,DPM方法描述的拉格朗日颗粒是不是假设半径为0的点?

                                                                  1 条回复 最后回复 回复 引用
                                                                  • 星
                                                                    星星星星晴 @小狗狗 最后由 编辑

                                                                    @小狗狗 怎么说呢,parcel是point mass,有质量,有体积的particle的集合。
                                                                    请问你说的假设半径为0指的是什么?
                                                                    DPMFoam的parcel是有半径的,但是不会像DEM那样真正的占据一定体积。就是一个数,所以euler-Lagrange才对parcel占网格体积比有要求

                                                                    m.sui20@foxmail.com

                                                                    小狗狗 1 条回复 最后回复 回复 引用
                                                                    • 小狗狗
                                                                      小狗狗 @星星星星晴 最后由 编辑

                                                                      @星星星星晴 我的意思是在计算粒子轨迹过程中,比如轨迹和网格的几何相交关系,是不是把粒子当作质点来处理,不考虑粒子的实际的体积

                                                                      星 1 条回复 最后回复 回复 引用
                                                                      • 星
                                                                        星星星星晴 @小狗狗 最后由 编辑

                                                                        @小狗狗 我没处理过这样的问题,无法给你准确答案。但是我认为是不可以的,就类似你计算drag的时候同样也要考虑半径,当你考虑空间关系的话,应该也需要将其考虑为真正的小球。比如用拉格朗日模拟气泡壁面的话,肯定也要考虑气泡与避免的距离一样。

                                                                        m.sui20@foxmail.com

                                                                        小狗狗 1 条回复 最后回复 回复 引用
                                                                        • 小狗狗
                                                                          小狗狗 @星星星星晴 最后由 编辑

                                                                          @星星星星晴 你说的应该是物理模型层面的东西,算拽力之类的,会给定体积来算的。我说的仅仅是颗粒追踪过程粒子与网格的几何关系,举个例子,一个粒子从一个单元内穿过单元面进入到相邻单元,如何判定这个粒子是否穿过面?是不是就把粒子当作质点来计算?还是说把粒子当作是有实际半径的球来计算?

                                                                          星 O 2 条回复 最后回复 回复 引用
                                                                          • 星
                                                                            星星星星晴 @小狗狗 最后由 编辑

                                                                            @小狗狗 你这么说的话 就是质点, 不考虑半径

                                                                            m.sui20@foxmail.com

                                                                            小狗狗 1 条回复 最后回复 回复 引用
                                                                            • 小狗狗
                                                                              小狗狗 @星星星星晴 最后由 编辑

                                                                              @星星星星晴 嗯嗯,谢谢

                                                                              1 条回复 最后回复 回复 引用
                                                                              • O
                                                                                OItoCFD @小狗狗 最后由 编辑

                                                                                @小狗狗 是的 openfoam里这种颗粒,算力是拖曳力系数用类似莫里森方程来算,算是概化模型吧,运动那些都是当为一个支点,不是grid-resolved。如果是精细考虑颗粒,每个颗粒表面也要画网格,受力是根据颗粒表面附近流体节点压力积分来算,再算总的这个颗粒平动转动。

                                                                                小狗狗 1 条回复 最后回复 回复 引用
                                                                                • 小狗狗
                                                                                  小狗狗 @OItoCFD 最后由 编辑

                                                                                  @oitocfd 嗯嗯,明白了,谢谢

                                                                                  1 条回复 最后回复 回复 引用
                                                                                  • zhe
                                                                                    zhe @星星星星晴 最后由 编辑

                                                                                    @星星星星晴 不好意思,一直在工作和学习两边忙,没有怎么来论坛。都还好,谢谢。至于openfoam的粒子追踪模型,都是不考虑粒子体积的,只是一个点。但在欧拉下计算NS方程,是考虑了粒子占网格的比值(这也不是考虑了体积)这只是考虑了由于粒子存在在网格,占据了原本流体的一部分体积,对计算流体造成了影响。总的来说,还是算的流,粒子只是一个源项。

                                                                                    1 条回复 最后回复 回复 引用
                                                                                    • First post
                                                                                      Last post