Finite element computations using tmop meshes #4411
-
Dear all, As an example, I considered a Laplace problem whose (regular) solution is Exact Dirichlet BCs are enforced on the outer boundary (the hole is flux-free in this case, so nothing is prescribed). The approximation order is 2. Two series of meshes are compared:
The results of the convergence study are depicted below:
The only difference that I can spot is that Maybe there is a bug in my finite element code, but I do not see what kind of bug could be triggered by only moving the mid-side nodes of the mesh. I would be interested in your thoughts ? |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 5 replies
-
Hi @tsokar, We'll take a look at this. Could you please send me the mesh files of the Do you optimize the starting mesh and then refine, or do you optimize separately every refinement? In theory, improving the mesh quality wrt certain metric does not guarantee better convergence. And this may be aggravated with curved meshes. But we must take a closer look at the meshes before being certain. |
Beta Was this translation helpful? Give feedback.
-
Thanks a lot for taking time to look at it ! In practice, I optimize each refinement separately. To give you a bigger picture, I am actually working on mesh fitting, but I was able to trace my problem down to mesh optimization only. I would be interested in your experience regarding to the choice of the right metric for a given computation objective. I think I understand how the metric can "filter" some desired mesh features, but your experience would be valuable ! |
Beta Was this translation helpful? Give feedback.
-
Hi @tsokar, I tried the meshes with simple interpolation of a smooth function, and I observed a similar degradation of the rate. Theoretically this is not so surprising, see details in this paper. The relevant takeaway from the paper is that to control the maximum interpolation error, one must limit the high-order derivatives of the geometric mapping, i.e., keep the mesh less curved. The TMOP optimization probably slightly increases the curvature (as the metric does not focus on curvature), which increases the errors. Note that the interpolation bounds in this paper are worst-case theoretical estimates. That is, decreasing curvature would not always lead to better errors. There are many examples where curved meshes lead to better accuracy (e.g. fitting a curved interface). But one must use them appropriately, based on the PDE properties. To guarantee that a mesh optimization procedure improves the solution of a given PDE (that will be solved on the optimized mesh), one should involve the PDE solve in the optimization, i.e., move information both ways (the mesh depends on the PDE solution, which depends on the mesh). We have actually been working on such methods and will publish them soon. BTW, starting with the coarse meshes and refining them gives better interpolation errors, for both |
Beta Was this translation helpful? Give feedback.
-
Hi @tsokar, It moves them because this results in a better total integral of the metric. You can try with other shape metrics, or shape+size metrics like You can also check the displacement-limiting functionality in But as I said before, none of these have any notion of optimal polynomial representation or convergence. We will have methods that address this situation soon. |
Beta Was this translation helpful? Give feedback.
Hi @tsokar,
It moves them because this results in a better total integral of the metric.
You can try with other shape metrics, or shape+size metrics like
TMOP_Metric_007
/TMOP_Metric_009
/TMOP_Metric_094
withIDEAL_SHAPE_EQUAL_SIZE
target. These will produce different meshes.You can also check the displacement-limiting functionality in
TMOP_Integrator::EnableLimiting
.But as I said before, none of these have any notion of optimal polynomial representation or convergence.
We will have methods that address this situation soon.