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. jumpCyclic边界条件的问题

jumpCyclic边界条件的问题

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

    94 of file jumpCyclicFvPatchField.C

    template<class Type>
    Foam::tmp<Foam::Field<Type>>
    Foam::jumpCyclicFvPatchField<Type>::patchNeighbourField() const
    {
        const Field<Type>& iField = this->primitiveField();
        const labelUList& nbrFaceCells =
            this->cyclicPatch().neighbFvPatch().faceCells();
    
        tmp<Field<Type>> tpnf(new Field<Type>(this->size()));
        Field<Type>& pnf = tpnf.ref();
    
        Field<Type> jf(this->jump());
        if (!this->cyclicPatch().owner())
        {
            jf *= -1.0;
        }
    
        if (this->doTransform())
        {
            forAll(*this, facei)
            {
                pnf[facei] = transform
                (
                    this->forwardT()[0], iField[nbrFaceCells[facei]]
                ) - jf[facei];
            }
        }
        else
        {
            forAll(*this, facei)
            {
                pnf[facei] = iField[nbrFaceCells[facei]] - jf[facei];
            }
        }
    
        return tpnf;
    }
    

    感觉数学上jump应该是界面两侧物理量的jump,实际被搞成了界面两侧单元物理量的jump。

    这个大家怎么看?

    已婚,勿扰。
    本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

    L 1 条回复 最后回复
  • L 离线
    L 离线
    liuyf
    在 中回复了 程迪 最后由 编辑
    #2

    界面两侧物理量和界面两侧单元物理量 有什么差别?我发现jump的值过大,会造成发散,与fluent里面的porous jump 可能不一样

    程 1 条回复 最后回复
  • 程 离线
    程 离线
    程迪
    在 中回复了 liuyf 最后由 编辑
    #3

    @liuyf
    截面jump是 p(x=0) == p(x=1) + dp
    截面两侧单位jump 是 p(x=0+dx/2) == p(x=1-dx/2) + dp

    边界网格越粗,这个差异应该会越大吧。

    已婚,勿扰。
    本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

    1 条回复 最后回复

  • 登录

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