← Back to team overview

dolfin team mailing list archive

Re: suggestion for modifying MeshGeometry

 


On Thu, 2 Apr 2009, Martin Sandve Alnæs wrote:

On Thu, Apr 2, 2009 at 5:36 PM, Shawn Walker <walker@xxxxxxxxxxxxxxx> wrote:

On Thu, 2 Apr 2009, Martin Sandve Alnćs wrote:

On Thu, Apr 2, 2009 at 5:12 PM, Shawn Walker <walker@xxxxxxxxxxxxxxx>
wrote:

Hello all.

I have finally got some time to put in (at least the first stage) the
higher order mesh stuff for triangles
mapped with P2 lagrange elements. Just to remind you, the agreement that
we came up with was this:

1. The local mapping for each element is independent of whatever finite
elements you are using.  Thus, there
should be a completely different description of the mapping.

2. This info will be stored in MeshGeometry with extra data structures.

3. The info to store is (i) all the higher order vertex position data,
and
(ii) the `DoFmap' for your
particular map.  Storing the extra vertex data is just like storing the
usual 3 triangle coordinates.

4. Eventually, for computing the local finite element matrices, there
just
needs to be a short subroutine
that returns the higher order vertex data (for a specific cell) to be
used
by, say, the code generated by
FFC.

Just two minor additional remarks:
- The code generated by FFC won't have access to a subroutine from DOLFIN.
Therefore, this data (for a specific cell) must be placed in the ufc::cell
datastructure which can be extended with additional data fields if needed
and additional numbering conventions for the new local data if needed.

yep.

- The new form language UFL, which will be introduced officially very
soon,
has very basic support for the input side of this by using
Cell("triangle", degree)
instead of "triangle" as input to FiniteElement. Of course, the form
compilers
do not yet support this. If degree is not enough, more variables can
easily
be added there.

Is this written up yet?  How would this effect reading in a mesh?  Right
now, I was assuming that the higher order mesh data would be in the mesh.xml
file.  If there is a better way, I would like to know.

- Shawn

We'll make the first official release any day now.

No effect on the mesh, and nothing you need to worry about.

This only affects the definition of the form, that is the .form files
will be replaced by .ufl files if you're using DOLFIN from C++.
This is the input to FFC, which needs to know that it should
generate code for using the higher order geometry mapping.

Martin

ok. I think for now I will not worry about the mesh changing. The first step is just get the extra data structures for storing it working.

- Shawn

References