[dune-fem] Isoparametric finite elements using local functions

Thomas Ranner T.Ranner at leeds.ac.uk
Wed Sep 7 15:27:43 CEST 2016


Dear all,

I am trying to implement as isoparametric finite element method using
DUNE-FEM. The idea I have is to extend the current GeometryGridPart and
use the information from the localFunction to compute geometric
information.

I am aware of implementations specific to higher order Lagrange finite
elements but I am looking for a more general implementation.
I have a very slow implementation but there is something that I am
misunderstanding. (i.e. too slow for a time dependent problem).

The main changes from the previous implementation require changes to the
GeoGeometry class. I was hoping that in the constructor of GeoGeometry
the localFunction method of a coordinates discrete function could be
called to construct the local coordinate representation which could be
used for evaluate and jacobian methods.

This works as expected for the entity geometry but not for intersection
geometries. In this case the localFunction is constructed over
intersection.inside() (and matched using intersection.indexInInside()),
but calling localFunction.evaluate() or .jacobian() leads to
problems. It seems like the entity object no longer exists.

My slow work around is to construct the localFunction during each call
to geometry.integrationElement() etc, which is not very satisfactory.


My questions are:

- has anyone thought of doing this before?
- is there a way to better store this localFunction which doesn't break
  down for intersections?
- does my hope of using localFunction seem entirely stupid?


I am currently using version 2.4 of the core modules and dune-fem. I am
probably happy to share code if anyone are interested.


Thanks in advance,
Tom




More information about the dune-fem mailing list