Public Member Functions | Protected Member Functions | Protected Attributes
Sundance::NodalDOFMapHN Class Reference
Inheritance diagram for Sundance::NodalDOFMapHN:
Sundance::HNDoFMapBaseHomogeneous Sundance::SpatiallyHomogeneousDOFMapBase Sundance::HNDoFMapBase Sundance::DOFMapBase Playa::Printable

List of all members.

Public Member Functions

 NodalDOFMapHN (const Mesh &mesh, int nFuncs, const CellFilter &maxCellFilter, int setupVerb)
virtual ~NodalDOFMapHN ()
RCP< const MapStructuregetDOFsForCellBatch (int cellDim, const Array< int > &cellLID, const Set< int > &requestedFuncSet, Array< Array< int > > &dofs, Array< int > &nNodes, int verb) const
void getTrafoMatrixForCell (int cellLID, int funcID, int &trafoMatrixSize, bool &doTransform, Array< double > &transfMatrix) const
void getTrafoMatrixForFacet (int cellDim, int cellLID, int facetIndex, int funcID, int &trafoMatrixSize, bool &doTransform, Array< double > &transfMatrix) const
void getDOFsForHNCell (int cellDim, int cellLID, int funcID, Array< int > &dofs, Array< double > &coefs) const
RCP< const MapStructuremapStruct () const
int nFuncs () const

Protected Member Functions

void init ()
void computeOffsets (int localCount)
void shareRemoteDOFs (const Array< Array< int > > &remoteNodes)
void getPointLIDsForHN (int pointLID, int facetIndex, int maxCellIndex, Array< int > &glbLIDs, Array< double > &coefsArray, Array< int > &nodeIndex)

Protected Attributes

CellFilter maxCellFilter_
int dim_
int nFuncs_
int nElems_
int nNodes_
int nNodesPerElem_
int nFacets_
Array< int > elemDofs_
Array< int > nodeDofs_
RCP< const MapStructurestructure_
Array< bool > hasCellHanging_
Array< bool > nodeIsHanging_
Sundance::Map< int, Array< int > > cellsWithHangingDoF_globalDoFs_
Sundance::Map< int, Array< int > > cells_To_NodeLIDs_
Sundance::Map< int, Array< int > > hangingNodeLID_to_NodesLIDs_
Sundance::Map< int, Array
< double > > 
hangindNodeLID_to_Coefs_
Sundance::Map< int, int > maxCellLIDwithHN_to_TrafoMatrix_
MatrixStore matrixStore_
Array< int > facetLID_

Detailed Description

Definition at line 61 of file SundanceNodalDOFMapHN.hpp.


Constructor & Destructor Documentation

NodalDOFMapHN::NodalDOFMapHN ( const Mesh mesh,
int  nFuncs,
const CellFilter maxCellFilter,
int  setupVerb 
)

Definition at line 57 of file SundanceNodalDOFMapHN.cpp.

References init(), and matrixStore_.

virtual Sundance::NodalDOFMapHN::~NodalDOFMapHN ( ) [inline, virtual]

Definition at line 71 of file SundanceNodalDOFMapHN.hpp.


Member Function Documentation

void NodalDOFMapHN::computeOffsets ( int  localCount) [protected]
RCP< const MapStructure > NodalDOFMapHN::getDOFsForCellBatch ( int  cellDim,
const Array< int > &  cellLID,
const Set< int > &  requestedFuncSet,
Array< Array< int > > &  dofs,
Array< int > &  nNodes,
int  verb 
) const [virtual]
void NodalDOFMapHN::getDOFsForHNCell ( int  cellDim,
int  cellLID,
int  funcID,
Array< int > &  dofs,
Array< double > &  coefs 
) const [virtual]
void NodalDOFMapHN::getPointLIDsForHN ( int  pointLID,
int  facetIndex,
int  maxCellIndex,
Array< int > &  glbLIDs,
Array< double > &  coefsArray,
Array< int > &  nodeIndex 
) [protected]

This is a temporary function which later could be out source to the Basis

This function is only for TRISECTION implemented

Definition at line 448 of file SundanceNodalDOFMapHN.cpp.

References dim_, Sundance::Mesh::indexInParent(), Sundance::DOFMapBase::mesh(), Sundance::Mesh::returnParentFacets(), Sundance::DOFMapBase::setupVerb(), and SUNDANCE_MSG2.

Referenced by init().

void NodalDOFMapHN::getTrafoMatrixForCell ( int  cellLID,
int  funcID,
int &  trafoMatrixSize,
bool &  doTransform,
Array< double > &  transfMatrix 
) const [virtual]
Parameters:
cellLID[in] the maxCell LID input
funcID[in] the function ID
trafoMatrixSize[in/out]
doTransform[out]
transfMatrix[out] (we assume that the array is already pre-sized )

Implements Sundance::HNDoFMapBase.

Definition at line 370 of file SundanceNodalDOFMapHN.cpp.

References cellsWithHangingDoF_globalDoFs_, Sundance::Map< Key, Value, Compare >::containsKey(), Sundance::Map< Key, Value, Compare >::get(), matrixStore_, maxCellLIDwithHN_to_TrafoMatrix_, and nFacets_.

void NodalDOFMapHN::getTrafoMatrixForFacet ( int  cellDim,
int  cellLID,
int  facetIndex,
int  funcID,
int &  trafoMatrixSize,
bool &  doTransform,
Array< double > &  transfMatrix 
) const [virtual]

Function to apply transformation for facets

Parameters:
cellDim,thefacet dimension
cellLID,facetLID
facetIndex,facetindex in the maxCofacet
funcID[in] the function ID
trafoMatrixSize[in/out]
doTransform[out]
transfMatrix[out] (we assume that the array is already pre-sized )

Implements Sundance::HNDoFMapBase.

Definition at line 392 of file SundanceNodalDOFMapHN.cpp.

References cellsWithHangingDoF_globalDoFs_, Sundance::Map< Key, Value, Compare >::containsKey(), Sundance::Map< Key, Value, Compare >::get(), matrixStore_, maxCellLIDwithHN_to_TrafoMatrix_, Sundance::Mesh::maxCofacetLID(), Sundance::DOFMapBase::mesh(), Sundance::DOFMapBase::setupVerb(), and SUNDANCE_MSG2.

void NodalDOFMapHN::init ( ) [protected]
RCP<const MapStructure> Sundance::NodalDOFMapHN::mapStruct ( ) const [inline, virtual]

Implements Sundance::SpatiallyHomogeneousDOFMapBase.

Definition at line 123 of file SundanceNodalDOFMapHN.hpp.

References structure_.

int Sundance::NodalDOFMapHN::nFuncs ( ) const [inline]

Definition at line 127 of file SundanceNodalDOFMapHN.hpp.

References nFuncs_.

void NodalDOFMapHN::shareRemoteDOFs ( const Array< Array< int > > &  remoteNodes) [protected]

Member Data Documentation

maps one Cell index to the point LIDs, where are global DoFs which

Definition at line 175 of file SundanceNodalDOFMapHN.hpp.

maps one Cell index to the point LIDs, where are global DoFs which

Definition at line 172 of file SundanceNodalDOFMapHN.hpp.

Referenced by getTrafoMatrixForCell(), getTrafoMatrixForFacet(), and init().

Definition at line 147 of file SundanceNodalDOFMapHN.hpp.

Referenced by getDOFsForCellBatch(), getPointLIDsForHN(), and init().

Array<int> Sundance::NodalDOFMapHN::elemDofs_ [protected]

Definition at line 159 of file SundanceNodalDOFMapHN.hpp.

Referenced by getDOFsForCellBatch(), and init().

Array<int> Sundance::NodalDOFMapHN::facetLID_ [protected]

Definition at line 190 of file SundanceNodalDOFMapHN.hpp.

Referenced by init().

Maps the local (hanging) node (Point) DoF to the global DoFs

Definition at line 181 of file SundanceNodalDOFMapHN.hpp.

Referenced by getDOFsForHNCell(), and init().

Maps the local (hanging) node (Point) LID to the global DoFs index

Definition at line 178 of file SundanceNodalDOFMapHN.hpp.

Referenced by getDOFsForHNCell(), and init().

Is true if the cell has hanging node

Definition at line 166 of file SundanceNodalDOFMapHN.hpp.

Referenced by init().

MatrixStore Sundance::NodalDOFMapHN::matrixStore_ [protected]

The object to store all the transformation matrixes

Definition at line 187 of file SundanceNodalDOFMapHN.hpp.

Referenced by getTrafoMatrixForCell(), getTrafoMatrixForFacet(), init(), and NodalDOFMapHN().

Definition at line 145 of file SundanceNodalDOFMapHN.hpp.

Referenced by init().

Maps the local (hanging) node (Point) DoF to the matrix index

Definition at line 184 of file SundanceNodalDOFMapHN.hpp.

Referenced by getTrafoMatrixForCell(), getTrafoMatrixForFacet(), and init().

Definition at line 151 of file SundanceNodalDOFMapHN.hpp.

Referenced by init().

Definition at line 157 of file SundanceNodalDOFMapHN.hpp.

Referenced by getTrafoMatrixForCell(), and init().

Definition at line 153 of file SundanceNodalDOFMapHN.hpp.

Referenced by computeOffsets(), and init().

Definition at line 155 of file SundanceNodalDOFMapHN.hpp.

Referenced by getDOFsForCellBatch().

Array<int> Sundance::NodalDOFMapHN::nodeDofs_ [protected]
Array<bool> Sundance::NodalDOFMapHN::nodeIsHanging_ [protected]

Is true if the node is hanging

Definition at line 169 of file SundanceNodalDOFMapHN.hpp.

Definition at line 163 of file SundanceNodalDOFMapHN.hpp.

Referenced by getDOFsForCellBatch(), and mapStruct().

Site Contact