#include <Element.hpp>
Public Types | |
enum | Type { e_tet, e_hex, e_tri_cohesive, e_quad_cohesive, e_MAX_TYPE } |
enum | fType { e_tri, e_quad, e_MAX_FACE_TYPE } |
enum | MaterialType { e_unset_material = -1 } |
Public Member Functions | |
Element (Type type) | |
~Element () | |
int | getID () const |
void | setID (int theID) |
virtual int | getNumNodes () const =0 |
Node ** | getNodes () |
virtual int | getNumFaces () const =0 |
Face ** | getFaces () |
Type | getElementType () const |
boolean | isCohesive () const |
int | getMaterialType () const |
void | setMaterialType (int mtype) |
virtual void | setFromNodes (Node **thenodes) |
void | replaceNode (Node *node, Node *new_node) |
void | replaceFace (Face *face, Face *new_face) |
virtual void | replaceFaceNode (Node *node, Node *new_node, Face *face) |
virtual double | getMinEdgeLength () |
Static Public Member Functions | |
static Element * | create (int id, Type type) |
static void | setMesh (Mesh *emesh) |
Protected Member Functions | |
virtual void | setFromMyNodes ()=0 |
virtual void | setFaceFromNodes (int num, Node **nodes)=0 |
void | setFace (int num, Face *face) |
Protected Attributes | |
Type | d_eType |
int | d_ID |
Node ** | d_nodes |
Face ** | d_faces |
int | d_materialType |
Static Protected Attributes | |
static Mesh * | s_mesh = 0 |
Friends | |
istream & | operator>> (istream &stream, Element &elem) |
ostream & | operator<< (ostream &stream, Element &elem) |
Definition at line 12 of file Element.hpp.
enum fType |
Enumerator | |
---|---|
e_tri | |
e_quad | |
e_MAX_FACE_TYPE |
Definition at line 23 of file Element.hpp.
enum MaterialType |
Enumerator | |
---|---|
e_unset_material |
Definition at line 29 of file Element.hpp.
enum Type |
Enumerator | |
---|---|
e_tet | |
e_hex | |
e_tri_cohesive | |
e_quad_cohesive | |
e_MAX_TYPE |
Definition at line 15 of file Element.hpp.
Definition at line 17 of file Element.cpp.
~Element | ( | ) |
|
static |
Definition at line 35 of file Element.cpp.
References e_hex, e_quad_cohesive, e_tet, e_tri_cohesive, and setID().
Referenced by operator>>().
|
inline |
|
inline |
Definition at line 106 of file Element.hpp.
References d_faces.
Referenced by TriFace::buildCohesive(), QuadFace::buildCohesive(), Mesh::replaceNode(), and Mesh::write_boundary().
|
inline |
Definition at line 97 of file Element.hpp.
References d_ID.
Referenced by Mesh::write_boundary().
|
inline |
Definition at line 118 of file Element.hpp.
References d_materialType.
Referenced by Mesh::addCohesive().
|
virtual |
Reimplemented in TetElement.
Definition at line 173 of file Element.cpp.
|
inline |
|
pure virtual |
Implemented in TetElement, HexElement, QCoElement, and TCoElement.
Referenced by replaceFace(), replaceNode(), Mesh::replaceNode(), and Mesh::write_boundary().
|
pure virtual |
Implemented in TetElement, HexElement, QCoElement, and TCoElement.
Referenced by operator<<(), operator>>(), replaceNode(), and setFromNodes().
|
inline |
Definition at line 112 of file Element.hpp.
References d_eType, e_quad_cohesive, e_tri_cohesive, FALSE, and TRUE.
Referenced by Mesh::addCohesive(), Node::getSeparateElements(), and Mesh::replaceNode().
Definition at line 155 of file Element.cpp.
References d_faces, getNumFaces(), and i.
Referenced by TriFace::buildCohesive().
Reimplemented in QCoElement, and TCoElement.
Definition at line 168 of file Element.cpp.
Referenced by Mesh::replaceNode().
Definition at line 138 of file Element.cpp.
References Node::addElement(), d_faces, d_nodes, getNumFaces(), getNumNodes(), i, Node::removeElement(), and Face::replaceNode().
Referenced by Mesh::replaceNode().
|
inlineprotected |
Definition at line 127 of file Element.hpp.
References Face::addElement(), d_faces, and face.
Referenced by HexElement::setFaceFromNodes(), TetElement::setFaceFromNodes(), TCoElement::setFaceFromNodes(), and QCoElement::setFaceFromNodes().
|
protectedpure virtual |
Implemented in QCoElement, TCoElement, TetElement, and HexElement.
|
protectedpure virtual |
Implemented in QCoElement, TCoElement, TetElement, and HexElement.
Referenced by operator>>(), and setFromNodes().
|
virtual |
Definition at line 59 of file Element.cpp.
References Node::addElement(), d_nodes, getNumNodes(), i, and setFromMyNodes().
Referenced by HexElement::HexElement(), QCoElement::QCoElement(), TCoElement::TCoElement(), and TetElement::TetElement().
|
inline |
Definition at line 100 of file Element.hpp.
References d_ID.
Referenced by Mesh::addElement(), create(), and Mesh::removeElement().
|
inline |
Definition at line 121 of file Element.hpp.
References d_materialType.
Referenced by Mesh::replaceNode().
|
inlinestatic |
Definition at line 124 of file Element.hpp.
References s_mesh.
Referenced by Mesh::Mesh().
|
friend |
Definition at line 91 of file Element.cpp.
|
friend |
Definition at line 70 of file Element.cpp.
|
protected |
Definition at line 82 of file Element.hpp.
Referenced by getElementType(), isCohesive(), and operator<<().
|
protected |
Definition at line 87 of file Element.hpp.
Referenced by getFaces(), HexElement::HexElement(), QCoElement::QCoElement(), replaceFace(), QCoElement::replaceFaceNode(), TCoElement::replaceFaceNode(), replaceNode(), setFace(), TCoElement::TCoElement(), TetElement::TetElement(), ~Element(), HexElement::~HexElement(), QCoElement::~QCoElement(), TCoElement::~TCoElement(), and TetElement::~TetElement().
|
protected |
Definition at line 84 of file Element.hpp.
Referenced by getID(), operator<<(), and setID().
|
protected |
Definition at line 89 of file Element.hpp.
Referenced by getMaterialType(), operator<<(), operator>>(), and setMaterialType().
|
protected |
Definition at line 86 of file Element.hpp.
Referenced by TetElement::getMinEdgeLength(), getNodes(), HexElement::HexElement(), operator<<(), operator>>(), QCoElement::QCoElement(), TCoElement::replaceFaceNode(), QCoElement::replaceFaceNode(), replaceNode(), HexElement::setFaceFromNodes(), QCoElement::setFaceFromNodes(), HexElement::setFromMyNodes(), TetElement::setFromMyNodes(), TCoElement::setFromMyNodes(), QCoElement::setFromMyNodes(), setFromNodes(), TCoElement::TCoElement(), TetElement::TetElement(), ~Element(), HexElement::~HexElement(), QCoElement::~QCoElement(), TCoElement::~TCoElement(), and TetElement::~TetElement().
|
staticprotected |
Definition at line 91 of file Element.hpp.
Referenced by operator>>(), HexElement::setFaceFromNodes(), TetElement::setFaceFromNodes(), QCoElement::setFaceFromNodes(), TCoElement::setFaceFromNodes(), and setMesh().