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 52 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 87 of file SundanceHomogeneousDOFMap.cpp.

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

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

Definition at line 67 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]

Definition at line 113 of file SundanceHomogeneousDOFMap.hpp.

Referenced by allocate(), buildMaximalDofTable(), print(), and setDOFs().

virtual void Sundance::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 95 of file SundanceHomogeneousDOFMap.hpp.

References 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 115 of file SundanceHomogeneousDOFMap.hpp.

Referenced by allocate(), and hasBeenAssigned().


Member Data Documentation

Definition at line 135 of file SundanceHomogeneousDOFMap.hpp.

Referenced by allocate(), and initMap().

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

Definition at line 123 of file SundanceHomogeneousDOFMap.hpp.

Referenced by buildMaximalDofTable().

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

Definition at line 125 of file SundanceHomogeneousDOFMap.hpp.

Referenced by allocate(), and buildMaximalDofTable().

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

Definition at line 121 of file SundanceHomogeneousDOFMap.hpp.

Referenced by buildMaximalDofTable().

Definition at line 127 of file SundanceHomogeneousDOFMap.hpp.

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

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

Definition at line 131 of file SundanceHomogeneousDOFMap.hpp.

Referenced by allocate(), and initMap().

Definition at line 133 of file SundanceHomogeneousDOFMap.hpp.

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

Definition at line 129 of file SundanceHomogeneousDOFMap.hpp.

Referenced by allocate(), and buildMaximalDofTable().

Site Contact