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