Public Member Functions | |
PartialElementDOFMap (const Mesh &mesh, const CellFilter &subdomain, int nFuncs, int setupVerb) | |
virtual | ~PartialElementDOFMap () |
RCP< const MapStructure > | getDOFsForCellBatch (int cellDim, const Array< int > &cellLID, const Set< int > &requestedFuncSet, Array< Array< int > > &dofs, Array< int > &nNodes, int verbosity) const |
RCP< const Set< int > > | allowedFuncsOnCellBatch (int cellDim, const Array< int > &cellLID) const |
const Array< CellFilter > & | funcDomains () const |
virtual void | print (std::ostream &os) const |
Protected Member Functions | |
void | init () |
void | computeOffsets (int localCount) |
void | shareRemoteDOFs (const Array< Array< int > > &remoteElems) |
Protected Attributes | |
int | dim_ |
int | nFuncs_ |
int | nElems_ |
CellFilter | subdomain_ |
Array< CellFilter > | funcDomains_ |
Array< int > | elemDofs_ |
RCP< MapStructure > | structure_ |
RCP< const Set< int > > | allFuncs_ |
Definition at line 51 of file SundancePartialElementDOFMap.hpp.
PartialElementDOFMap::PartialElementDOFMap | ( | const Mesh & | mesh, | |
const CellFilter & | subdomain, | |||
int | nFuncs, | |||
int | setupVerb | |||
) |
Definition at line 45 of file SundancePartialElementDOFMap.cpp.
References allFuncs_, init(), nFuncs_, and Sundance::Set< Key, Compare >::put().
virtual Sundance::PartialElementDOFMap::~PartialElementDOFMap | ( | ) | [inline, virtual] |
Definition at line 61 of file SundancePartialElementDOFMap.hpp.
RCP< const Set< int > > PartialElementDOFMap::allowedFuncsOnCellBatch | ( | int | cellDim, | |
const Array< int > & | cellLID | |||
) | const [virtual] |
void PartialElementDOFMap::computeOffsets | ( | int | localCount | ) | [protected] |
Definition at line 191 of file SundancePartialElementDOFMap.cpp.
References Sundance::DOFMapBase::comm(), Sundance::Mesh::comm(), elemDofs_, Playa::MPIComm::getNProc(), Playa::MPIComm::getRank(), Sundance::DOFMapBase::mesh(), nElems_, nFuncs_, Sundance::DOFMapBase::setLowestLocalDOF(), Sundance::DOFMapBase::setNumLocalDOFs(), and Sundance::DOFMapBase::setTotalNumDOFs().
Referenced by init().
const Array<CellFilter>& Sundance::PartialElementDOFMap::funcDomains | ( | ) | const [inline, virtual] |
Implements Sundance::DOFMapBase.
Definition at line 78 of file SundancePartialElementDOFMap.hpp.
References funcDomains_.
RCP< const MapStructure > PartialElementDOFMap::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 67 of file SundancePartialElementDOFMap.cpp.
References Sundance::DOFMapBase::batchedDofLookupTimer(), dim_, elemDofs_, Sundance::Mesh::maxCofacetLID(), Sundance::DOFMapBase::mesh(), nFuncs_, structure_, and SUNDANCE_MSG3.
void PartialElementDOFMap::init | ( | ) | [protected] |
Definition at line 130 of file SundancePartialElementDOFMap.cpp.
References Sundance::CellSet::begin(), Sundance::DOFMapBase::cellDim(), Sundance::DOFMapBase::comm(), computeOffsets(), elemDofs_, Sundance::CellSet::end(), Sundance::CellFilter::getCells(), Sundance::DOFMapBase::isRemote(), Sundance::Mesh::mapLIDToGID(), Sundance::DOFMapBase::mesh(), nFuncs_, Sundance::DOFMapBase::setupVerb(), shareRemoteDOFs(), Sundance::Mesh::spatialDim(), subdomain_, and SUNDANCE_MSG1.
Referenced by PartialElementDOFMap().
void PartialElementDOFMap::print | ( | std::ostream & | os | ) | const [virtual] |
Implements Sundance::DOFMapBase.
Definition at line 314 of file SundancePartialElementDOFMap.cpp.
References elemDofs_.
void PartialElementDOFMap::shareRemoteDOFs | ( | const Array< Array< int > > & | remoteElems | ) | [protected] |
Definition at line 220 of file SundancePartialElementDOFMap.cpp.
References Sundance::DOFMapBase::addGhostIndex(), Sundance::DOFMapBase::cellDim(), Sundance::DOFMapBase::comm(), Sundance::Mesh::comm(), elemDofs_, Playa::MPIComm::getNProc(), Playa::MPIComm::getRank(), Sundance::Mesh::mapGIDToLID(), Sundance::DOFMapBase::mesh(), nFuncs_, Sundance::DOFMapBase::setupVerb(), Sundance::Mesh::spatialDim(), SUNDANCE_MSG2, SUNDANCE_MSG3, and SUNDANCE_MSG4.
Referenced by init().
RCP<const Set<int> > Sundance::PartialElementDOFMap::allFuncs_ [protected] |
Definition at line 99 of file SundancePartialElementDOFMap.hpp.
Referenced by PartialElementDOFMap().
int Sundance::PartialElementDOFMap::dim_ [protected] |
Definition at line 92 of file SundancePartialElementDOFMap.hpp.
Referenced by getDOFsForCellBatch().
Array<int> Sundance::PartialElementDOFMap::elemDofs_ [protected] |
Definition at line 97 of file SundancePartialElementDOFMap.hpp.
Referenced by computeOffsets(), getDOFsForCellBatch(), init(), print(), and shareRemoteDOFs().
Array<CellFilter> Sundance::PartialElementDOFMap::funcDomains_ [protected] |
int Sundance::PartialElementDOFMap::nElems_ [protected] |
int Sundance::PartialElementDOFMap::nFuncs_ [protected] |
Definition at line 93 of file SundancePartialElementDOFMap.hpp.
Referenced by computeOffsets(), getDOFsForCellBatch(), init(), PartialElementDOFMap(), and shareRemoteDOFs().
RCP<MapStructure> Sundance::PartialElementDOFMap::structure_ [protected] |
Definition at line 98 of file SundancePartialElementDOFMap.hpp.
Referenced by getDOFsForCellBatch().
CellFilter Sundance::PartialElementDOFMap::subdomain_ [protected] |