Public Member Functions | |
MixedDOFMapHN (const Mesh &mesh, const Array< RCP< BasisDOFTopologyBase > > &basis, const CellFilter &maxCells, int setupVerb) | |
virtual | ~MixedDOFMapHN () |
RCP< const MapStructure > | getDOFsForCellBatch (int cellDim, const Array< int > &cellLID, const Set< int > &requestedFuncSet, Array< Array< int > > &dofs, Array< int > &nNodes, int verbosity) 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 MapStructure > | mapStruct () const |
int | chunkForFuncID (int funcID) const |
int | indexForFuncID (int funcID) const |
int | nFuncs (int basisChunk) const |
int | nBasisChunks () const |
const RCP< BasisDOFTopologyBase > & | basis (int basisChunk) const |
const Array< int > & | funcID (int basisChunk) const |
Private Member Functions | |
void | checkTable () const |
int | getInitialDOFForCell (int cellDim, int cellLID, int basisChunk) const |
int * | getInitialDOFPtrForCell (int cellDim, int cellLID, int basisChunk) |
const int * | getInitialDOFPtrForCell (int cellDim, int cellLID, int basisChunk) const |
void | allocate (const Mesh &mesh) |
void | buildMaximalDofTable () |
bool | hasBeenAssigned (int cellDim, int cellLID) const |
void | markAsAssigned (int cellDim, int cellLID) |
void | initMap () |
void | setDOFs (int basisChunk, int cellDim, int cellLID, int &nextDOF, bool isRemote=false) |
void | shareDOFs (int cellDim, const Array< Array< int > > &outgoingCellRequests) |
void | computeOffsets (int dim, int localCount) |
Static Private Member Functions | |
static int | uninitializedVal () |
Private Attributes | |
CellFilter | maxCells_ |
int | dim_ |
Array< Array< Array< int > > > | dofs_ |
Array< Array< int > > | maximalDofs_ |
bool | haveMaximalDofs_ |
Array< Array< Array< Array < Array< int > > > > > | localNodePtrs_ |
int | nPoints_ |
Array< bool > | hasCellHanging_ |
Array< Array< bool > > | isElementHanging_ |
Sundance::Map< int, Array< int > > | HN_To_globalFacetsLID_ |
Sundance::Map< int, Array< int > > | HN_To_globalFacetsDim_ |
Sundance::Map< int, Array < double > > | HN_To_coeffs_ |
Sundance::Map< int, Array< int > > | maxCellLIDwithHN_to_TrafoMatrix_ |
MatrixStore | matrixStore_ |
Array< RCP< BasisFamilyBase > > | basis_ |
Array< Array< int > > | nNodesPerCell_ |
Array< Array< int > > | nDofsPerCell_ |
Array< Array< int > > | totalNNodesPerCell_ |
Array< Array< int > > | totalNDofsPerCell_ |
Array< int > | cellHasAnyDOFs_ |
Array< Array< int > > | numFacets_ |
Array< Array< int > > | originalFacetOrientation_ |
Array< Array< int > > | hasBeenAssigned_ |
RCP< const MapStructure > | structure_ |
Array< int > | nFuncs_ |
Definition at line 56 of file SundanceMixedDOFMapHN.hpp.
MixedDOFMapHN::MixedDOFMapHN | ( | const Mesh & | mesh, | |
const Array< RCP< BasisDOFTopologyBase > > & | basis, | |||
const CellFilter & | maxCells, | |||
int | setupVerb | |||
) |
Definition at line 61 of file SundanceMixedDOFMapHN.cpp.
References allocate(), basis(), basis_, buildMaximalDofTable(), Sundance::Map< Key, Value, Compare >::containsKey(), Sundance::Map< Key, Value, Compare >::get(), initMap(), matrixStore_, mixedHNDOFCtorTimer(), nFuncs_, nPoints_, Sundance::Mesh::numCells(), Sundance::Map< Key, Value, Compare >::put(), structure_, and SUNDANCE_MSG1.
virtual Sundance::MixedDOFMapHN::~MixedDOFMapHN | ( | ) | [inline, virtual] |
Definition at line 66 of file SundanceMixedDOFMapHN.hpp.
void MixedDOFMapHN::allocate | ( | const Mesh & | mesh | ) | [private] |
Definition at line 149 of file SundanceMixedDOFMapHN.cpp.
References Sundance::Mesh::assignIntermediateCellGIDs(), basis(), cellHasAnyDOFs_, Sundance::Mesh::cellType(), dim_, dofs_, hasBeenAssigned_, hasCellHanging_, isElementHanging_, localNodePtrs_, maximalDofs_, nBasisChunks(), nDofsPerCell_, nFuncs(), nNodesPerCell_, Sundance::Mesh::numCells(), Sundance::Mesh::numFacets(), numFacets_, originalFacetOrientation_, Sundance::DOFMapBase::setupVerb(), Sundance::Mesh::spatialDim(), SUNDANCE_MSG1, SUNDANCE_MSG2, SUNDANCE_MSG3, totalNDofsPerCell_, totalNNodesPerCell_, and uninitializedVal().
Referenced by MixedDOFMapHN().
const RCP<BasisDOFTopologyBase>& Sundance::MixedDOFMapHN::basis | ( | int | basisChunk | ) | const [inline] |
Definition at line 138 of file SundanceMixedDOFMapHN.hpp.
References structure_.
Referenced by allocate(), and MixedDOFMapHN().
void MixedDOFMapHN::buildMaximalDofTable | ( | ) | [private] |
Definition at line 837 of file SundanceMixedDOFMapHN.cpp.
References basis_, Sundance::DOFMapBase::cellDim(), dim_, dofs_, Sundance::Mesh::getFacetLIDs(), hasCellHanging_, haveMaximalDofs_, HN_To_coeffs_, HN_To_globalFacetsDim_, HN_To_globalFacetsLID_, localNodePtrs_, matrixStore_, maxCellLIDwithHN_to_TrafoMatrix_, maxDOFBuildTimer(), maximalDofs_, Sundance::DOFMapBase::mesh(), nBasisChunks(), nDofsPerCell_, nFuncs(), nNodesPerCell_, nPoints_, Sundance::Mesh::numCells(), Sundance::Mesh::numFacets(), Sundance::numFacets(), originalFacetOrientation_, Sundance::Map< Key, Value, Compare >::put(), Sundance::Mesh::returnParentFacets(), Sundance::DOFMapBase::setupVerb(), SUNDANCE_MSG1, SUNDANCE_MSG3, and totalNNodesPerCell_.
Referenced by MixedDOFMapHN().
void MixedDOFMapHN::checkTable | ( | ) | const [private] |
Definition at line 1361 of file SundanceMixedDOFMapHN.cpp.
References Playa::MPIComm::allReduce(), Sundance::DOFMapBase::comm(), dofs_, Playa::MPIDataType::intType(), and Playa::MPIOp::sumOp().
int Sundance::MixedDOFMapHN::chunkForFuncID | ( | int | funcID | ) | const [inline] |
Definition at line 122 of file SundanceMixedDOFMapHN.hpp.
References structure_.
Referenced by getDOFsForHNCell(), getTrafoMatrixForCell(), and getTrafoMatrixForFacet().
void MixedDOFMapHN::computeOffsets | ( | int | dim, | |
int | localCount | |||
) | [private] |
Definition at line 1296 of file SundanceMixedDOFMapHN.cpp.
References Sundance::Mesh::comm(), Sundance::DOFMapBase::comm(), dofs_, Playa::MPIComm::getRank(), Sundance::DOFMapBase::mesh(), Sundance::DOFMapBase::setLowestLocalDOF(), Sundance::DOFMapBase::setNumLocalDOFs(), Sundance::DOFMapBase::setTotalNumDOFs(), Sundance::DOFMapBase::setupVerb(), SUNDANCE_MSG2, and Playa::MPIComm::synchronize().
Referenced by initMap().
const Array<int>& Sundance::MixedDOFMapHN::funcID | ( | int | basisChunk | ) | const [inline] |
RCP< const MapStructure > MixedDOFMapHN::getDOFsForCellBatch | ( | int | cellDim, | |
const Array< int > & | cellLID, | |||
const Set< int > & | requestedFuncSet, | |||
Array< Array< int > > & | dofs, | |||
Array< int > & | nNodes, | |||
int | verbosity | |||
) | const [virtual] |
Implements Sundance::DOFMapBase.
Definition at line 624 of file SundanceMixedDOFMapHN.cpp.
References Sundance::numFacets(), SUNDANCE_MSG2, SUNDANCE_MSG3, and SUNDANCE_MSG4.
void MixedDOFMapHN::getDOFsForHNCell | ( | int | cellDim, | |
int | cellLID, | |||
int | funcID, | |||
Array< int > & | dofs, | |||
Array< double > & | coefs | |||
) | const [virtual] |
See subclass for docu We can be sure that this is used only for nodal data (for VTK plotting)
This is implemented only for Nodal data call !!!
Function for nodal plotting
Implements Sundance::HNDoFMapBase.
Definition at line 1256 of file SundanceMixedDOFMapHN.cpp.
References chunkForFuncID(), Sundance::Map< Key, Value, Compare >::containsKey(), dofs_, Sundance::Map< Key, Value, Compare >::get(), HN_To_coeffs_, HN_To_globalFacetsDim_, HN_To_globalFacetsLID_, indexForFuncID(), nDofsPerCell_, nNodesPerCell_, nPoints_, Sundance::DOFMapBase::setupVerb(), and SUNDANCE_MSG1.
int Sundance::MixedDOFMapHN::getInitialDOFForCell | ( | int | cellDim, | |
int | cellLID, | |||
int | basisChunk | |||
) | const [inline, private] |
Definition at line 152 of file SundanceMixedDOFMapHN.hpp.
References dofs_, and nDofsPerCell_.
Referenced by shareDOFs().
const int* Sundance::MixedDOFMapHN::getInitialDOFPtrForCell | ( | int | cellDim, | |
int | cellLID, | |||
int | basisChunk | |||
) | const [inline, private] |
int* Sundance::MixedDOFMapHN::getInitialDOFPtrForCell | ( | int | cellDim, | |
int | cellLID, | |||
int | basisChunk | |||
) | [inline, private] |
Definition at line 157 of file SundanceMixedDOFMapHN.hpp.
References dofs_, and nDofsPerCell_.
Referenced by setDOFs().
void MixedDOFMapHN::getTrafoMatrixForCell | ( | int | cellLID, | |
int | funcID, | |||
int & | trafoMatrixSize, | |||
bool & | doTransform, | |||
Array< double > & | transfMatrix | |||
) | const [virtual] |
Returns the
cellLID | [in] the maxCell LID input | |
funcID | [in] | |
trafoMatrixSize | [in/out] | |
doTransform | [out] | |
transfMatrix | [out] row major matrix |
Implements Sundance::HNDoFMapBase.
Definition at line 1196 of file SundanceMixedDOFMapHN.cpp.
References chunkForFuncID(), Sundance::Map< Key, Value, Compare >::containsKey(), Sundance::Map< Key, Value, Compare >::get(), matrixStore_, maxCellLIDwithHN_to_TrafoMatrix_, Sundance::DOFMapBase::setupVerb(), and SUNDANCE_MSG1.
void MixedDOFMapHN::getTrafoMatrixForFacet | ( | int | cellDim, | |
int | cellLID, | |||
int | facetIndex, | |||
int | funcID, | |||
int & | trafoMatrixSize, | |||
bool & | doTransform, | |||
Array< double > & | transfMatrix | |||
) | const [virtual] |
Function to apply transformation for facets
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 1225 of file SundanceMixedDOFMapHN.cpp.
References chunkForFuncID(), 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.
bool Sundance::MixedDOFMapHN::hasBeenAssigned | ( | int | cellDim, | |
int | cellLID | |||
) | const [inline, private] |
Definition at line 174 of file SundanceMixedDOFMapHN.hpp.
References hasBeenAssigned_.
Referenced by initMap().
int Sundance::MixedDOFMapHN::indexForFuncID | ( | int | funcID | ) | const [inline] |
Definition at line 126 of file SundanceMixedDOFMapHN.hpp.
References structure_.
Referenced by getDOFsForHNCell().
void MixedDOFMapHN::initMap | ( | ) | [private] |
Definition at line 297 of file SundanceMixedDOFMapHN.cpp.
References Sundance::CellSet::begin(), cellHasAnyDOFs_, Sundance::DOFMapBase::comm(), Sundance::Mesh::comm(), computeOffsets(), dim_, Sundance::CellSet::end(), Sundance::CellFilter::getCells(), Sundance::Mesh::getFacetArray(), Playa::MPIComm::getNProc(), hasBeenAssigned(), Sundance::DOFMapBase::isRemote(), Sundance::Mesh::mapLIDToGID(), markAsAssigned(), maxCells_, Sundance::DOFMapBase::mesh(), nBasisChunks(), numFacets_, Sundance::DOFMapBase::numLocalDOFs(), originalFacetOrientation_, setDOFs(), Sundance::DOFMapBase::setLowestLocalDOF(), Sundance::DOFMapBase::setNumLocalDOFs(), Sundance::DOFMapBase::setTotalNumDOFs(), Sundance::DOFMapBase::setupVerb(), shareDOFs(), SUNDANCE_MSG1, and SUNDANCE_MSG4.
Referenced by MixedDOFMapHN().
RCP<const MapStructure> Sundance::MixedDOFMapHN::mapStruct | ( | ) | const [inline, virtual] |
Implements Sundance::SpatiallyHomogeneousDOFMapBase.
Definition at line 118 of file SundanceMixedDOFMapHN.hpp.
References structure_.
void Sundance::MixedDOFMapHN::markAsAssigned | ( | int | cellDim, | |
int | cellLID | |||
) | [inline, private] |
Definition at line 177 of file SundanceMixedDOFMapHN.hpp.
References hasBeenAssigned_.
Referenced by initMap().
int Sundance::MixedDOFMapHN::nBasisChunks | ( | ) | const [inline] |
Definition at line 134 of file SundanceMixedDOFMapHN.hpp.
References nFuncs_.
Referenced by allocate(), buildMaximalDofTable(), initMap(), and shareDOFs().
int Sundance::MixedDOFMapHN::nFuncs | ( | int | basisChunk | ) | const [inline] |
Definition at line 130 of file SundanceMixedDOFMapHN.hpp.
References nFuncs_.
Referenced by allocate(), and buildMaximalDofTable().
void MixedDOFMapHN::setDOFs | ( | int | basisChunk, | |
int | cellDim, | |||
int | cellLID, | |||
int & | nextDOF, | |||
bool | isRemote = false | |||
) | [private] |
Definition at line 432 of file SundanceMixedDOFMapHN.cpp.
References Sundance::DOFMapBase::addGhostIndex(), getInitialDOFPtrForCell(), isElementHanging_, Sundance::DOFMapBase::mesh(), nDofsPerCell_, Sundance::DOFMapBase::setupVerb(), and SUNDANCE_MSG4.
Referenced by initMap(), and shareDOFs().
void MixedDOFMapHN::shareDOFs | ( | int | cellDim, | |
const Array< Array< int > > & | outgoingCellRequests | |||
) | [private] |
Definition at line 492 of file SundanceMixedDOFMapHN.cpp.
References Sundance::DOFMapBase::comm(), Sundance::Mesh::comm(), dim_, dofs_, getInitialDOFForCell(), Playa::MPIComm::getNProc(), Playa::MPIComm::getRank(), Sundance::Mesh::mapGIDToLID(), Sundance::DOFMapBase::mesh(), nBasisChunks(), nDofsPerCell_, originalFacetOrientation_, setDOFs(), Sundance::DOFMapBase::setupVerb(), SUNDANCE_MSG2, SUNDANCE_MSG3, and SUNDANCE_MSG4.
Referenced by initMap().
static int Sundance::MixedDOFMapHN::uninitializedVal | ( | ) | [inline, static, private] |
Array<RCP<BasisFamilyBase> > Sundance::MixedDOFMapHN::basis_ [mutable, private] |
The basis for the transformation
Definition at line 254 of file SundanceMixedDOFMapHN.hpp.
Referenced by buildMaximalDofTable(), and MixedDOFMapHN().
Array<int> Sundance::MixedDOFMapHN::cellHasAnyDOFs_ [private] |
Indicates whether the cells of each dimension have any DOFs in this map, for any chunk.
Definition at line 280 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate(), and initMap().
int Sundance::MixedDOFMapHN::dim_ [private] |
spatial dimension
Definition at line 201 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate(), buildMaximalDofTable(), initMap(), and shareDOFs().
Array<Array<Array<int> > > Sundance::MixedDOFMapHN::dofs_ [private] |
Tables of DOFs, indexed by dimension and chunk number.
dof(cellDim, cellLID, chunk, func, node) = dofs_[cellDim][chunk][(cellLID*nFunc + func)*nNode + node]
Definition at line 208 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate(), buildMaximalDofTable(), checkTable(), computeOffsets(), getDOFsForHNCell(), getInitialDOFForCell(), getInitialDOFPtrForCell(), and shareDOFs().
Array<Array<int> > Sundance::MixedDOFMapHN::hasBeenAssigned_ [private] |
Definition at line 292 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate(), hasBeenAssigned(), and markAsAssigned().
Array<bool> Sundance::MixedDOFMapHN::hasCellHanging_ [private] |
Is true if the cell has hanging node
Definition at line 231 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate(), and buildMaximalDofTable().
bool Sundance::MixedDOFMapHN::haveMaximalDofs_ [mutable, private] |
whether maximal DOFs have been tabulated
Definition at line 218 of file SundanceMixedDOFMapHN.hpp.
Referenced by buildMaximalDofTable().
Sundance::Map< int , Array<double> > Sundance::MixedDOFMapHN::HN_To_coeffs_ [private] |
store the coefs [nPoints*b + facetID]
Definition at line 243 of file SundanceMixedDOFMapHN.hpp.
Referenced by buildMaximalDofTable(), and getDOFsForHNCell().
Sundance::Map< int , Array<int> > Sundance::MixedDOFMapHN::HN_To_globalFacetsDim_ [private] |
store the facetDim of the points [nPoints*b + facetID]
Definition at line 240 of file SundanceMixedDOFMapHN.hpp.
Referenced by buildMaximalDofTable(), and getDOFsForHNCell().
Sundance::Map< int , Array<int> > Sundance::MixedDOFMapHN::HN_To_globalFacetsLID_ [private] |
store the facetLIDs of the points [nPoints*b + facetID]
Definition at line 237 of file SundanceMixedDOFMapHN.hpp.
Referenced by buildMaximalDofTable(), and getDOFsForHNCell().
Array< Array<bool> > Sundance::MixedDOFMapHN::isElementHanging_ [private] |
Flag per element showing if the element is a hanging element
Definition at line 234 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate(), and setDOFs().
Array<Array<Array<Array<Array<int> > > > > Sundance::MixedDOFMapHN::localNodePtrs_ [private] |
localNodePtrs_[basisChunk][cellDim][facetDim][facetNumber][nodeNumber]
Definition at line 223 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate(), and buildMaximalDofTable().
MatrixStore Sundance::MixedDOFMapHN::matrixStore_ [private] |
The object to store all the transformation matrixes
Definition at line 251 of file SundanceMixedDOFMapHN.hpp.
Referenced by buildMaximalDofTable(), getTrafoMatrixForCell(), getTrafoMatrixForFacet(), and MixedDOFMapHN().
Sundance::Map< int , Array < int > > Sundance::MixedDOFMapHN::maxCellLIDwithHN_to_TrafoMatrix_ [private] |
Maps one maxCell LID to one transformation matrix, only maxDim elements and basisChunck ID with hanging nodes should have transformation matrix [maxCellLID].get -> [basisChunckID][] is the index of trafo matrix
Definition at line 248 of file SundanceMixedDOFMapHN.hpp.
Referenced by buildMaximalDofTable(), getTrafoMatrixForCell(), and getTrafoMatrixForFacet().
CellFilter Sundance::MixedDOFMapHN::maxCells_ [private] |
Array<Array<int> > Sundance::MixedDOFMapHN::maximalDofs_ [mutable, private] |
DOFs for maximal cells, indexed by basis chunk number
dof(cellLID, chunk, func, node) = maximalDofs_[chunk][(cellLID*nFunc + func)*nNode + node];
Definition at line 215 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate(), and buildMaximalDofTable().
Array<Array<int> > Sundance::MixedDOFMapHN::nDofsPerCell_ [private] |
The number of DOFs per cell, for each basis function type, not including the DOFs of the facets of the cell. Indexed as nDofsPerCell_[basis][dimension]
Definition at line 266 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate(), buildMaximalDofTable(), getDOFsForHNCell(), getInitialDOFForCell(), getInitialDOFPtrForCell(), setDOFs(), and shareDOFs().
Array<int> Sundance::MixedDOFMapHN::nFuncs_ [private] |
Definition at line 298 of file SundanceMixedDOFMapHN.hpp.
Referenced by MixedDOFMapHN(), nBasisChunks(), and nFuncs().
Array<Array<int> > Sundance::MixedDOFMapHN::nNodesPerCell_ [private] |
The number of nodes per cell, for each basis function type, not including the nodes of the facets of the cell. Indexed as nNodesPerCell_[basis][dimension]
Definition at line 261 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate(), buildMaximalDofTable(), and getDOFsForHNCell().
int Sundance::MixedDOFMapHN::nPoints_ [private] |
Nr of points, needed only by plotting
Definition at line 228 of file SundanceMixedDOFMapHN.hpp.
Referenced by buildMaximalDofTable(), getDOFsForHNCell(), and MixedDOFMapHN().
Array<Array<int> > Sundance::MixedDOFMapHN::numFacets_ [private] |
number of facets of dimension facetDim for cells of dimension cellDim. Indexed as numFacets_[cellDim][facetDim]
Definition at line 285 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate(), and initMap().
Array<Array<int> > Sundance::MixedDOFMapHN::originalFacetOrientation_ [private] |
Orientation of each edge or face as seen by the maximal cell from which its DOFs were originally assigned.
Definition at line 289 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate(), buildMaximalDofTable(), initMap(), and shareDOFs().
RCP<const MapStructure> Sundance::MixedDOFMapHN::structure_ [private] |
Definition at line 295 of file SundanceMixedDOFMapHN.hpp.
Referenced by basis(), chunkForFuncID(), funcID(), indexForFuncID(), mapStruct(), and MixedDOFMapHN().
Array<Array<int> > Sundance::MixedDOFMapHN::totalNDofsPerCell_ [private] |
The number of DOFs per cell, for each basis function type, including the DOFs of the facets of the cell. Indexed as nDofsPerCell_[basis][dimension]
Definition at line 276 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate().
Array<Array<int> > Sundance::MixedDOFMapHN::totalNNodesPerCell_ [private] |
The number of nodes per cell, for each basis function type, including the nodes of the facets of the cell. Indexed as nNodesPerCell_[basis][dimension]
Definition at line 271 of file SundanceMixedDOFMapHN.hpp.
Referenced by allocate(), and buildMaximalDofTable().