idaholab/moose — pull request #3113 by bwspenc (2014-05-09 20:54:40+00:00)
Title: Add methods to determine whether node or element is on boundary

This adds two variants of MooseMesh::isBoundaryElem() and one variant of MooseMesh::isBoundaryNode().

I changed the _bnd_node_ids data structure from a set to a map of sets, and made a similar data structure for the boundary element ids. This makes it easier to determine whether a node/element is on a specified boundary.

It seems a little ugly how we're sort of duplicating things in the _bnd_node_ids and _node_set_nodes data structures. One of them holds sets of ids, and the other holds vectors of BndNode*. The ids are in a set so that it's easier to search through it to see if the id exists, and I assume that _node_set_nodes stores a vector of Elem* because that's a better format for whatever calls getNodeList() to receive them in. Maybe this is unavoidable, but please comment if there's a better way to do this.