hp3D::BuildDofsBase Class Referenceabstract
Responsible to build the degrees of freedom in a space. More...
#include <buildDofsBase.hh>
Public Member Functions | |
BuildDofsBase () | |
Default constructor. More... | |
BuildDofsBase (Space &spc) | |
Constructor. More... | |
virtual BuildDofsBase * | clone (Space *spc=0) const =0 |
Virtual copy constructor with a twist. More... | |
virtual void | operator() (concepts::Hexahedron &cntr, concepts::TColumn< Real > *&T1)=0 |
Builds the degrees of freedom. More... | |
Space * | space () |
Returns the space. More... | |
Protected Member Functions | |
void | computePmax_ (const concepts::Hexahedron &cntr, ushort Pmax[3]) const |
Computes maximal polynomial Pmax degree on topological objects adjacent to cntr that contributes directly to a global degree of freedom (returned in tensor form) More... | |
concepts::AdaptiveControl & | ctrl0_ (uint idx) |
Returns vertex tag of vertex with key idx . More... | |
concepts::AdaptiveControlP< 1 > & | ctrl1_ (uint idx) |
Returns edge tag of edge with key idx . More... | |
concepts::AdaptiveControlP< 2 > & | ctrl2_ (uint idx) |
Returns face tag of face with key idx . More... | |
concepts::AdaptiveControlP< 3 > & | ctrl3_ (uint idx) |
Returns cell tag of cell with key idx . More... | |
void | deactivate_ (const concepts::Connector0 &vtx) |
Deactivates the children of the vertex vtx . More... | |
void | deactivate_ (const concepts::Connector1 &edg) |
Deactivates the children of the edge edg (including the middle vertex). More... | |
void | deactivate_ (const concepts::Connector2 &face) |
Deactivates the children of face (including the new edges and vertices). More... | |
uint & | dim_ () |
Returns a reference to the dimension of the space. More... | |
std::map< uint, concepts::EdgeData >::const_iterator | edgeListEnd () const |
Returns the end of the list with edge data. More... | |
std::map< uint, concepts::EdgeData >::const_iterator | edgeListFind (uint idx) const |
Returns the iterator to the edge data of the edge with key idx . More... | |
std::map< uint, concepts::FaceData >::const_iterator | faceListEnd () const |
Returns the end of the list with face data. More... | |
std::map< uint, concepts::FaceData >::const_iterator | faceListFind (uint idx) const |
Returns the iterator to the face data of the face with key idx . More... | |
void | getPmax_ (const concepts::Hexahedron &cntr, ushort Pmax[3]) const |
Gets the polynomial degrees Pmax of the shape function on cntr (returned in tensor form) More... | |
std::map< uint, concepts::VertexData >::const_iterator | vertexListEnd () const |
Returns the end of the list with vertex data. More... | |
std::map< uint, concepts::VertexData >::const_iterator | vertexListFind (uint idx) const |
Returns the iterator to the vertex data of the vertex with key idx . More... | |
Protected Attributes | |
Space * | spc_ |
Space to build the vertex degrees of freedom from. More... | |
Detailed Description
Responsible to build the degrees of freedom in a space.
A call to the application operator builds the T columns for a given hexahedron.
This is the base class for the specialzations for vertices, edges and faces. The access to the internal data of the space (which is needed) is provided through the protected member functions of this class (and this class is a friend of Space).
Definition at line 31 of file buildDofsBase.hh.
Constructor & Destructor Documentation
◆ BuildDofsBase() [1/2]
|
inline |
Default constructor.
Definition at line 34 of file buildDofsBase.hh.
◆ BuildDofsBase() [2/2]
|
inline |
Constructor.
- Parameters
-
spc Space to build the degrees of freedom from
Definition at line 38 of file buildDofsBase.hh.
Member Function Documentation
◆ clone()
|
pure virtual |
Virtual copy constructor with a twist.
If a copy of a space is created, the strategies to build the degrees of freedom of the copy should als reference the copy and not the initial space. This is done by giving the argument spc
to clone.
- Parameters
-
spc Space to work on for the return value. If set to 0, spc_
is used.
Implemented in hp3D::BuildVertexDofs, hp3D::BuildInnerDofsHypTrunk, hp3D::BuildInnerDofsLinTrunk, hp3D::BuildInnerDofs, hp3D::BuildFaceDofsHypTrunk, hp3D::BuildFaceDofsLinTrunk, hp3D::BuildFaceDofs, and hp3D::BuildEdgeDofs.
◆ computePmax_()
|
inlineprotected |
Computes maximal polynomial Pmax
degree on topological objects adjacent to cntr
that contributes directly to a global degree of freedom (returned in tensor form)
Definition at line 178 of file buildDofsBase.hh.
◆ ctrl0_()
|
inlineprotected |
Returns vertex tag of vertex with key idx
.
Definition at line 107 of file buildDofsBase.hh.
◆ ctrl1_()
|
inlineprotected |
Returns edge tag of edge with key idx
.
Definition at line 112 of file buildDofsBase.hh.
◆ ctrl2_()
|
inlineprotected |
Returns face tag of face with key idx
.
Definition at line 117 of file buildDofsBase.hh.
◆ ctrl3_()
|
inlineprotected |
Returns cell tag of cell with key idx
.
Definition at line 122 of file buildDofsBase.hh.
◆ deactivate_() [1/3]
|
inlineprotected |
Deactivates the children of the vertex vtx
.
Definition at line 163 of file buildDofsBase.hh.
◆ deactivate_() [2/3]
|
inlineprotected |
Deactivates the children of the edge edg
(including the middle vertex).
Definition at line 168 of file buildDofsBase.hh.
◆ deactivate_() [3/3]
|
inlineprotected |
Deactivates the children of face
(including the new edges and vertices).
Definition at line 173 of file buildDofsBase.hh.
◆ dim_()
|
inlineprotected |
Returns a reference to the dimension of the space.
Definition at line 85 of file buildDofsBase.hh.
◆ edgeListEnd()
|
inlineprotected |
Returns the end of the list with edge data.
Definition at line 146 of file buildDofsBase.hh.
◆ edgeListFind()
|
inlineprotected |
Returns the iterator to the edge data of the edge with key idx
.
Definition at line 140 of file buildDofsBase.hh.
◆ faceListEnd()
|
inlineprotected |
Returns the end of the list with face data.
Definition at line 158 of file buildDofsBase.hh.
◆ faceListFind()
|
inlineprotected |
Returns the iterator to the face data of the face with key idx
.
Definition at line 152 of file buildDofsBase.hh.
◆ getPmax_()
|
inlineprotected |
Gets the polynomial degrees Pmax
of the shape function on cntr
(returned in tensor form)
Definition at line 184 of file buildDofsBase.hh.
◆ operator()()
|
pure virtual |
Builds the degrees of freedom.
- Parameters
-
cntr Hex which vertices should be considered T1 New T columns created for the degrees of freedom in the vertices
Implemented in hp3D::BuildVertexDofs, hp3D::BuildInnerDofs, hp3D::BuildFaceDofs, and hp3D::BuildEdgeDofs.
◆ space()
|
inline |
Returns the space.
Definition at line 56 of file buildDofsBase.hh.
◆ vertexListEnd()
|
inlineprotected |
Returns the end of the list with vertex data.
Definition at line 134 of file buildDofsBase.hh.
◆ vertexListFind()
|
inlineprotected |
Returns the iterator to the vertex data of the vertex with key idx
.
Definition at line 128 of file buildDofsBase.hh.
Member Data Documentation
◆ spc_
|
protected |
Space to build the vertex degrees of freedom from.
Definition at line 104 of file buildDofsBase.hh.
The documentation for this class was generated from the following file:
- hp3D/buildDofsBase.hh