Basic class for grid elements. More...
Public Member Functions
|Default constructor. |
|Element (const Element &rhs)|
|Copy constructor. |
|virtual Element &||operator= (const Element &rhs)|
|operator = |
|void||setNumVertices (const int numVertices)|
|Sets the number of vertices in |
|int||getNumVertices () const|
|Gets the number of vertices associated with |
|void||setNumComponents (const int numComponents)|
|Sets the number of components in |
|int||getNumComponents () const|
|Gets the number of components associated with |
|void||setComponent (const int which, const Element &what)|
|Sets the element type for component |
|const Element &||getComponent (const int which) const|
|Gets the element type of the specified component. |
|virtual void||print (ostream &os) const|
|Prints the output on |
Basic class for grid elements.
Class Galeri::grid::Element specifies the interface for a generic 1D, 2D or 3D grid element. This class is a semi-virtual class.
In Galeri/pfem, an element is defined as a geometric object, composed by vertices and components. The former are easy to define; the latter, instead, define the sub-entities of the element, and they are either segments (for 2D elements) or faces (for 3D elements).
The idea is that you can define an object by deriving this class, and set the correct number of vertices and components. You also have to decide the local ID of each of the components. Mixed components are perfectly legal. Since a component is nothing but an Element-derived class, you can recursively assemble components and create the object you need for your discretization.