Public Member Functions | |
| DOFMapBuilder (int setupVerb) | |
| DOFMapBuilder (const Mesh &mesh, const RCP< FunctionSupportResolver > &fsr, bool findBCCols, int setupVerb) | |
| const Array< RCP< DOFMapBase > > & | rowMap () const |
| const Array< RCP< DOFMapBase > > & | colMap () const |
| const Array< RCP< Array< int > > > & | isBCRow () const |
| const Array< RCP< Array< int > > > & | isBCCol () const |
| const Array< RCP< std::set < int > > > & | remoteBCCols () const |
| Array< Array< RCP < BasisDOFTopologyBase > > > | testBasisTopologyArray () const |
| Array< Array< RCP < BasisDOFTopologyBase > > > | unkBasisTopologyArray () const |
| Array< Array< Set< CellFilter > > > | testCellFilters () const |
| Array< Array< Set< CellFilter > > > | unkCellFilters () const |
| const Mesh & | mesh () const |
| RCP< DOFMapBase > | makeMap (const Mesh &mesh, const Array< RCP< BasisDOFTopologyBase > > &basis, const Array< Set< CellFilter > > &filters) |
| bool | hasOmnipresentNodalMap (const Array< RCP< BasisDOFTopologyBase > > &basis, const Mesh &mesh, const Array< Set< CellFilter > > &filters) const |
| bool | hasCommonDomain (const Array< Set< CellFilter > > &filters) const |
| bool | hasNodalBasis (const Array< RCP< BasisDOFTopologyBase > > &basis) const |
| bool | hasEdgeLocalizedBasis (const Array< RCP< BasisDOFTopologyBase > > &basis) const |
| bool | hasCellBasis (const Array< RCP< BasisDOFTopologyBase > > &basis) const |
| bool | filtersAreZeroDimensional (const Mesh &mesh, const Array< Set< CellFilter > > &filters) const |
| bool | allFuncsAreOmnipresent (const Mesh &mesh, const Array< Set< CellFilter > > &filters) const |
| bool | isWholeDomain (const Mesh &mesh, int maxFilterDim, const Set< CellFilter > &filters) const |
| CellFilter | getMaxCellFilter (const Array< Set< CellFilter > > &filters) const |
| void | extractUnkSetsFromFSR (const FunctionSupportResolver &fsr, Array< Set< int > > &funcSets, Array< CellFilter > ®ions) const |
| void | extractVarSetsFromFSR (const FunctionSupportResolver &fsr, Array< Set< int > > &funcSets, Array< CellFilter > ®ions) const |
| const RCP < FunctionSupportResolver > & | fsr () const |
| Sundance::Map< Set< int >, Set < CellFilter > > | buildFuncSetToCFSetMap (const Array< Set< int > > &funcSets, const Array< CellFilter > ®ions, const Mesh &mesh) const |
| void | getSubdomainUnkFuncMatches (const FunctionSupportResolver &fsr, Array< Sundance::Map< CellFilter, Set< int > > > &fmap) const |
| void | getSubdomainVarFuncMatches (const FunctionSupportResolver &fsr, Array< Sundance::Map< CellFilter, Set< int > > > &fmap) const |
| Array< Sundance::Map< Set< int > , CellFilter > > | funcDomains (const Mesh &mesh, const Sundance::Map< CellFilter, Set< int > > &fmap, Sundance::Map< CellFilter, Sundance::Map< Set< int >, CellSet > > &inputToChildrenMap) const |
| Sundance::Map< CellFilter, Set < int > > | domainToFuncSetMap (const Array< Set< CellFilter > > &filters) const |
Static Public Member Functions | |
| static bool & | allowNodalMap () |
Private Member Functions | |
| Set< CellFilter > | reduceCellFilters (const Mesh &mesh, const Set< CellFilter > &inputSet) const |
| bool | hasUnks () const |
| bool | unksAreOmnipresent () const |
| bool | testsAreOmnipresent () const |
| bool | regionIsMaximal (int r) const |
| bool | isSymmetric (int block) const |
| void | markBCRows (int block) |
| void | markBCCols (int block) |
| const MPIComm & | comm () const |
| void | init (bool findBCCols) |
Private Attributes | |
| int | verb_ |
| Mesh | mesh_ |
| RCP< FunctionSupportResolver > | fsr_ |
| Array< RCP< DOFMapBase > > | rowMap_ |
| Array< RCP< DOFMapBase > > | colMap_ |
| Array< RCP< Array< int > > > | isBCRow_ |
| Array< RCP< Array< int > > > | isBCCol_ |
| Array< RCP< std::set< int > > > | remoteBCCols_ |
Related Functions | |
(Note that these are not member functions.) | |
| Array< Array< BasisFamily > > | testBasisArray (const RCP< FunctionSupportResolver > &fsr) |
| Array< Array< BasisFamily > > | unkBasisArray (const RCP< FunctionSupportResolver > &fsr) |
Definition at line 61 of file SundanceDOFMapBuilder.hpp.
| DOFMapBuilder::DOFMapBuilder | ( | int | setupVerb | ) |
Definition at line 108 of file SundanceDOFMapBuilder.cpp.
| DOFMapBuilder::DOFMapBuilder | ( | const Mesh & | mesh, |
| const RCP< FunctionSupportResolver > & | fsr, | ||
| bool | findBCCols, | ||
| int | setupVerb | ||
| ) |
Definition at line 93 of file SundanceDOFMapBuilder.cpp.
References init().
| bool DOFMapBuilder::allFuncsAreOmnipresent | ( | const Mesh & | mesh, |
| const Array< Set< CellFilter > > & | filters | ||
| ) | const |
Definition at line 542 of file SundanceDOFMapBuilder.cpp.
References Playa::MPIComm::allReduce(), Sundance::Set< Key, Compare >::begin(), Sundance::Mesh::comm(), Sundance::Set< Key, Compare >::end(), Playa::MPIDataType::intType(), isWholeDomain(), Sundance::Set< Key, Compare >::put(), and Playa::MPIOp::sumOp().
Referenced by hasOmnipresentNodalMap(), and makeMap().
| static bool& Sundance::DOFMapBuilder::allowNodalMap | ( | ) | [inline, static] |
Definition at line 127 of file SundanceDOFMapBuilder.hpp.
Referenced by makeMap().
| Sundance::Map< Set< int >, Set< CellFilter > > DOFMapBuilder::buildFuncSetToCFSetMap | ( | const Array< Set< int > > & | funcSets, |
| const Array< CellFilter > & | regions, | ||
| const Mesh & | mesh | ||
| ) | const |
Definition at line 447 of file SundanceDOFMapBuilder.cpp.
References Sundance::Map< Key, Value, Compare >::containsKey(), and Sundance::Map< Key, Value, Compare >::put().
| const Array<RCP<DOFMapBase> >& Sundance::DOFMapBuilder::colMap | ( | ) | const [inline] |
Definition at line 74 of file SundanceDOFMapBuilder.hpp.
References colMap_.
Referenced by Sundance::DiscreteSpace::DiscreteSpace(), and markBCCols().
| const MPIComm& Sundance::DOFMapBuilder::comm | ( | ) | const [inline, private] |
Definition at line 180 of file SundanceDOFMapBuilder.hpp.
References Sundance::Mesh::comm(), and mesh().
| Sundance::Map< CellFilter, Set< int > > DOFMapBuilder::domainToFuncSetMap | ( | const Array< Set< CellFilter > > & | filters | ) | const |
Definition at line 219 of file SundanceDOFMapBuilder.cpp.
References Sundance::Set< Key, Compare >::begin(), Sundance::Map< Key, Value, Compare >::containsKey(), Sundance::Set< Key, Compare >::end(), Sundance::Map< Key, Value, Compare >::put(), SUNDANCE_MSG2, and verb_.
Referenced by makeMap().
| void DOFMapBuilder::extractUnkSetsFromFSR | ( | const FunctionSupportResolver & | fsr, |
| Array< Set< int > > & | funcSets, | ||
| Array< CellFilter > & | regions | ||
| ) | const |
Definition at line 420 of file SundanceDOFMapBuilder.cpp.
References Sundance::FunctionSupportResolver::bcUnksOnRegion(), Sundance::FunctionSupportResolver::numRegions(), Sundance::FunctionSupportResolver::region(), Sundance::Set< Key, Compare >::setUnion(), and Sundance::FunctionSupportResolver::unksOnRegion().
| void DOFMapBuilder::extractVarSetsFromFSR | ( | const FunctionSupportResolver & | fsr, |
| Array< Set< int > > & | funcSets, | ||
| Array< CellFilter > & | regions | ||
| ) | const |
Definition at line 433 of file SundanceDOFMapBuilder.cpp.
References Sundance::FunctionSupportResolver::bcVarsOnRegion(), Sundance::FunctionSupportResolver::numRegions(), Sundance::FunctionSupportResolver::region(), Sundance::Set< Key, Compare >::setUnion(), and Sundance::FunctionSupportResolver::varsOnRegion().
| bool DOFMapBuilder::filtersAreZeroDimensional | ( | const Mesh & | mesh, |
| const Array< Set< CellFilter > > & | filters | ||
| ) | const |
Definition at line 527 of file SundanceDOFMapBuilder.cpp.
Referenced by makeMap().
| const RCP<FunctionSupportResolver>& Sundance::DOFMapBuilder::fsr | ( | ) | const [inline] |
Definition at line 140 of file SundanceDOFMapBuilder.hpp.
References fsr_.
| Array< Sundance::Map< Set< int >, CellFilter > > DOFMapBuilder::funcDomains | ( | const Mesh & | mesh, |
| const Sundance::Map< CellFilter, Set< int > > & | fmap, | ||
| Sundance::Map< CellFilter, Sundance::Map< Set< int >, CellSet > > & | inputToChildrenMap | ||
| ) | const |
Definition at line 301 of file SundanceDOFMapBuilder.cpp.
References Sundance::Set< Key, Compare >::begin(), Sundance::Map< Key, Value, Compare >::containsKey(), Sundance::findDisjointFilters(), findFuncDomainTimer(), Sundance::Map< Key, Value, Compare >::put(), and Sundance::Mesh::spatialDim().
Referenced by makeMap().
| CellFilter DOFMapBuilder::getMaxCellFilter | ( | const Array< Set< CellFilter > > & | filters | ) | const |
Definition at line 619 of file SundanceDOFMapBuilder.cpp.
References Sundance::Set< Key, Compare >::begin(), Playa::Handle< PointerType >::ptr(), and Sundance::Set< Key, Compare >::size().
Referenced by makeMap().
| void DOFMapBuilder::getSubdomainUnkFuncMatches | ( | const FunctionSupportResolver & | fsr, |
| Array< Sundance::Map< CellFilter, Set< int > > > & | fmap | ||
| ) | const |
Definition at line 251 of file SundanceDOFMapBuilder.cpp.
References Sundance::FunctionSupportResolver::bcUnksOnRegion(), Sundance::Set< Key, Compare >::begin(), Sundance::FunctionSupportResolver::blockForUnkID(), Sundance::Set< Key, Compare >::end(), Sundance::FunctionSupportResolver::numRegions(), Sundance::FunctionSupportResolver::numUnkBlocks(), Sundance::FunctionSupportResolver::region(), Sundance::Set< Key, Compare >::setUnion(), and Sundance::FunctionSupportResolver::unksOnRegion().
| void DOFMapBuilder::getSubdomainVarFuncMatches | ( | const FunctionSupportResolver & | fsr, |
| Array< Sundance::Map< CellFilter, Set< int > > > & | fmap | ||
| ) | const |
Definition at line 276 of file SundanceDOFMapBuilder.cpp.
References Sundance::FunctionSupportResolver::bcVarsOnRegion(), Sundance::Set< Key, Compare >::begin(), Sundance::FunctionSupportResolver::blockForVarID(), Sundance::Set< Key, Compare >::end(), Sundance::FunctionSupportResolver::numRegions(), Sundance::FunctionSupportResolver::numVarBlocks(), Sundance::FunctionSupportResolver::region(), Sundance::Set< Key, Compare >::setUnion(), and Sundance::FunctionSupportResolver::varsOnRegion().
| bool DOFMapBuilder::hasCellBasis | ( | const Array< RCP< BasisDOFTopologyBase > > & | basis | ) | const |
Definition at line 516 of file SundanceDOFMapBuilder.cpp.
References Sundance::Lagrange::order().
Referenced by makeMap().
| bool DOFMapBuilder::hasCommonDomain | ( | const Array< Set< CellFilter > > & | filters | ) | const |
Definition at line 485 of file SundanceDOFMapBuilder.cpp.
Referenced by makeMap().
| bool DOFMapBuilder::hasEdgeLocalizedBasis | ( | const Array< RCP< BasisDOFTopologyBase > > & | basis | ) | const |
Definition at line 506 of file SundanceDOFMapBuilder.cpp.
Referenced by makeMap().
| bool DOFMapBuilder::hasNodalBasis | ( | const Array< RCP< BasisDOFTopologyBase > > & | basis | ) | const |
Definition at line 495 of file SundanceDOFMapBuilder.cpp.
References Sundance::Lagrange::order().
Referenced by hasOmnipresentNodalMap(), and makeMap().
| bool DOFMapBuilder::hasOmnipresentNodalMap | ( | const Array< RCP< BasisDOFTopologyBase > > & | basis, |
| const Mesh & | mesh, | ||
| const Array< Set< CellFilter > > & | filters | ||
| ) | const |
Definition at line 476 of file SundanceDOFMapBuilder.cpp.
References allFuncsAreOmnipresent(), and hasNodalBasis().
Referenced by makeMap().
| bool Sundance::DOFMapBuilder::hasUnks | ( | ) | const [private] |
| void DOFMapBuilder::init | ( | bool | findBCCols | ) | [private] |
Definition at line 378 of file SundanceDOFMapBuilder.cpp.
References colMap_, fsr_, isBCCol_, isBCRow_, isSymmetric(), makeMap(), markBCCols(), markBCRows(), mesh_, rowMap_, SUNDANCE_MSG1, SUNDANCE_MSG2, testBasisTopologyArray(), testCellFilters(), unkBasisTopologyArray(), unkCellFilters(), and verb_.
Referenced by DOFMapBuilder().
| const Array<RCP<Array<int> > >& Sundance::DOFMapBuilder::isBCCol | ( | ) | const [inline] |
Definition at line 80 of file SundanceDOFMapBuilder.hpp.
References isBCCol_.
| const Array<RCP<Array<int> > >& Sundance::DOFMapBuilder::isBCRow | ( | ) | const [inline] |
Definition at line 77 of file SundanceDOFMapBuilder.hpp.
References isBCRow_.
| bool DOFMapBuilder::isSymmetric | ( | int | block | ) | const [private] |
Definition at line 787 of file SundanceDOFMapBuilder.cpp.
References fsr_, and Sundance::BasisFamily::getBasis().
Referenced by init().
| bool DOFMapBuilder::isWholeDomain | ( | const Mesh & | mesh, |
| int | maxFilterDim, | ||
| const Set< CellFilter > & | filters | ||
| ) | const |
Definition at line 575 of file SundanceDOFMapBuilder.cpp.
References Sundance::Set< Key, Compare >::begin(), Sundance::DimensionalCellFilter::dimension(), Sundance::CellFilter::dimension(), Sundance::Set< Key, Compare >::end(), Sundance::CellFilter::getCells(), Sundance::CellSet::numCells(), Playa::Handle< PointerType >::ptr(), Sundance::CellSet::setDifference(), Sundance::Mesh::spatialDim(), SUNDANCE_MSG2, and verb_.
Referenced by allFuncsAreOmnipresent().
| RCP< DOFMapBase > DOFMapBuilder::makeMap | ( | const Mesh & | mesh, |
| const Array< RCP< BasisDOFTopologyBase > > & | basis, | ||
| const Array< Set< CellFilter > > & | filters | ||
| ) |
Definition at line 119 of file SundanceDOFMapBuilder.cpp.
References allFuncsAreOmnipresent(), allowNodalMap(), Sundance::Mesh::allowsHangingHodes(), DOFBuilderCtorTimer(), domainToFuncSetMap(), filtersAreZeroDimensional(), funcDomains(), getMaxCellFilter(), hasCellBasis(), hasCommonDomain(), hasEdgeLocalizedBasis(), hasNodalBasis(), hasOmnipresentNodalMap(), Playa::Out::os(), SUNDANCE_MSG1, SUNDANCE_MSG2, and verb_.
Referenced by Sundance::DiscreteSpace::init(), and init().
| void DOFMapBuilder::markBCCols | ( | int | block | ) | [private] |
Definition at line 882 of file SundanceDOFMapBuilder.cpp.
References Sundance::Set< Key, Compare >::begin(), Sundance::CellSet::begin(), colMap(), colMap_, Sundance::CellFilter::dimension(), Sundance::Set< Key, Compare >::elements(), Sundance::Set< Key, Compare >::end(), Sundance::CellSet::end(), fsr_, Sundance::CellFilter::getCells(), isBCCol_, mesh_, Sundance::Set< Key, Compare >::put(), remoteBCCols_, and Sundance::Set< Key, Compare >::size().
Referenced by init().
| void DOFMapBuilder::markBCRows | ( | int | block | ) | [private] |
Definition at line 808 of file SundanceDOFMapBuilder.cpp.
References Sundance::Set< Key, Compare >::begin(), Sundance::CellSet::begin(), Sundance::CellFilter::dimension(), Sundance::Set< Key, Compare >::elements(), Sundance::Set< Key, Compare >::end(), Sundance::CellSet::end(), fsr_, Sundance::CellFilter::getCells(), isBCRow_, mesh_, Sundance::Set< Key, Compare >::put(), rowMap(), rowMap_, and Sundance::Set< Key, Compare >::size().
Referenced by init().
| const Mesh& Sundance::DOFMapBuilder::mesh | ( | ) | const [inline] |
| Set< CellFilter > DOFMapBuilder::reduceCellFilters | ( | const Mesh & | mesh, |
| const Set< CellFilter > & | inputSet | ||
| ) | const [private] |
Definition at line 721 of file SundanceDOFMapBuilder.cpp.
References Sundance::CellSet::areFacetsOf(), Sundance::Set< Key, Compare >::begin(), Sundance::CellSet::begin(), cellFilterReductionTimer(), Sundance::Set< Key, Compare >::contains(), Sundance::CellFilter::dimension(), Sundance::Set< Key, Compare >::end(), Sundance::CellSet::end(), Sundance::CellFilter::getCells(), Sundance::Set< Key, Compare >::put(), Sundance::CellSet::setDifference(), and Sundance::Mesh::spatialDim().
| bool DOFMapBuilder::regionIsMaximal | ( | int | r | ) | const [private] |
Definition at line 802 of file SundanceDOFMapBuilder.cpp.
References fsr_.
| const Array<RCP<std::set<int> > >& Sundance::DOFMapBuilder::remoteBCCols | ( | ) | const [inline] |
Definition at line 84 of file SundanceDOFMapBuilder.hpp.
References remoteBCCols_.
| const Array<RCP<DOFMapBase> >& Sundance::DOFMapBuilder::rowMap | ( | ) | const [inline] |
Definition at line 71 of file SundanceDOFMapBuilder.hpp.
References rowMap_.
Referenced by markBCRows().
| Array< Array< RCP< BasisDOFTopologyBase > > > DOFMapBuilder::testBasisTopologyArray | ( | ) | const |
Definition at line 693 of file SundanceDOFMapBuilder.cpp.
References fsr_, and Sundance::BasisFamily::getBasisTopology().
Referenced by init().
| Array< Array< Set< CellFilter > > > DOFMapBuilder::testCellFilters | ( | ) | const |
Definition at line 635 of file SundanceDOFMapBuilder.cpp.
References Sundance::Set< Key, Compare >::begin(), Sundance::Set< Key, Compare >::end(), fsr_, Playa::Handle< PointerType >::ptr(), and Sundance::Set< Key, Compare >::put().
Referenced by init().
| bool Sundance::DOFMapBuilder::testsAreOmnipresent | ( | ) | const [private] |
| Array< Array< RCP< BasisDOFTopologyBase > > > DOFMapBuilder::unkBasisTopologyArray | ( | ) | const |
Definition at line 706 of file SundanceDOFMapBuilder.cpp.
References fsr_, and Sundance::BasisFamily::getBasisTopology().
Referenced by init().
| Array< Array< Set< CellFilter > > > DOFMapBuilder::unkCellFilters | ( | ) | const |
Definition at line 664 of file SundanceDOFMapBuilder.cpp.
References Sundance::Set< Key, Compare >::begin(), Sundance::Set< Key, Compare >::end(), fsr_, Playa::Handle< PointerType >::ptr(), and Sundance::Set< Key, Compare >::put().
Referenced by Sundance::DiscreteSpace::DiscreteSpace(), and init().
| bool Sundance::DOFMapBuilder::unksAreOmnipresent | ( | ) | const [private] |
| Array< Array< BasisFamily > > testBasisArray | ( | const RCP< FunctionSupportResolver > & | fsr | ) | [related] |
Definition at line 965 of file SundanceDOFMapBuilder.cpp.
| Array< Array< BasisFamily > > unkBasisArray | ( | const RCP< FunctionSupportResolver > & | fsr | ) | [related] |
Definition at line 979 of file SundanceDOFMapBuilder.cpp.
Array<RCP<DOFMapBase> > Sundance::DOFMapBuilder::colMap_ [private] |
Definition at line 192 of file SundanceDOFMapBuilder.hpp.
Referenced by colMap(), init(), and markBCCols().
RCP<FunctionSupportResolver> Sundance::DOFMapBuilder::fsr_ [private] |
Definition at line 188 of file SundanceDOFMapBuilder.hpp.
Referenced by fsr(), init(), isSymmetric(), markBCCols(), markBCRows(), regionIsMaximal(), testBasisTopologyArray(), testCellFilters(), unkBasisTopologyArray(), and unkCellFilters().
Array<RCP<Array<int> > > Sundance::DOFMapBuilder::isBCCol_ [private] |
Definition at line 196 of file SundanceDOFMapBuilder.hpp.
Referenced by init(), isBCCol(), and markBCCols().
Array<RCP<Array<int> > > Sundance::DOFMapBuilder::isBCRow_ [private] |
Definition at line 194 of file SundanceDOFMapBuilder.hpp.
Referenced by init(), isBCRow(), and markBCRows().
Mesh Sundance::DOFMapBuilder::mesh_ [private] |
Definition at line 186 of file SundanceDOFMapBuilder.hpp.
Referenced by init(), markBCCols(), markBCRows(), and mesh().
Array<RCP<std::set<int> > > Sundance::DOFMapBuilder::remoteBCCols_ [private] |
Definition at line 198 of file SundanceDOFMapBuilder.hpp.
Referenced by markBCCols(), and remoteBCCols().
Array<RCP<DOFMapBase> > Sundance::DOFMapBuilder::rowMap_ [private] |
Definition at line 190 of file SundanceDOFMapBuilder.hpp.
Referenced by init(), markBCRows(), and rowMap().
int Sundance::DOFMapBuilder::verb_ [private] |
Definition at line 184 of file SundanceDOFMapBuilder.hpp.
Referenced by domainToFuncSetMap(), init(), isWholeDomain(), and makeMap().