Navigation

    CFD中文网

    CFD中文网

    • Login
    • Search
    • 最新

    OF如何实现二维场到三维场的建立

    OpenFOAM
    3
    13
    6021
    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.
    • A
      Aeronastro last edited by Aeronastro

      我用二维(展向不计算,为empty)的几何模型算了一个结果,想把这个结果对应到三维场(有展向长度),这个用OF是否可以实现?有什么思路么?谢谢!

      PS:二维和三维的模型是一样的,唯一的区别就是有了展向长度

      1 Reply Last reply Reply Quote
      • W
        wwzhao 教授 last edited by

        将模型贯穿计算域就行,两端的边界条件可以给symmetryPlane

        A 1 Reply Last reply Reply Quote
        • A
          Aeronastro @wwzhao last edited by

          @wwzhao 可以详细一点吗?有点不太清楚。还有一点就是三维的前后两个面是周期性边界,我用的是cyclic,不知道如果用symmetryPlane算出的结果会差多少,这两种边界条件你都试过么?谢谢

          W 1 Reply Last reply Reply Quote
          • W
            wwzhao 教授 @Aeronastro last edited by

            @Aeronastro 用 extrudeMesh 将网格转成3d,再改一下边界条件就行。关于cyclic和symmetryPlane的区别我没有试过,你可以试试,不过我想结果不会差太大。

            A 1 Reply Last reply Reply Quote
            • A
              Aeronastro @wwzhao last edited by

              @wwzhao 好的,这个工具将网格展向多了几层网格,相应的场也会这样对应过去吗?

              W 1 Reply Last reply Reply Quote
              • W
                wwzhao 教授 @Aeronastro last edited by

                @Aeronastro 这个工具只对网格进行操作,三维算例需要重新计算。

                A 1 Reply Last reply Reply Quote
                • A
                  Aeronastro @wwzhao last edited by

                  @wwzhao 好的,感谢。不知道如何利用这个二维的场也能这样对应到三维里,这样就不用再从头算了

                  W 1 Reply Last reply Reply Quote
                  • W
                    wwzhao 教授 @Aeronastro last edited by

                    @Aeronastro 你可以用transformPoints将2d计算域沿展长方向放大到和3d一样,然后用mapFields映射2d solution到3d。

                    A 1 Reply Last reply Reply Quote
                    • A
                      Aeronastro @wwzhao last edited by

                      @wwzhao 好的,这个应该可行,感谢!

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

                        我用了这个方法将二维在展向方向上放大了,但是在映射到三维场的时候,值都是零,

                        变成三维之后你的展向方向网格变大了么?就是说比如你原来2D,展向方向1米,一个网格。3D后变成10米,10个网格,还是1米,10个网格?

                        我用二维(展向不计算,为empty)的几何模型算了一个结果,想把这个结果对应到三维场(有展向长度)

                        一个思路是写一个后处理程序。举例,如果Z方向变成三维,xy固定时,所有z一个值。不过mapField当然更简单

                        不好意思编辑错了,无法撤销..

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

                        A 1 Reply Last reply Reply Quote
                        • A
                          Aeronastro @李东岳 last edited by

                          @李东岳 我之前出现的问题就是值都为零,不知道怎么解决。我的2D展向拉长3D,展向还是一层网格,只是尺寸变大而已。

                          看来只能写一个后处理小程序了。

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

                            首先把你拉长的网格缩小和2D一样大,然后mapField,然后放大回去就可以了。

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

                            A 1 Reply Last reply Reply Quote
                            • A
                              Aeronastro @李东岳 last edited by

                              @李东岳 这个三维稍微比二维的在流向长了一点点(很小),mapField不是完全consistent,二维的z坐标是对称的,我的三维则不然,z的最小值是0,所以还得写mapFieldsDict。我之前的做法映射的值都是零,不知道是不是我的mapFieldsDict写错了

                              1 Reply Last reply Reply Quote
                              • First post
                                Last post

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