### Are there any gradient recovery techniques available in fenics

105
views
0
6 months ago by
There are some techniques to recover gradient of a finite element solution to better accuracy. E.g., for P1 solutions, one can average element gradients to the nodes, which makes the gradient to be accurate to O(h^2), same as the solution. How would one implement this in fenics ?

Are any such methods already implemented in fenics, so that one can use them by calling a function ? These methods dont have a FE flavour in the sense that they are not standard variational formulations. So one has to write some non-trivial code.

I am interested in recovering gradient of solutions of degree > 1. This paper has a technique

ZHIMIN ZHANG AND AHMED NAGA
A NEW FINITE ELEMENT GRADIENT RECOVERY METHOD: SUPERCONVERGENCE PROPERTY
SIAM J. SCI. COMPUT., Vol. 26, No. 4, pp. 1192–1213

but the algorithm is quite involved and does not fit into a variational formulation.
Community: FEniCS Project
Could you make your question more precise. Research the methods and then ask the question of 'how can I use method X in FEniCS.
written 6 months ago by Garth Wells
I have already mentioned the simplest method in my question for P1 case.
written 6 months ago by Praveen C
Re-phrase your question then and make it precise.
written 6 months ago by Garth Wells

1
6 months ago by
Quick answer is no, but I see two options for your problem:

-) Project/Interpolate the gradient into a smoother FEM space. Cons, no theoretical guarantee in general (AFAIK)
-) Perform a mixed scheme, gives you best best approximation of gradient (if your mixed unkown is the gradient!) and a guaranteed rate of convergence. The exponent will depend on the smoothness of your data.

Best regards
Thanks a lot. I am currently doing a projection but this does not improve the accuracy of the gradient. The more sophisticated recovery techniques give a gradient that is as accurate (in terms of convergence rates) as the solution itself. I am not able to use a mixed scheme in my application.
written 6 months ago by Praveen C