Open wei3li opened 3 months ago
Can you try to interpolate a FE function in the FE space to see if the interpolation error is zero?
Can you try to interpolate a FE function in the FE space to see if the interpolation error is zero?
Yes, I interpolated the FEM solution into the FE space, and the interpolation error was zero.
Can you try to do the same test with lagrangian elements?
Yes, I interpolated the FEM solution into the FE space, and the interpolation error was zero.
Can you try to interpolate an analytical function which you know is going to be in the FE space into the FE space and see whether the interpolation error is zero?
Can you try to do the same test with lagrangian elements?
Do you mean solving the same Maxwell's equation using Lagrangian elements?
Can you try to interpolate an analytical function which you know is going to be in the FE space into the FE space and see whether the interpolation error is zero?
Yes, the error is zero up to machine precision.
Do you mean solving the same Maxwell's equation using Lagrangian elements?
No. To solve a poisson problem with lagrangian elements, and see whether you have a similar behaviour as with Nedelec (i.e.. higher interpolation errors at the regions where there are jumps in refinement level).
If the interpolation error is zero with functions in FE space, then I am positive the hanging DoF constraints coefficients are computed correctly, so I am not sure if there is anything wrong in the results you are showing.
In these experiments, you are only using a single quadtree in the forest, correct?
Here are the results of a Poisson problem test.
----------------------- Iteration 0 -----------------------
FEM errors: L2 = 0.000246, H1 = 0.012765.
Interpolation errors: L2 = 0.000246, H1 = 0.012766.
Interpolation / FEM: L2 = 1.000962, H1 = 1.000077.
-----------------------------------------------------------
----------------------- Iteration 1 -----------------------
FEM errors: L2 = 0.000218, H1 = 0.011541.
Interpolation errors: L2 = 0.000219, H1 = 0.011575.
Interpolation / FEM: L2 = 1.004337, H1 = 1.002911.
-----------------------------------------------------------
----------------------- Iteration 2 -----------------------
FEM errors: L2 = 0.000166, H1 = 0.009167.
Interpolation errors: L2 = 0.000168, H1 = 0.009228.
Interpolation / FEM: L2 = 1.011550, H1 = 1.006596.
-----------------------------------------------------------
----------------------- Iteration 3 -----------------------
FEM errors: L2 = 0.000111, H1 = 0.006566.
Interpolation errors: L2 = 0.000114, H1 = 0.006671.
Interpolation / FEM: L2 = 1.029868, H1 = 1.016066.
-----------------------------------------------------------
The Lagrangian interpolation seems correct.
If the interpolation error is zero with functions in FE space, then I am positive the hanging DoF constraints coefficients are computed correctly, so I am not sure if there is anything wrong in the results you are showing.
Is Nedelec interpolation on non-conforming mesh something new? It is for sure an issue that the Nedelec interpolation is not curl-conforming.
In these experiments, you are only using a single quadtree in the forest, correct?
Yes. I also tried 4 quadtrees, the results are similar, i.e. the interpolation error is much larger than the FEM error.
ok, I will take a look when I have some time.
Hi @amartinhuertas,
When the mesh is non-conforming and Nedelec elements are used, the error of the
FEFunction
produced by theinterpolate
function is too far away from the FEM solution based on the same mesh with the same order. I have the following MWE:The output of the above script is:
At iteration 0, the mesh is conforming, the curl error of the interpolation is nearly the same as that of the FEM solution. However, at iterations 1-3, the mesh becomes non-conforming, and the curl error of the interpolation is increasingly different from that of the FEM solution. I also have the mesh and the curl error comparison at iteration 3.
Notice that the curl error is really large around the jump of different level of refinement elements.
The interpolation has discontinuity in its curl even though my analytic function is very smooth.