#include <Element.h>
Public Types | |
typedef iArray::const_iterator | const_iterator |
typedef iArray::iterator | iterator |
Public Member Functions | |
Element (int id=0, int part=0, BasisType bt=kNONE) | |
Element (int id, int part, BasisType bt, const iArray &nids) | |
Element (int id, int part, Basis *bt, const iArray &nids) | |
Element (const Element &be) | |
~Element () | |
Element::const_iterator | begin () const |
Element::iterator | begin () |
Element::const_iterator | end () const |
Element::iterator | end () |
int | operator[] (int i) const |
int | NodeId (int i) const |
BasisType | Type () const |
BasisShape | Shape () const |
int | NumNodes () const |
int | NumEdges () const |
int | NumFaces () const |
int | Dimension () const |
int | Order () const |
void | ParentCoord (Array< Point > &pts) const |
Point | Centroid () const |
void | NumNodesOnFaces (iArray &nn_face) const |
void | NumNodesOnEdges (iArray &nn_edge) const |
void | NodesOnFace (int f, iArray &face_nodeids) const |
void | NodesOnEdge (int e, iArray &edge_nodeids) const |
void | FaceBasisType (Array< BasisType > &face_basis) const |
void | EdgeBasisType (Array< BasisType > &edge_basis) const |
void | Quadrature (int p, QuadratureRule &quad) const |
void | Na (const Point &p, Array< Numeric > &shapefunct) const |
void | Na (Array< Numeric > &shapefunct) const |
void | DNa (const Point &p, dense_matrix< Numeric > &shapefunct) const |
void | DNa (dense_matrix< Numeric > &shapefunct) const |
int | Id () const |
int | PartId () const |
const iArray & | Connectivity () const |
const Basis * | BasisPtr () const |
Element & | CopyElement (const Element &elem) |
Element & | operator= (const Element &conn1) |
Protected Member Functions | |
void | SetBasis (BasisType bt) |
Protected Attributes | |
int | eid |
int | pid |
iArray | fConn |
Basis * | fBasis |
bool | fBasisLocal |
Definition at line 34 of file Element.h.
basso::Element::Element | ( | int | id = 0 , |
|
int | part = 0 , |
|||
BasisType | bt = kNONE | |||
) | [inline] |
constructor from a BasisType. This makes a local insatiation of the Basis
Definition at line 49 of file Element.h.
References eid, fBasisLocal, pid, and SetBasis().
basso::Element::Element | ( | int | id, | |
int | part, | |||
BasisType | bt, | |||
const iArray & | nids | |||
) | [inline] |
constructor from a BasisType. This makes a local insatiation of the Basis
id | Element id | |
part | Part id for the element | |
bt | Basis type for the element | |
nids | an array of node ids |
Definition at line 58 of file Element.h.
References eid, fBasisLocal, pid, and SetBasis().
basso::Element::Element | ( | int | id, | |
int | part, | |||
Basis * | bt, | |||
const iArray & | nids | |||
) | [inline] |
constructor from a class derived from the virtual base class Basis. This constructor does NOT create a local insatiation of the Basis. The derived entity
bt | must exist. | |
id | Element id | |
part | Part id for the element | |
bt | Basis pointer to the Basis to be used for the element | |
nids | an array of node ids |
Definition at line 69 of file Element.h.
References eid, fBasis, fBasisLocal, and pid.
basso::Element::Element | ( | const Element & | be | ) | [inline] |
copy constructor
Definition at line 73 of file Element.h.
References CopyElement(), and fBasisLocal.
basso::Element::~Element | ( | ) | [inline] |
destructor, deletes Basis if local
Definition at line 76 of file Element.h.
References fBasis, and fBasisLocal.
int basso::Element::operator[] | ( | int | i | ) | const [inline] |
int basso::Element::NodeId | ( | int | i | ) | const [inline] |
returns the global node id of the
i | node in the element connectivity. |
Definition at line 91 of file Element.h.
References fConn.
Referenced by operator[]().
BasisType basso::Element::Type | ( | ) | const [inline] |
Returns the basis type
Definition at line 102 of file Element.h.
References fBasis, and basso::Basis::Type().
Referenced by basso::WriteEnsight::ElementName(), basso::operator<<(), and basso::WriteEnsight::WriteElement().
BasisShape basso::Element::Shape | ( | ) | const [inline] |
Returns the element shape
Definition at line 105 of file Element.h.
References fBasis, and basso::Basis::Shape().
int basso::Element::NumNodes | ( | ) | const [inline] |
Returns the number of nodes in the element
Definition at line 108 of file Element.h.
References fBasis, and basso::Basis::NumNodes().
Referenced by basso::operator<<().
int basso::Element::NumEdges | ( | ) | const [inline] |
Returns the number of edges in the element
Definition at line 111 of file Element.h.
References fBasis, and basso::Basis::NumEdges().
int basso::Element::NumFaces | ( | ) | const [inline] |
Returns the number of faces in the element
Definition at line 114 of file Element.h.
References fBasis, and basso::Basis::NumFaces().
int basso::Element::Dimension | ( | ) | const [inline] |
Returns the dimension of the parent element space
Definition at line 117 of file Element.h.
References basso::Basis::Dimension(), and fBasis.
int basso::Element::Order | ( | ) | const [inline] |
Returns the polynomial order of the basis
Definition at line 120 of file Element.h.
References fBasis, and basso::Basis::Order().
void basso::Element::ParentCoord | ( | Array< Point > & | pts | ) | const [inline] |
Returns the parent element coordinates
Definition at line 123 of file Element.h.
References fBasis, and basso::Basis::ParentCoord().
Point basso::Element::Centroid | ( | ) | const [inline] |
Returns the point in parent element coordinates of the element centroid
Definition at line 126 of file Element.h.
References basso::Basis::Centroid(), and fBasis.
void basso::Element::NumNodesOnFaces | ( | iArray & | nn_face | ) | const [inline] |
Returns the number of nodes on the element faces given in canonical order
Definition at line 129 of file Element.h.
References fBasis, and basso::Basis::NumNodesOnFaces().
void basso::Element::NumNodesOnEdges | ( | iArray & | nn_edge | ) | const [inline] |
Returns the number of nodes on the element edges given in canonical order
Definition at line 133 of file Element.h.
References fBasis, and basso::Basis::NumNodesOnEdges().
void basso::Element::NodesOnFace | ( | int | f, | |
iArray & | face_nodeids | |||
) | const [inline] |
Returns the local node numbers of the nodes on face f
f | The face id |
Definition at line 138 of file Element.h.
References fBasis, and basso::Basis::NodesOnFace().
void basso::Element::NodesOnEdge | ( | int | e, | |
iArray & | edge_nodeids | |||
) | const [inline] |
Returns the local node ids of the nodes on the edge e given in cononical order
Definition at line 141 of file Element.h.
References fBasis, and basso::Basis::NodesOnEdge().
void basso::Element::FaceBasisType | ( | Array< BasisType > & | face_basis | ) | const [inline] |
return geometry of each face in canonical order
Definition at line 144 of file Element.h.
References basso::Basis::FaceBasisType(), and fBasis.
void basso::Element::EdgeBasisType | ( | Array< BasisType > & | edge_basis | ) | const [inline] |
return geometry of each edge in canonical order
Definition at line 147 of file Element.h.
References basso::Basis::EdgeBasisType(), and fBasis.
void basso::Element::Quadrature | ( | int | p, | |
QuadratureRule & | quad | |||
) | const [inline] |
Compute the quadrature rule to integrate on the Basis ooa polynomial function of order p
Definition at line 150 of file Element.h.
References fBasis, and basso::Basis::Quadrature().
void basso::Element::Na | ( | const Point & | p, | |
Array< Numeric > & | shapefunct | |||
) | const [inline] |
returns shape function at the point p
p | The point in the parent coordinate space at which the shape function is to be evaluated |
Definition at line 155 of file Element.h.
References fBasis, and basso::Basis::Na().
void basso::Element::Na | ( | Array< Numeric > & | shapefunct | ) | const [inline] |
returns shape function at the element centroid
Definition at line 158 of file Element.h.
References fBasis, and basso::Basis::Na().
void basso::Element::DNa | ( | const Point & | p, | |
dense_matrix< Numeric > & | shapefunct | |||
) | const [inline] |
Compute the gradient of the shape functions w.r.t. the element space at the point p. The derivative is oriented column-wise and the shape funciton id row-wise.
p | The point in the parent coordinate space at which the shape function is to be evaluated. |
Definition at line 164 of file Element.h.
References basso::Basis::DNa(), and fBasis.
void basso::Element::DNa | ( | dense_matrix< Numeric > & | shapefunct | ) | const [inline] |
Compute the gradient of the shape functions w.r.t. the element space at the element centroid
Definition at line 167 of file Element.h.
References basso::Basis::DNa(), and fBasis.
int basso::Element::Id | ( | ) | const [inline] |
returns the element id number, this is non-volitile
Definition at line 170 of file Element.h.
References eid.
Referenced by basso::operator<<().
int basso::Element::PartId | ( | ) | const [inline] |
returns the element part id number, this is non-volitile
Definition at line 173 of file Element.h.
References pid.
Referenced by basso::operator<<().
const iArray& basso::Element::Connectivity | ( | ) | const [inline] |
returns the element connectivity, this is non-volitile reference
Definition at line 176 of file Element.h.
References fConn.
Referenced by basso::WriteEnsight::WriteElement().
const Basis* basso::Element::BasisPtr | ( | ) | const [inline] |
copies the Basic Element
elem |
Definition at line 182 of file Element.h.
References eid, fBasis, fBasisLocal, fConn, pid, SetBasis(), and basso::Basis::Type().
Referenced by Element(), and operator=().
void basso::Element::SetBasis | ( | BasisType | bt | ) | [protected] |
Sets the Basis pointer fBasis depending on the BasisType
bt | given. |
Definition at line 214 of file Element.h.
References fBasis, fBasisLocal, basso::kHEXA8, basso::kLINE2, basso::kLINE3, basso::kQUAD4, basso::kQUAD8, basso::kTETRA10, basso::kTETRA4, basso::kTRIA3, and basso::kTRIA6.
Referenced by CopyElement(), and Element().