← Back to team overview

ffc team mailing list archive

Re: stable finite element for incompressible nonlinear elasticity?

 


On the other hand, the one with (P1-P1) does compile, but the computation is
not stable. What a life ...

Also, maybe my NeoHookean.form is too complicated, it takes a lot of time (5-10
minutes) to compile the form file.
And the size of NeoHookean.h is 4.8M, so it also takes a lot of time to compile
main.cpp. Is there any way to speed up the compiling?



You need to add stabilization terms for P1-P1 to be a stable stokes element this is why the bilinear form has the delta*dot(grad(q), grad(p)) term in it. I can't really see what is going on in your form but it appears that you are setting your trial and test functions to be the entire mixed space, this seems incorrect behaviour but it really depends on the parts that were left out of the form posted to the list.

Another step is to try a P1-P0 element, this won't be as large (or accurate) as the P2-P1 element but should be more stable than just P1-P1 with no stabilization terms. For a long list of stable stokes elements I recommend Brezzi-Fortin.

When compiling with very large .h files generated from ffc, one speedup I have found is to turn off all compiler optimizations. (in g++ do -O0)


Andy


References