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. Algorithm
  3. Rhie-Chow插值有没有对应的连续的微分方程/积分方程?

Rhie-Chow插值有没有对应的连续的微分方程/积分方程?

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

    不知道RC在在网格和时间步趋于0的时候实际逼近的是哪个PDE。

    RC需要使用U方程的系数,那个系数在OF内用A()获取。

    我从来没管过RC插值还会出现棋盘压力的问题,因为我在算稳态的时候不会用那么小的松弛。

    1 条回复 最后回复
  • 赵 离线
    赵 离线
    赵一铭
    写于 最后由 编辑
    #13

    我的意思是当网格和时间步趋于0的时候,求解器整体所逼近的PDE,如果这个PDE不是N-S方程,那么理论上是会有问题的。

    是原始的PDE。至少从松弛来看,人为添加松弛,就是人为的操纵了。如果不添加松弛,使用RC和原始NS方程一样。

    程 1 条回复 最后回复
  • 程 离线
    程 离线
    程迪
    在 中回复了 赵一铭 最后由 编辑
    #14

    @赵一铭

    必然不是,松弛在非RC插值时是对的,因为收敛之后的结果是和松弛因子无关的。但是在RC插值时就有问题了。尽管有改进的插值证明结果和松弛因子无关,但是相容性怎么样就不知道了。。。

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

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

    越来越复杂了。

    可否认为Rhie-Chow是用额外的3阶项(对压力方程式4阶项)来平滑掉压力波动的,因为是3阶项,所以不会影响FVM的二阶及以下的空间精度。但是这样的话R-C插值算激波绝对是有问题的,激波的FFT展开后频率很宽,微分高阶项比低阶项大,这玩意儿搞插值还是会抖啊。

    关于黑体字书上确实这么解释的。同为网格压力棋格子分布很明显就可以看出来,考虑一维度情况并且方程左边不做处理:
    \begin{equation}
    f(u)_P=\frac{dp}{dx}=p_e-p_w=\frac{p_E+p_P}{2}-\frac{p_P+p_W}{2}=\frac{p_E-p_W}{2}
    \end{equation}
    可见关于$u_P$的离散后的方程不包含$p_P$,但是却和$p_W,p_E$联系起来了。这就是棋格子分布的产生。不管什么插值,都是要在$u_P$的离散方程添加$p_P$的影响。

    不太明白,RC插值和那个A,H算子是个什么关系?A, H 算子是simple/piso算法这个层次里用到的东西还是RC差值实现的一个技巧?

    UEqn.A()和UEqn.H()是和SIMPLE以及SIMPLEC有关的,考虑SIMPLE,UEqn.A()和UEqn.H()就是离散后压力方程的对角线系数以及临点的影响。可能说的不是很精准但是大体是这个意思。SIMPLEC算法需要重写UEqn.H()。这部分太复杂了并且感兴趣的人很少。

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

    程 2 条回复 最后回复
  • H 离线
    H 离线
    Him
    写于 最后由 编辑
    #16

    也可以用二阶算激波。

    1 条回复 最后回复
  • 程 离线
    程 离线
    程迪
    在 中回复了 李东岳 最后由 编辑
    #17

    @李东岳

    额~啥玩意是临点?

    而且我还是没搞明白为啥不可压缩流要求压力修正方程(pressure correction equation)而不是压力泊松方程(pressure Poison equation)呢?

    按照Moukalled书中关于压力-速度耦合问题的线性代数矩阵解释,问题在于压力变量的对角线项为0,所以称为鞍点问题,得用Gauge-Uzawa method,或者叫Uzawa迭代去求解。

    但是如果用压力泊松方程(pressure Poison equation)的话,对角线项应该不是0啊。

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

    1 条回复 最后回复
  • H 离线
    H 离线
    Him
    写于 最后由 Him 编辑
    #18
    1. 不可压缩流既可以算压力修正方程(pressure correction equation),e.g. SIMPLE - semi-implicit method with pressure-link equation,也可以算压力泊松方程(pressure Poison equation), e.g., PISO - pressure implicit with splitting of operator.

    2. 可压缩流既可以算压力修正方程(pressure correction equation),e.g. SIMPLE - semi-implicit method with pressure-link equation,也可以算压力泊松方程(pressure Poison equation), e.g., PISO - pressure implicit with splitting of operator.

    以上两点都是隐式压力更新,并且压力矩阵的残差在很大程度上控制了质量守恒。算SIMPLE跟PISO只是两个不同的保证质量守恒的方式而已。

    那个临点的说法,把很简单的问题复杂化了,已经脱离了Rhie-Chow插值的话题。

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

    @Him

    我看到cfd-online的wiki中的PISO算法是https://www.cfd-online.com/Wiki/PISO_algorithm_-_Pressure_Implicit_with_Split_Operator
    算的修正方程而不是压力泊松方程。

    修正方程是离散的,压力泊松方程是个PDE,可以进行额外的离散求解呀。

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

    1 条回复 最后回复
  • 程 离线
    程 离线
    程迪
    在 中回复了 李东岳 最后由 编辑
    #20

    @李东岳

    我有一点搞复杂了,我以为RC插值和压力-速度耦合算法是放在一起考虑的。因为OF有一定误导性。实际上二者是相对独立的。RC插值是在速度插值中带了一点儿高阶压力导数项。而SIMPLE之类的算法是用于在分离求解器中解决压力-速度耦合的鞍点问题的。

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

    1 条回复 最后回复
  • H 离线
    H 离线
    Him
    写于 最后由 编辑
    #21

    但是RC插值没有离散,因为它是显式计算源项 -- “速度插值+高阶压力导数项”。

    1 条回复 最后回复

  • 登录

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