CFD中文网

    CFD中文网

    • 登录
    • 搜索
    • 最新

    关于2D激波管验证

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

      请教各位大佬一个问题,我用rhoPimpleFoam算一个2d类似激波管的案例,1m1m,网格5050,中心4*4网格压力为2MP,温度为485.6K,周围网格为1MP,温度为453.1K,速度为0,xy边界为0梯度,z为empty,其余参数与OF自带的激波管算例相同,时间步长取1e-7,我用OF计算出的结果,在1e-5s时压力最大值为1.9e6,师兄用FLUENT计算出的为1.5e6,请问是我的设置哪里有不对的地方吗?望指教!:mianmo:
      FLUENT结果图如下:032eaf3d-8dde-4c91-843e-b83518b47c36-image.png

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

        有粘无粘?有无试过rhoCentralFoam

        CFD高性能服务器 http://dyfluid.com/servers.html

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

          @李东岳 无粘,工质FLUENT那边用的是理想气体,OF这块我还没搞懂要怎么设置所以直接用的算例的physicalProperties,如下,刚用rhoCentralFoam跑了,1e-5s最大压力还是1.9e6:xiezuoye:

          thermoType
          {
              type            hePsiThermo;
              mixture         pureMixture;
              transport       const;
              thermo          hConst;
              equationOfState perfectGas;
              specie          specie;
              energy          sensibleInternalEnergy;
          }
          
          mixture
          {
              specie
              {
                  molWeight       28.9;//28.96;
              }
              thermodynamics
              {
                  Cp              1005;//1004.5;
                  Hf              0;//2.544e+06;
              }
              transport
              {
                  mu              0;
                  Pr              0.7;//1
              }
          }
          

          主要是之前做的1d的激波管符合的很好,2D就出现了这个问题

          1 条回复 最后回复 回复 引用
          • ZY-GONG
            ZY-GONG @ZY-GONG 最后由 编辑

            @zy-gong 在 关于2D激波管验证 中说:

            中心4*4网格压力为2MP,温度为485.6K,周围网格为1MP,温度为453.1K,

            这里说错了,网格温度均为297.5082K

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

              可以出一下线图对比看看。同时你看一下sensibleInternalEnergy;试试别的。以及transport const;是否跟fluent都一致。总之,thermoType这几个参数你可以试试。另外,rhoPimpleFoam应该没考虑$\tau\cdot\bfU$的贡献,不知道fluent那面有没有

              CFD高性能服务器 http://dyfluid.com/servers.html

              ZY-GONG 2 条回复 最后回复 回复 引用
              • ZY-GONG
                ZY-GONG @李东岳 最后由 编辑

                @李东岳 好的谢谢李老师,我再仔细检查下,另外请问我现在打开paraview时候,总会提示个

                Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
                

                但似乎不影响使用,我用的是v10版本,ubuntu是2204,然后paraFoam也安装不上:136:

                ZY-GONG 1 条回复 最后回复 回复 引用
                • ZY-GONG
                  ZY-GONG @ZY-GONG 最后由 编辑

                  Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
                  

                  这似乎是啥通信协议的问题,就不打扰您了

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

                    @李东岳 :135: 不好意思,李老师,再打扰您一下,我还有一个问题,我目前使用的是v10版本的multiphaseEulerFoam,我在dragModel里可以通过interface_.dispersed().d()这种来调用直径参数,现在我想在求解器的.c程序里调用它,应该用什么方式呢
                    我注意到您再小代码里提到过以下代码

                    meanDiameter
                        {
                            type            coded;
                            libs            ("libutilityFunctionObjects.so");
                            name            error;
                        
                            codeExecute
                            #{
                                const volScalarField& d =
                                    mesh().lookupObject<volScalarField>("d.alpha.oil");
                    
                                scalar d32 = d.weightedAverage(mesh().V()).value();
                        
                                if (Pstream::master())
                                {
                                    std::ofstream file;
                                    file.open ("d32", std::ofstream::out | std::ofstream::app);
                                    file << mesh().time().timeName() << " " << d32 << "\n";
                                    file.close();
                                }
                            #};
                        }
                    

                    这段我是否能用呢

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