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 50 of file SundanceNodalDOFMapHN.hpp.


Constructor & Destructor Documentation

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

Definition at line 46 of file SundanceNodalDOFMapHN.cpp.

References init(), and matrixStore_.

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

Definition at line 60 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 437 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 359 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,the facet dimension
cellLID,facet LID
facetIndex,facet index 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 381 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 112 of file SundanceNodalDOFMapHN.hpp.

References structure_.

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

Definition at line 116 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 164 of file SundanceNodalDOFMapHN.hpp.

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

Definition at line 161 of file SundanceNodalDOFMapHN.hpp.

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

Definition at line 136 of file SundanceNodalDOFMapHN.hpp.

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

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

Definition at line 148 of file SundanceNodalDOFMapHN.hpp.

Referenced by getDOFsForCellBatch(), and init().

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

Definition at line 179 of file SundanceNodalDOFMapHN.hpp.

Referenced by init().

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

Definition at line 170 of file SundanceNodalDOFMapHN.hpp.

Referenced by getDOFsForHNCell(), and init().

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

Definition at line 167 of file SundanceNodalDOFMapHN.hpp.

Referenced by getDOFsForHNCell(), and init().

Is true if the cell has hanging node

Definition at line 155 of file SundanceNodalDOFMapHN.hpp.

Referenced by init().

MatrixStore Sundance::NodalDOFMapHN::matrixStore_ [protected]

The object to store all the transformation matrixes

Definition at line 176 of file SundanceNodalDOFMapHN.hpp.

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

Definition at line 134 of file SundanceNodalDOFMapHN.hpp.

Referenced by init().

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

Definition at line 173 of file SundanceNodalDOFMapHN.hpp.

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

Definition at line 140 of file SundanceNodalDOFMapHN.hpp.

Referenced by init().

Definition at line 146 of file SundanceNodalDOFMapHN.hpp.

Referenced by getTrafoMatrixForCell(), and init().

Definition at line 142 of file SundanceNodalDOFMapHN.hpp.

Referenced by computeOffsets(), and init().

Definition at line 144 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 158 of file SundanceNodalDOFMapHN.hpp.

Definition at line 152 of file SundanceNodalDOFMapHN.hpp.

Referenced by getDOFsForCellBatch(), and mapStruct().

Site Contact