11 #ifndef Panzer_STK_MeshFactory_hpp__
12 #define Panzer_STK_MeshFactory_hpp__
15 #include <Teuchos_ParameterListAcceptorDefaultBase.hpp>
17 #include <stk_util/parallel/Parallel.hpp>
21 namespace panzer_stk {
78 "Rebalance list is incorrect:\n" << entry <<
"\nA Zoltan list formated with strings is expected.");
81 mesh.
rebalance(Teuchos::getValue<Teuchos::ParameterList>(entry));
97 double getMeshCoord(
const int nx,
const double deltaX,
const double x0)
const {
98 double x =
static_cast<double>(nx)*deltaX;
99 double modX = std::abs(x);
100 double modX0 = std::abs(x0);
102 if ((x0*x < 0.0) && (std::abs(modX-modX0) < std::numeric_limits<double>::epsilon()*modX0)) val=0.0;
virtual void completeMeshConstruction(STK_Interface &mesh, stk::ParallelMachine parallelMach) const =0
ConstIterator end() const
virtual Teuchos::RCP< STK_Interface > buildUncommitedMesh(stk::ParallelMachine parallelMach) const =0
static void parsePeriodicBCList(const Teuchos::RCP< Teuchos::ParameterList > &pl, std::vector< Teuchos::RCP< const PeriodicBC_MatcherBase > > &periodicBC, bool &useBBoxSearch)
void setParameterList(const Teuchos::RCP< Teuchos::ParameterList > &pl)
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
virtual Teuchos::RCP< STK_Interface > buildMesh(stk::ParallelMachine parallelMach) const =0
const std::vector< Teuchos::RCP< const PeriodicBC_MatcherBase > > & getMatchers() const
void rebalance(STK_Interface &mesh) const
params_t::ConstIterator ConstIterator
ConstIterator begin() const
Teuchos::RCP< const Teuchos::ParameterList > rebalanceList_
const ParameterEntry & entry(ConstIterator i) const
const bool & useBoundingBoxSearch() const
double getMeshCoord(const int nx, const double deltaX, const double x0) const
void rebalance(const Teuchos::ParameterList ¶ms)
std::vector< Teuchos::RCP< const PeriodicBC_MatcherBase > > periodicBCVec_
void enableRebalance(bool enable, const Teuchos::RCP< const Teuchos::ParameterList > &rebalanceList=Teuchos::null)
void buildLocalElementIDs()