On Mon, 26 Jan 2009, Kirk, Benjamin (JSC-EG) wrote:

> However, for efficiency it would be nice for these 2d surface
> elements to know the 3d element that created them.  To make that
> happen, I have been considering abusing the notion of parent -
> basically using the -parent pointer to store the (dim+1)-dimensional
> parent, and then making the parent() member return NULL if (a) the
> ptr is NULL as is done now, or (b) the parent and child are of
> different dimensions.
>
> All that is needed is some other method to get access to the
> not-so-conventional parent. Elem::super_dimensional_parent()?

Elem::interior_parent()?

But I'm not sure this is the right design, for a few reasons:

Reusing the parent pointer scares me.

In the future we'll likely want to create meshes of the manifold
between two subdomains, where each element will have two higher
dimensional "parents"; reusing a single parent pointer doesn't work so
well for that.

Ideally a refined N-dimensional mesh should produce a similarly
refined (N-1)-dimensional boundary mesh; the child cells of this mesh
would then have both coarser (N-1)-dimensional parents as well as
interior N-dimensional "parents", and we can't use the same pointer
for both.

We already have a class that I think was designed to associate
arbitrary user information with elements and/or nodes, MeshData.
It's a real shame that this class isn't really supported by any of the
active developers.  Perhaps this is the right opportunity to actually
become familiar with how that class is supposed to work, get it
working properly with newer libMesh features, and write some code that
we can use for regression testing it.
---
Roy

------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
Libmesh-devel mailing list
Libmesh-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to