任意细化网格上的不连续 Galerkin 收敛顺序:step-12 deal.ii 教程

计算科学 有限元 收敛 双曲-pde 不连续-galerkin 平流
2021-12-12 05:47:38

我正在学习 DG 方法,为了稍微练习一下,我正在使用 deal.ii 库。特别是,我正在查看step-12,他们在哪里解决

div(βu)=0
u=gD on Γ

对于一个领域β以及流入边界的不连续数据。

为了验证收敛的顺序,我决定构造一个制造的解决方案。

U(x,y)=exsin(y)
用作字段β=(y,x)这与他们拥有的相同,但没有缩放到一个。这样流入边界就和之前一样了,即下边界和右边界。然后方程变为

div(βu)=ex(cos(y)xsin(y)y)
u=U|Γ
正如您在可能的扩展部分中所读到的,他们说

可以证明对于p阶元素,收敛阶为p+12在任意网格上

就我而言p=1所以我应该得到订单32在里面L2规范,但这是我得到的(通过reduction_rate_log2ConvergenceTable课堂上使用)

cycle cells dofs        L2             H1       
    0    64   256 9.776e-04    - 5.471e-02    - 
    1   121   484 6.739e-04 0.54 4.156e-02 0.40 
    2   220   880 4.225e-04 0.67 3.323e-02 0.32 
    3   409  1636 2.138e-04 0.98 2.326e-02 0.51 
    4   757  3028 1.203e-04 0.83 1.720e-02 0.44 
    5  1399  5596 7.136e-05 0.75 1.311e-02 0.39 
    6  2575 10300 3.567e-05 1.00 9.398e-03 0.48 
    7  4699 18796 1.991e-05 0.84 7.059e-03 0.41 
    8  8635 34540 1.037e-05 0.94 5.142e-03 0.46 
    9 15799 63196 5.284e-06 0.97 3.727e-03 0.46 

问:这对吗?我的意思是,这是否符合秩序的理论界限32?

为了确认我的代码的优点,这与第 12 步基本相同,但有明显的修复(即程序集、精确解的定义和缩放比例的变化)β) 这是我通过在全球范围内细化网格所得到的:

cycle cells  dofs        L2             H1

0    64    256 9.776e-04    - 5.471e-02    - 

1   256   1024 2.463e-04 1.99 2.744e-02 1.00 

2  1024   4096 6.180e-05 1.99 1.373e-02 1.00 

3  4096  16384 1.548e-05 2.00 6.871e-03 1.00 

4 16384  65536 3.873e-06 2.00 3.436e-03 1.00 

5 65536 262144 9.686e-07 2.00 1.718e-03 1.00 

L2错误和H1错误收敛正确,如下表所示,所以我认为我的代码实际上没有错误。


编辑:

如您所见,EOC 在H1在一定数量的自由度后下降。我怎样才能证明这一点?

cells  dofs     u_L2_norm      u_H1_norm    
   64    1024 9.679e-08    - 1.223e-05    - 
  256    4096 6.045e-09 4.00 1.532e-06 3.00 
 1024   16384 3.777e-10 4.00 1.918e-07 3.00 
 4096   65536 2.360e-11 4.00 2.556e-08 2.91 
16384  262144 1.475e-12 4.00 9.353e-09 1.45 
65536 1048576 9.528e-14 3.95 8.801e-09 0.09 
1个回答

我假设您正在解决一个二维问题:

您在第一个示例中的改进不是Δx2. 通常,如果您统一精炼,这不会产生问题。如果你看一个元素的数量,这个错误和 EOC 的东西不匹配。我不是deal.ii的专家,但我认为 EOC 例程无法处理除Δx2.

你必须使用类似的东西:(N=元素的数量,ϵ=错误)

EOC=log(ϵ1ϵ2)/log(N1N2)

一个很好的例子,为什么我不是通过黑盒学习计算科学的忠实粉丝。

问候