Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes
Sundance::HomogeneousDOFMap Class Reference
Inheritance diagram for Sundance::HomogeneousDOFMap:
Sundance::DOFMapBase Playa::Printable

List of all members.

Public Member Functions

 HomogeneousDOFMap (const Mesh &mesh, const BasisFamily &basis, int numFuncs)
 HomogeneousDOFMap (const Mesh &mesh, const BasisFamily &basis, const Array< CellFilter > &subregions, int numFuncs)
virtual ~HomogeneousDOFMap ()
virtual void getDOFsForCellBatch (int cellDim, const Array< int > &cellLID, Array< int > &dofs, Array< Array< int > > &funcIDs, Array< int > &nNodes) const
virtual void print (std::ostream &os) const

Private Member Functions

void allocate (const Mesh &mesh, const BasisFamily &basis, int numFuncs)
void buildMaximalDofTable () const
bool hasBeenAssigned (int cellDim, int cellLID) const
void initMap ()
void setDOFs (int cellDim, int cellLID, int &nextDOF, bool isRemote=false)
void shareDOFs (int cellDim, const Array< Array< int > > &outgoingCellRequests)
void computeOffsets (int dim, int localCount)
const Array< int > & funcIDList () const

Static Private Member Functions

static int uninitializedVal ()

Private Attributes

int dim_
Array< Array< Array< int > > > dofs_
Array< int > maximalDofs_
bool haveMaximalDofs_
Array< Array< Array< Array
< int > > > > 
localNodePtrs_
Array< int > nNodesPerCell_
Array< int > totalNNodesPerCell_
Array< Array< int > > numFacets_
Array< Array< int > > originalFacetOrientation_
bool basisIsContinuous_

Detailed Description

A HomogeneousDOFMap is a DOF map for the special (and common) case in which every function has the same basis and is defined on every cell in the mesh.

Definition at line 63 of file SundanceHomogeneousDOFMap.hpp.


Constructor & Destructor Documentation

Sundance::HomogeneousDOFMap::HomogeneousDOFMap ( const Mesh mesh,
const BasisFamily basis,
int  numFuncs 
)
HomogeneousDOFMap::HomogeneousDOFMap ( const Mesh mesh,
const BasisFamily basis,
const Array< CellFilter > &  subregions,
int  numFuncs 
)

Definition at line 98 of file SundanceHomogeneousDOFMap.cpp.

References allocate(), Sundance::dimension(), and initMap().

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

Definition at line 78 of file SundanceHomogeneousDOFMap.hpp.


Member Function Documentation

void HomogeneousDOFMap::allocate ( const Mesh mesh,
const BasisFamily basis,
int  numFuncs 
) [private]
void HomogeneousDOFMap::buildMaximalDofTable ( ) const [private]
void HomogeneousDOFMap::computeOffsets ( int  dim,
int  localCount 
) [private]
const Array<int>& Sundance::HomogeneousDOFMap::funcIDList ( ) const [inline, private]
void HomogeneousDOFMap::getDOFsForCellBatch ( int  cellDim,
const Array< int > &  cellLID,
Array< int > &  dofs,
Array< Array< int > > &  funcIDs,
Array< int > &  nNodes 
) const [virtual]
bool Sundance::HomogeneousDOFMap::hasBeenAssigned ( int  cellDim,
int  cellLID 
) const [inline, private]

Definition at line 106 of file SundanceHomogeneousDOFMap.hpp.

References Sundance::DOFMapBase::cellDim(), dofs_, and uninitializedVal().

Referenced by computeOffsets(), and initMap().

void HomogeneousDOFMap::initMap ( ) [private]
void HomogeneousDOFMap::print ( std::ostream &  os) const [virtual]
void HomogeneousDOFMap::setDOFs ( int  cellDim,
int  cellLID,
int &  nextDOF,
bool  isRemote = false 
) [private]
void HomogeneousDOFMap::shareDOFs ( int  cellDim,
const Array< Array< int > > &  outgoingCellRequests 
) [private]
static int Sundance::HomogeneousDOFMap::uninitializedVal ( ) [inline, static, private]

Definition at line 126 of file SundanceHomogeneousDOFMap.hpp.

Referenced by allocate(), and hasBeenAssigned().


Member Data Documentation

Definition at line 146 of file SundanceHomogeneousDOFMap.hpp.

Referenced by allocate(), and initMap().

Array<Array<Array<int> > > Sundance::HomogeneousDOFMap::dofs_ [private]

Definition at line 134 of file SundanceHomogeneousDOFMap.hpp.

Referenced by buildMaximalDofTable(), and getDOFsForCellBatch().

Array<Array<Array<Array<int> > > > Sundance::HomogeneousDOFMap::localNodePtrs_ [private]
Array<int> Sundance::HomogeneousDOFMap::maximalDofs_ [mutable, private]

Definition at line 132 of file SundanceHomogeneousDOFMap.hpp.

Referenced by buildMaximalDofTable(), and getDOFsForCellBatch().

Definition at line 138 of file SundanceHomogeneousDOFMap.hpp.

Referenced by allocate(), initMap(), and setDOFs().

Array<Array<int> > Sundance::HomogeneousDOFMap::numFacets_ [private]

Definition at line 142 of file SundanceHomogeneousDOFMap.hpp.

Referenced by allocate(), and initMap().

Site Contact