CFD中文网

    CFD中文网

    • 登录
    • 搜索
    • 最新

    在pimpleFoam中加入solidparticle,编译错误,请问如何处理?

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

      根据chalmers教程在interFoam的基础上添加solidparticle可以编译通过,但是换成pimpleFoam之后就会报错:

      pimpleFoam.C:99:24: error: 'g' was not declared in this scope
      particles.move(g);
      

      以下个人理解,这里particles是solidParticleCloud类的实例化对象,但是看了solidParticleCloud.H源码,g好像已经声明过了,不知道对不对,请大佬指点一下,谢谢!!!

      public:
       
           // Constructors
       
               //- Construct given mesh
               solidParticleCloud
               (
                   const fvMesh&,
                   const word& cloudName = "defaultCloud",
                   bool readFields = true
               );
       
       
           // Member Functions
       
               // Access
       
                   bool hasWallImpactDistance() const;
       
                   inline const fvMesh& mesh() const;
       
                   inline scalar rhop() const;
                   inline scalar e() const;
                   inline scalar mu() const;
       
       
               // Edit
       
                   //- Move the particles under the influence of the given
                   //  gravitational acceleration
                   void move(const dimensionedVector& g);
      
      1 条回复 最后回复 回复 引用
      • 星
        星星星星晴 最后由 编辑

        interFoam 源码中

        #include "readGravitationalAcceleration.H"
        

        pimpleFoam源码中并没有包含gravitationalAcceleration,也没有这个field
        你是想做VOF+颗粒么?为啥要研究pimpleFoam,pimpleFoam又不是做VOF的。。
        如果做pimpleLPTFoam的话
        https://www.foamacademy.com/wp-content/uploads/2018/03/particles_slides.pdf
        这个教程比较好用

        m.sui20@foxmail.com

        风大仙 1 条回复 最后回复 回复 引用
        • 风大仙
          风大仙 @星星星星晴 最后由 编辑

          @星星星星晴 谢谢您的回复!
          我打算在单相求解器上添加solidparticle实现粒子运动,还不涉及界面问题,所以选了pimpleFoam。
          还有个问题想请教您,假如不考虑粒子的重力,那么该怎么调用粒子运动函数?
          还是这样吗

          particles.move(g);
          
          星 1 条回复 最后回复 回复 引用
          • 星
            星星星星晴 @风大仙 最后由 编辑

            @风大仙 单相问题 不考虑界面的话 可以直接安装gofun的那个教程自己编译一个即可,或者你考虑使用别的已经植入的solver, 如果你要日后还是搞界面 三相的问题的话,那还是基于interFoam做

            如果你是考虑使用pimpleFoam 的 UEq 还有PEq, 你得仔细读读code,看看都需要什么,怎么编译了。

            m.sui20@foxmail.com

            风大仙 1 条回复 最后回复 回复 引用
            • 风大仙
              风大仙 @星星星星晴 最后由 编辑

              @星星星星晴 好的,感谢您的指点!

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