Good morning deal.ii developers,
I was doing convergence tests with a manufactured solution with simplicial meshes and did not obtain the expected convergence with cubic elements on triangles (FE_SimplexP<2>(3)). I wrote a very simple interpolation convergence test to check: on tetrahedra, all degrees converge with the expected rates in L2, Linf and H1 (semi)norms; on triangles the results are good for P1 and P2 on triangles, but not for P3, where I get first order convergence for L2, Linf and no convergence in H1:
P1 on triangles
Number of dofs: 25
Number of dofs: 81
Number of dofs: 289
Number of dofs: 1089
nElm L2_u Li_u H1_u
32 5.938414e-03 - - 2.425255e-02 - - 1.549249e-01 - -
128 1.498810e-03 3.96 1.99 6.769010e-03 3.58 1.84 7.782930e-02 1.99 0.99
512 3.755853e-04 3.99 2.00 1.780487e-03 3.80 1.93 3.896037e-02 2.00 1.00
2048 9.395142e-05 4.00 2.00 4.561509e-04 3.90 1.96 1.948590e-02 2.00 1.00
P2 on triangles
Number of dofs: 81
Number of dofs: 289
Number of dofs: 1089
Number of dofs: 4225
nElm L2_u Li_u H1_u
32 3.112575e-04 - - 6.997055e-04 - - 1.041667e-02 - -
128 3.890718e-05 8.00 3.00 8.746319e-05 8.00 3.00 2.604167e-03 4.00 2.00
512 4.863398e-06 8.00 3.00 1.093290e-05 8.00 3.00 6.510417e-04 4.00 2.00
2048 6.079247e-07 8.00 3.00 1.366612e-06 8.00 3.00 1.627604e-04 4.00 2.00
P3 on triangles
Number of dofs: 169
Number of dofs: 625
Number of dofs: 2401
Number of dofs: 9409
nElm L2_u Li_u H1_u
32 1.541667e-02 - - 7.120958e-02 - - 5.117887e-01 - -
128 8.815536e-03 1.75
0.81 4.355310e-02 1.64
0.71 5.712863e-01 0.90
-0.16 512 4.690321e-03 1.88
0.91 2.389578e-02 1.82
0.87 6.001976e-01 0.95
-0.07 2048 2.416438e-03 1.94
0.96 1.249422e-02 1.91
0.94 6.144240e-01 0.98
-0.03 P1 on tets
Number of dofs: 125
Number of dofs: 729
Number of dofs: 4913
Number of dofs: 35937
nElm L2_u Li_u H1_u
384 8.095068e-03 - - 6.562605e-02 - - 1.735667e-01 - -
3072 2.289416e-03 3.54 1.82 2.693394e-02 2.44 1.28 9.615581e-02 1.81 0.85
24576 5.896877e-04 3.88 1.96 7.780330e-03 3.46 1.79 4.927053e-02 1.95 0.96
196608 1.485159e-04 3.97 1.99 2.081313e-03 3.74 1.90 2.478494e-02 1.99 0.99
P2 on tets
Number of dofs: 729
Number of dofs: 4913
Number of dofs: 35937
Number of dofs: 274625
nElm L2_u Li_u H1_u
384 1.118739e-03 - - 1.184543e-02 - - 2.361912e-02 - -
3072 1.637572e-04 6.83 2.77 3.376606e-03 3.51 1.81 6.731956e-03 3.51 1.81
24576 2.117353e-05 7.73 2.95 4.535571e-04 7.44 2.90 1.732030e-03 3.89 1.96
196608 2.668408e-06 7.93 2.99 5.866221e-05 7.73 2.95 4.360374e-04 3.97 1.99
P3 on tets
Number of dofs: 2197
Number of dofs: 15625
Number of dofs: 117649
Number of dofs: 912673
nElm L2_u Li_u H1_u
384 1.074553e-04 - - 7.422949e-04 - - 2.346755e-03 - -
3072 8.111057e-06 13.25
3.73 1.300853e-04 5.71
2.51 3.362943e-04 6.98
2.80 24576 5.264880e-07 15.41
3.95 8.130328e-06 16.00
4.00 4.327503e-05 7.77
2.96 196608 3.320390e-08 15.86
3.99 5.081455e-07 16.00
4.00 5.447386e-06 7.94
2.99
Is there something that I'm doing wrong, or is it just a bug somewhere in FE_SimplexP?
I have joined a MWE with the 2D and 3D meshes (in .msh4 format).
Thank you for your help, and thanks a lot for developing the library!
Arthur Bawin