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. 用DPMFoam求解周期边界的模型时,fvOptions不起作用?

用DPMFoam求解周期边界的模型时,fvOptions不起作用?

已定时 已固定 已锁定 已移动 OpenFOAM
4 帖子 2 发布者 4.0k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • Z 离线
    Z 离线
    zhangxc0223
    写于2019年1月9日 08:59 最后由 编辑
    #1

    在cyclic的模型中,想在DPMFoam求解的速度场(U.air)上添加一个源项momentumSource来维持恒定的总体速度,于是在fvOptions文件中加入了如下代码,

    momentumSource
    {
        type            meanVelocityForce;
        active          true;
    
        meanVelocityForceCoeffs
        {
            selectionMode   all;
    
            fields          (U.air);
            Ubar            (0 -10 0);
        }
    }
    

    但是当运行计算的时候,出现如下提示说该源项并不起作用,而且流场的总体速度在不断的递减,请问有什么办法解决呀?

    FOAM Warning : 
        From function virtual void Foam::fv::option::checkApplied() const
        in file cfdTools/general/fvOptions/fvOption.C at line 118
        Source momentumSource defined for field U.air but never used
    

    在此先谢谢各位了!

    1 条回复 最后回复
  • 李 离线
    李 离线
    李东岳 管理员
    写于2019年1月10日 01:01 最后由 编辑
    #2

    DPMFoam不支持fvOptions,不过你可以添加一下

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

    Z 1 条回复 最后回复 2019年1月10日 03:55
  • Z 离线
    Z 离线
    zhangxc0223
    在 2019年1月10日 03:55 中回复了 李东岳 最后由 编辑
    #3

    @东岳 我查看了pimpleFoam的UEqn.H文件,确实有fvOptions,而DPMFoam的UcEqn.H文件中没有。我尝试在 ==的公式之后添加一个 + fvOptions(U),如下所示,不知道这样添加在逻辑上对不对?

    fvVectorMatrix UcEqn
    (
        fvm::ddt(alphac, Uc) + fvm::div(alphaPhic, Uc)
      - fvm::Sp(fvc::ddt(alphac) + fvc::div(alphaPhic), Uc)
      + continuousPhaseTurbulence->divDevRhoReff(Uc)
     ==
        (1.0/rhoc)*cloudSU
        + fvOptions(Uc)
    );
    
    UcEqn.relax();
    
    volScalarField rAUc(1.0/UcEqn.A());
    surfaceScalarField rAUcf("Dp", fvc::interpolate(rAUc));
    
    surfaceScalarField phicForces
    (
       fvc::flux(rAUc*cloudVolSUSu/rhoc) + rAUcf*(g & mesh.Sf())
    );
    
    if (pimple.momentumPredictor())
    {
        solve
        (
            UcEqn
         ==
            fvc::reconstruct
            (
                phicForces/rAUcf - fvc::snGrad(p)*mesh.magSf()
            )
        );
    }
    
    

    而且编译DPMFoam的时候报错说没有声明,请问东岳老师还应该在哪里声明这个fvOptions?

    UcEqn.H: In function 'int main(int, char**)':
    UcEqn.H:7:38: error: 'fvOptions' was not declared in this scope
         (1.0/rhoc)*cloudSU + fvOptions(Uc)
    
    1 条回复 最后回复
  • 李 离线
    李 离线
    李东岳 管理员
    写于2020年4月17日 21:56 最后由 李东岳 编辑 2020年4月18日 05:56
    #4

    应该在头文件中包含

    #include "fvOptions.H"
    

    不过拉格朗日求解器不能处理cyclic边界,因此你这么做 :135:

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

    1 条回复 最后回复
2019年1月9日 08:59

3/4

2019年1月10日 03:55

2020年4月17日 21:56
  • 登录

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