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. overpimpleDyMFoam +颗粒边界处理

overpimpleDyMFoam +颗粒边界处理

已定时 已固定 已锁定 已移动 OpenFOAM
21 帖子 4 发布者 12.7k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • L 离线
    L 离线
    lys
    在 2022年8月23日 07:52 中回复了 星星星星晴 最后由 编辑
    #11

    @星星星星晴 你说的sourceTerm是颗粒对流体的作用力吗

    星 1 条回复 最后回复 2022年8月23日 08:42
  • 李 离线
    李 离线
    李东岳 管理员
    写于2022年8月23日 08:40 最后由 编辑
    #12

    @lys 在 overpimpleDyMFoam +颗粒边界处理 中说:

    会有部分颗粒进入固体内部

    具体没太细看啊,我插一句,是不是需要看一下你这个颗粒定义在哪套网格上了,如果定义在A网格上,壁面在B网格上,那是不是肯定会发生这个现象。

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

    星 L 2 条回复 最后回复 2022年8月23日 08:45
  • 星 离线
    星 离线
    星星星星晴
    在 2022年8月23日 08:42 中回复了 lys 最后由 编辑
    #13

    @lys 比如ueq里面的 + parcels.SU(U) 这一项,其他的有加么

    // Solve the Momentum equation
    
    MRF.correctBoundaryVelocity(U);
    
    tmp<fvVectorMatrix> tUEqn
    (
        fvm::ddt(rho, U) + fvm::div(phi, U)
      + MRF.DDt(rho, U)
      + turbulence->divDevTau(U)
     ==
        rho()*g
      + parcels.SU(U)
      + fvOptions(rho, U)
    );
    fvVectorMatrix& UEqn = tUEqn.ref();
    
    UEqn.relax();
    
    fvOptions.constrain(UEqn);
    
    if (pimple.momentumPredictor())
    {
        solve(UEqn == -fvc::grad(p));
    
        fvOptions.correct(U);
        K = 0.5*magSqr(U);
    }
    

    游荡

    L 1 条回复 最后回复 2022年8月24日 09:03
  • 星 离线
    星 离线
    星星星星晴
    在 2022年8月23日 08:45 中回复了 李东岳 最后由 编辑
    #14

    @李东岳 正常情况下 cloud里面会有updateCellOccupancy这个方程,会自动更新当前cell中parcel的占用什么的,如果在solver中把parcels.evolve(); 放到mesh.changing之后就应该没事,但是很奇怪,他的parcel会进入空的地方。。

    游荡

    1 条回复 最后回复
  • L 离线
    L 离线
    lys
    在 2022年8月24日 06:00 中回复了 李东岳 最后由 编辑
    #15

    @李东岳 这是重叠网格,按道理讲是可以更新背景网格的流场信息,然后颗粒在更新后的流场信息作用下,是可以实现壁面效应捕捉的。但也有可能,颗粒只是感受到了流场,而没有实际发生壁面碰撞,所以导致颗粒穿透壁面,这是不是意味着overset 方法是不适用颗粒求解的,所以openFOAM-ESI版本下就没有现成的overset求解器+LPT

    1 条回复 最后回复
  • 李 离线
    李 离线
    李东岳 管理员
    写于2022年8月24日 06:44 最后由 编辑
    #16

    你的A网格如果没有壁面,但是壁面定义在网格B上,那拉格朗日栗子同时也定义在A上,那A网格那面不就没有壁面了么。流场的话,重叠网格做了插值处理。栗子,是不是也要做B网格壁面-A网格壁面的映射,然后并反弹处理?

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

    1 条回复 最后回复
  • L 离线
    L 离线
    lys
    在 2022年8月24日 09:03 中回复了 星星星星晴 最后由 编辑
    #17

    @星星星星晴 这项时肯定要加的
    6142cf0d-817f-4049-89b6-61f2eec66290-image.png

    星 1 条回复 最后回复 2022年8月24日 09:51
  • 星 离线
    星 离线
    星星星星晴
    在 2022年8月24日 09:51 中回复了 lys 最后由 编辑
    #18

    @lys 嗯,就是确认一下别拉下什么东西没加就难受了。

    所以说,那些particle 应该是在n−1步时还在网格里,然后网格发生变化,可能就不在网格里了,这部分parcel就没办法算了。

    1. 把parcel.evolve() 放到 bool changed = mesh.update() 前面,让parcel用上一步的旧网格试试看
    2. 另外如果你的Euler time step ΔtE 足够小,就是你每次更新网格的间隔减小,会不会也一定程度上减少这样的发生呢?
    3. 调整动网格或者在parcel部分,判断内部是否有parcel,有parcel就挪他们到wall表面。

    游荡

    1 条回复 最后回复
  • L 离线
    L 离线
    lys
    写于2022年9月9日 14:36 最后由 编辑
    #19

    @星星星星晴

    星 D 2 条回复 最后回复 2022年9月9日 19:06
  • 星 离线
    星 离线
    星星星星晴
    在 2022年9月9日 19:06 中回复了 lys 最后由 编辑
    #20

    @lys ?怎么 有解决么?

    游荡

    1 条回复 最后回复
  • D 离线
    D 离线
    dxl
    在 2023年4月7日 02:26 中回复了 lys 最后由 编辑
    #21

    @lys 你可以看下你的solver中有没有添加storeGlobalPositions这个函数,我对你使用的这个solver不是很了解,拉格朗日是你自己添加进去的吗

    1 条回复 最后回复
2022年8月20日 11:25

20/21

2022年9月9日 19:06

2023年4月7日 02:26
  • 登录

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