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 50 of file SundanceDOFMapBuilder.hpp.
| DOFMapBuilder::DOFMapBuilder | ( | int | setupVerb | ) |
Definition at line 97 of file SundanceDOFMapBuilder.cpp.
| DOFMapBuilder::DOFMapBuilder | ( | const Mesh & | mesh, | |
| const RCP< FunctionSupportResolver > & | fsr, | |||
| bool | findBCCols, | |||
| int | setupVerb | |||
| ) |
| bool DOFMapBuilder::allFuncsAreOmnipresent | ( | const Mesh & | mesh, | |
| const Array< Set< CellFilter > > & | filters | |||
| ) | const |
Definition at line 531 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] |
| Sundance::Map< Set< int >, Set< CellFilter > > DOFMapBuilder::buildFuncSetToCFSetMap | ( | const Array< Set< int > > & | funcSets, | |
| const Array< CellFilter > & | regions, | |||
| const Mesh & | mesh | |||
| ) | const |
Definition at line 436 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 63 of file SundanceDOFMapBuilder.hpp.
References colMap_.
Referenced by Sundance::DiscreteSpace::DiscreteSpace(), and markBCCols().
| const MPIComm& Sundance::DOFMapBuilder::comm | ( | ) | const [inline, private] |
Definition at line 169 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 208 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 409 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 422 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 |
| const RCP<FunctionSupportResolver>& Sundance::DOFMapBuilder::fsr | ( | ) | const [inline] |
| 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 290 of file SundanceDOFMapBuilder.cpp.
References 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 608 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 240 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 265 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 505 of file SundanceDOFMapBuilder.cpp.
References Sundance::Lagrange::order().
Referenced by makeMap().
| bool DOFMapBuilder::hasCommonDomain | ( | const Array< Set< CellFilter > > & | filters | ) | const |
| bool DOFMapBuilder::hasEdgeLocalizedBasis | ( | const Array< RCP< BasisDOFTopologyBase > > & | basis | ) | const |
| bool DOFMapBuilder::hasNodalBasis | ( | const Array< RCP< BasisDOFTopologyBase > > & | basis | ) | const |
Definition at line 484 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 465 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 367 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] |
| const Array<RCP<Array<int> > >& Sundance::DOFMapBuilder::isBCRow | ( | ) | const [inline] |
| bool DOFMapBuilder::isSymmetric | ( | int | block | ) | const [private] |
Definition at line 776 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 564 of file SundanceDOFMapBuilder.cpp.
References Sundance::Set< Key, Compare >::begin(), Sundance::CellFilter::dimension(), Sundance::DimensionalCellFilter::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 108 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 init(), and Sundance::DiscreteSpace::init().
| void DOFMapBuilder::markBCCols | ( | int | block | ) | [private] |
Definition at line 871 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 797 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 710 of file SundanceDOFMapBuilder.cpp.
References Sundance::CellSet::areFacetsOf(), Sundance::CellSet::begin(), Sundance::Set< Key, Compare >::begin(), cellFilterReductionTimer(), Sundance::Set< Key, Compare >::contains(), Sundance::CellFilter::dimension(), Sundance::CellSet::end(), Sundance::Set< Key, Compare >::end(), Sundance::CellFilter::getCells(), Sundance::Set< Key, Compare >::put(), Sundance::CellSet::setDifference(), and Sundance::Mesh::spatialDim().
| bool DOFMapBuilder::regionIsMaximal | ( | int | r | ) | const [private] |
| const Array<RCP<std::set<int> > >& Sundance::DOFMapBuilder::remoteBCCols | ( | ) | const [inline] |
| const Array<RCP<DOFMapBase> >& Sundance::DOFMapBuilder::rowMap | ( | ) | const [inline] |
Definition at line 60 of file SundanceDOFMapBuilder.hpp.
References rowMap_.
Referenced by markBCRows().
| Array< Array< RCP< BasisDOFTopologyBase > > > DOFMapBuilder::testBasisTopologyArray | ( | ) | const |
Definition at line 682 of file SundanceDOFMapBuilder.cpp.
References fsr_, and Sundance::BasisFamily::getBasisTopology().
Referenced by init().
| Array< Array< Set< CellFilter > > > DOFMapBuilder::testCellFilters | ( | ) | const |
Definition at line 624 of file SundanceDOFMapBuilder.cpp.
References Sundance::Set< Key, Compare >::begin(), Sundance::Set< Key, Compare >::end(), fsr_, 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 695 of file SundanceDOFMapBuilder.cpp.
References fsr_, and Sundance::BasisFamily::getBasisTopology().
Referenced by init().
| Array< Array< Set< CellFilter > > > DOFMapBuilder::unkCellFilters | ( | ) | const |
Definition at line 653 of file SundanceDOFMapBuilder.cpp.
References Sundance::Set< Key, Compare >::begin(), Sundance::Set< Key, Compare >::end(), fsr_, 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 954 of file SundanceDOFMapBuilder.cpp.
| Array< Array< BasisFamily > > unkBasisArray | ( | const RCP< FunctionSupportResolver > & | fsr | ) | [related] |
Definition at line 968 of file SundanceDOFMapBuilder.cpp.
Array<RCP<DOFMapBase> > Sundance::DOFMapBuilder::colMap_ [private] |
Definition at line 181 of file SundanceDOFMapBuilder.hpp.
Referenced by colMap(), init(), and markBCCols().
RCP<FunctionSupportResolver> Sundance::DOFMapBuilder::fsr_ [private] |
Definition at line 177 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 185 of file SundanceDOFMapBuilder.hpp.
Referenced by init(), isBCCol(), and markBCCols().
Array<RCP<Array<int> > > Sundance::DOFMapBuilder::isBCRow_ [private] |
Definition at line 183 of file SundanceDOFMapBuilder.hpp.
Referenced by init(), isBCRow(), and markBCRows().
Mesh Sundance::DOFMapBuilder::mesh_ [private] |
Definition at line 175 of file SundanceDOFMapBuilder.hpp.
Referenced by init(), markBCCols(), markBCRows(), and mesh().
Array<RCP<std::set<int> > > Sundance::DOFMapBuilder::remoteBCCols_ [private] |
Definition at line 187 of file SundanceDOFMapBuilder.hpp.
Referenced by markBCCols(), and remoteBCCols().
Array<RCP<DOFMapBase> > Sundance::DOFMapBuilder::rowMap_ [private] |
Definition at line 179 of file SundanceDOFMapBuilder.hpp.
Referenced by init(), markBCRows(), and rowMap().
int Sundance::DOFMapBuilder::verb_ [private] |
Definition at line 173 of file SundanceDOFMapBuilder.hpp.
Referenced by domainToFuncSetMap(), init(), isWholeDomain(), and makeMap().