43 #ifndef __Panzer_STK_PeriodicBC_MatchConditions_hpp__
44 #define __Panzer_STK_PeriodicBC_MatchConditions_hpp__
46 #include "Teuchos_Tuple.hpp"
66 std::string errStr =
"CoordMatcher \"" + std::string(1,
labels_[
index_]) +
"-coord\" takes at most two parameters <tol, relative>";
67 TEUCHOS_TEST_FOR_EXCEPTION(params.size()>2,std::logic_error,errStr);
75 std::string errStr = params[1] +
" is not a valid periodic option (try \"relative\")";
76 TEUCHOS_TEST_FOR_EXCEPTION(params[1]!=
"relative",std::logic_error,errStr);
92 const Teuchos::Tuple<double,3> & b)
const
102 std::stringstream ss;
122 +
"-coord\" takes at most two parameter <tol, relative>";
123 TEUCHOS_TEST_FOR_EXCEPTION(params.size()>2,std::logic_error,errStr);
126 if(params.size()==1) {
127 std::stringstream ss;
130 if(params.size()==2){
131 std::string errStr = params[1] +
" is not a valid periodic option (try \"relative\")";
132 TEUCHOS_TEST_FOR_EXCEPTION(params[1]!=
"relative",std::logic_error,errStr);
146 PlaneMatcher(
int index0,
int index1,
const std::vector<std::string> & params)
154 const Teuchos::Tuple<double,3> & b)
const
165 std::stringstream ss;
184 +
"-quarter-coord\" takes only one parameter <tol>";
185 TEUCHOS_TEST_FOR_EXCEPTION(params.size()>1,std::logic_error,errStr);
188 if(params.size()==1) {
189 std::stringstream ss;
199 { TEUCHOS_ASSERT(index0a!=index1); TEUCHOS_ASSERT(index0b!=index1);
buildLabels(); }
203 { TEUCHOS_ASSERT(index0a!=index1); TEUCHOS_ASSERT(index0b!=index1);
buildLabels(); }
214 const Teuchos::Tuple<double,3> & b)
const
220 std::stringstream ss;