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. phiHbyA边界问题

phiHbyA边界问题

已定时 已固定 已锁定 已移动 OpenFOAM
12 帖子 3 发布者 3.7k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • V 离线
    V 离线
    Vortex
    写于 最后由 编辑
    #1
                volScalarField rAU(1.0/UEqn.A());
    
                volVectorField HbyA("HbyA", U);
                HbyA = rAU*UEqn.H();
                surfaceScalarField phiHbyA
                (
                    "phiHbyA",
                    (fvc::interpolate(HbyA) & mesh.Sf())
                   + fvc::interpolate(rAU)*fvc::ddtCorr(U, phi)        
                );
    

    rAU是1/Ap, Ap是矩阵的对角线元素。

    fvm::laplacian(rAU, p) == fvc::div(phiHbyA) 这一步是求解泊松方程,但需要用到phyHbyA的边界值。phiHbyA在两个网格之间的内部面是采用线性插值的interpolate(phiHbyA)这个好理解,但它是如何插值到外部边界上的?
    cfdonline有个同样的讨论,但我还是没弄清楚。https://www.cfd-online.com/Forums/openfoam-programming-development/214351-fvc-interpolate-rau-boundary-faces.html

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

    phi,phiHbyA是通量,通量的边界是固定的,不需要插值

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

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

    @李东岳 李老师您好,我最近也对这个问题感到好奇,看了您的回答,也就是说phiHbyA在边界处直接赋值为边界处的通量phi即可,然后压力泊松方程里还有Ap这一项也要插值到面上,还想请教那么Ap在边界处是如何处理的呢?

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

    Ap是体场,在边界不存在值,对边界不影响

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

    H 1 条回复 最后回复
  • H 离线
    H 离线
    huangyuhui723
    在 中回复了 李东岳 最后由 编辑
    #5

    @李东岳 李老师,那意思是说在如图公式构建压力泊松方程的时候,边界上的Ap并不做出贡献么,公式右侧的外部面求和不用考虑边界面么?我对该过程的理解有限,还希望李老师解答。微信图片_20241217222603.png

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

    Ap在边界处是如何处理的呢?

    http://dyfluid.com/piso.html 方程15,Ap本身是定义在vol上面的但是要插值到面上,就是简单的插值

    边界上的Ap并不做出贡献么

    有贡献,但不是phi那种直接定义出来的贡献,是插值过去的贡献

    Ap是体场,在边界不存在值,对边界不影响

    我冲说一下。Ap是定义在vol上的,是对角线系数,在边界处不存在值。但下一步需要定义Apf,存在边界值(包含通量的贡献)。

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

    H 1 条回复 最后回复
  • H 离线
    H 离线
    huangyuhui723
    在 中回复了 李东岳 最后由 编辑
    #7

    @李东岳 李老师,Ap定义我大概了解了,意思是计算域内部面的Apf是直接插值得到,而实际上Ap本身是对当前vol所有面如图公式求和得到的,微信图片_20241218010708.png ,那么在边界处的Apf也就考虑在边界面处的微信图片_20241218011024.png 和微信图片_20241218011028.png 就行了么。

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

    那么在边界处的Apf也就考虑在边界面处的

    Ap是UEqn.A(),Ap可以理解为一个scalarField,仅在内部点有值,但是为了一致性处理为volScalarField。Ap的boundary不影响计算。

    Apf是fvc::interpolate(UEqn.A()),是Ap的插值,就这么个区别。

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

    H 1 条回复 最后回复
  • H 离线
    H 离线
    huangyuhui723
    在 中回复了 李东岳 最后由 编辑
    #9

    @李东岳 @李东岳 李老师,我可能还是有点绕糊涂了,实际上我是在自己写代码尝试复现有限体积法的simple算法,那么在构建如图压力泊松方程的时候,1ef8f08c-7345-437a-ab1b-2a61ee87cff1-6e5c71c5f3314552b8170ea370719d6.png 我的迷惑点就在于在边界处单元对该项39982015-dc09-48e7-9faf-7954492816c9-1734523901113.png 进行所有面求和时,边界面的Apf该如何处理,是直接不考虑其贡献不加它,还是把其取值为边界处的e4ae810c-9c31-495b-b606-5e5bb9369c6c-1de8b7e14ef6fcd88c350c92562c126.png +49a8e191-74c1-4f15-8326-eadad5a52ded-ab44e1746bff62ec74a5f45012970f9.png ,还是说是其它的处理方法?

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

    Apf还有$\rd t$的贡献,就是http://dyfluid.com/piso.html 方程15

    哦,如果你稳态,那就没有,你写的对

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

    H 1 条回复 最后回复
  • H 离线
    H 离线
    huangyuhui723
    在 中回复了 李东岳 最后由 编辑
    #11

    @李东岳 不好意思,李老师,工作原因回复慢了一些,我目前只在尝试稳态simple方法的实现,那就先只考虑边界面aca51072-24d0-4054-96b5-d1cc3a826c77-1de8b7e14ef6fcd88c350c92562c126.png +6cd630c5-9332-4309-ab49-d6c5ac17f6fc-ab44e1746bff62ec74a5f45012970f9.png 的贡献么,我去修改代码再调试一下,非常感谢!

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

    是的,你试试

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

    1 条回复 最后回复

  • 登录

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