Skip to content
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
CFD中文网

CFD中文网

  1. CFD中文网
  2. OpenFOAM
  3. 关于拉格朗日求解器的编译问题

关于拉格朗日求解器的编译问题

已定时 已固定 已锁定 已移动 OpenFOAM
3 帖子 2 发布者 1.2k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • Y 离线
    Y 离线
    youhaoyu
    写于 最后由 编辑
    #1

    最近在加入气泡长大方程,修改了KinematicParcel.H的一系列源代码,编译源代码时候很多warn,但是编译成功了,在编译求解器时候出现以下问题,我没看懂

    /home/zly/OpenFOAM/OpenFOAM-3.0.0/src/lagrangian/intermediate/lnInclude/KinematicParcelI.H:105:12: error: expression list treated as compound expression in mem-initializer [-fpermissive]
         Pc_(0.0)   //- myadd
                ^
    /home/zly/OpenFOAM/OpenFOAM-3.0.0/src/lagrangian/intermediate/lnInclude/KinematicParcelI.H:105:12: warning: left operand of comma operator has no effect [-Wunused-value]
    

    我的这个KinematicParcelI.H源代码该地方如下:

    template<class ParcelType>
    inline Foam::KinematicParcel<ParcelType>::KinematicParcel
    (
        const polyMesh& owner,
        const vector& position,
        const label cellI,
        const label tetFaceI,
        const label tetPtI
    )
    :
        ParcelType(owner, position, cellI, tetFaceI, tetPtI),
        active_(true),
        typeId_(-1),
        nParticle_(0),
        d_(0.0),
        dTarget_(0.0),
        U_(vector::zero),
        rho_(0.0),
        age_(0.0),
        tTurb_(0.0),
        dRt_(0.0),      //- myadd
        Ro_(0,0),    //- myadd
        pgo_(0.0),   //- myadd
        UTurb_(vector::zero),
        rhoc_(0.0),
        Uc_(vector::zero),
        muc_(0.0),
        Pc_(0.0)   //- myadd
    {}
    

    在我修改之前他源代码是这个样子

    template<class ParcelType>
    inline Foam::KinematicParcel<ParcelType>::KinematicParcel
    (
        const polyMesh& owner,
        const vector& position,
        const label cellI,
        const label tetFaceI,
        const label tetPtI
    )
    :
        ParcelType(owner, position, cellI, tetFaceI, tetPtI),
        active_(true),
        typeId_(-1),
        nParticle_(0),
        d_(0.0),
        dTarget_(0.0),
        U_(vector::zero),
        rho_(0.0),
        age_(0.0),
        tTurb_(0.0),
        UTurb_(vector::zero),
        rhoc_(0.0),
        Uc_(vector::zero),
        muc_(0.0)
    {}
    

    我没看懂编译求解器报错的原因是什么,求大佬指导(我尝试改过我//myadd的添加顺序,都是最后一个部分原因,不过那个地方我看了源代码,是没有逗号的)

    1 条回复 最后回复
  • 李东岳李 离线
    李东岳李 离线
    李东岳 管理员
    写于 最后由 编辑
    #2

    你加的那些私有成员,声明了么

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    Y 1 条回复 最后回复
  • Y 离线
    Y 离线
    youhaoyu
    在 中回复了 李东岳 最后由 编辑
    #3

    你加的那些私有成员,声明了么

    @李东岳 我在KinematicParcel.H文件,以及这个文件的前面,我都对我新加变量声明了,不然不声明这些东西源代码都无法进行编译,会有很多error。(目前只不过编译时候有一些warning,连着源代码以前自带的一些东西都在warning)。
    目前这个问题是我开始编译求解器时候,求解器识别源代码时候出现的情况。

    我再看看我代码声明问题吧,我也不知道和这个后没有关系

    另:之前我代码是这样

    template<class ParcelType>
    inline Foam::KinematicParcel<ParcelType>::KinematicParcel
    (
        const polyMesh& owner,
        const vector& position,
        const label cellI,
        const label tetFaceI,
        const label tetPtI
    )
    :
        ParcelType(owner, position, cellI, tetFaceI, tetPtI),
        active_(true),
        typeId_(-1),
        nParticle_(0),
        d_(0.0),
        dTarget_(0.0),
        U_(vector::zero),
        rho_(0.0),
        age_(0.0),
        tTurb_(0.0),
        dRt_(0.0),      //- myadd
        Ro_(0,0),    //- myadd
        pgo_(0.0),   //- myadd
        Pc_(0.0),   //- myadd
        UTurb_(vector::zero),
        rhoc_(0.0),
        Uc_(vector::zero),
        muc_(0.0)
       
    {}
    

    他求解器会报错

    /home/zly/OpenFOAM/OpenFOAM-3.0.0/src/lagrangian/intermediate/lnInclude/KinematicParcelI.H:105:12: error: expression list treated as compound expression in mem-initializer [-fpermissive]
        muc_(0.0)
    

    看起来只报错最后一个地方,我也不知道为什么。这些代码的声明和修改,一部分是我看网上的一篇资料修改,另一部分是我参考着原始代码格式,进行改写。

    1 条回复 最后回复

  • 登录

  • 登录或注册以进行搜索。
  • 第一个帖子
    最后一个帖子
0
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]