节点型限制器

节点型限制器

此节点型限制器参考自 Kuzmin (2010) [1]研究,其主要通过修正 Barth-Jespersen 限制器,使单元内数值解满足

\[u_e^{min} \le u(\mathbf{x}_i)\le u_e^{max}, \quad \forall i \]

修正后的数值解形式为

\[u_h(\mathbf{x}_i) = u_c + \alpha_e (\nabla u)_ c\cdot(\mathbf{x}_i - \mathbf{x}_c), \quad 0 \le \alpha_c \le 1, \mathbf{x} \in \Omega_e \]

其中\(\alpha_e\)为斜率限制器,其计算公式为

\[\alpha_e = min_i \left\{ \begin{matrix} min\left\{ 1, \frac{u_e^{max} - u_c}{u_i - u_c} \right\}, & u_i - u_c > 0 \cr 1, & u_i - u_c = 0 \cr min\left\{ 1, \frac{u_e^{min} - u_c}{u_i - u_c} \right\}, & u_i - u_c < 0 \cr \end{matrix}\right.\]

这里 \(u_i = u_c + (\nabla u)_ c\cdot(\mathbf{x}_i - \mathbf{x}_c)\) 为未限制过的原始解。

Kuzmin (2010) 主要对 \(u_e^{max}\)\(u_e^{min}\) 的选取做了修正。传统的 BJ 斜率限制器中,\(u_e^{max}\)\(u_e^{min}\) 通常选择 \(\Omega_e\) 的 van Neumann 相邻单元(图中蓝色区域)中最大与最小单元均值。但是在 Kuzmin 的方法中, 针对网格中每个顶点(黑色)都对应一组 \(u_i^{max}\)\(u_i^{min}\) 的值,其包含了所有与顶点 \(\mathbf{x}_i\) 相邻单元中最大与最小均值,即

\[u_i^{max}=max\left\{ u_c, u_i^{max} \right\}, \quad u_i^{min}=min\left\{ u_c, u_i^{min} \right\} \]


  1. KUZMIN D. A vertex-based hierarchical slope limiter for p-adaptive discontinuous Galerkin methods[J]. Journal of Computational and Applied Mathematics, Elsevier B.V., 2010, 233(12): 3077–3085. ↩︎

posted @ 2016-08-30 20:23  li12242  阅读(346)  评论(0编辑  收藏  举报