58 public PHX::EvaluatorDerived<EvalT, Traits>
63 const Teuchos::ParameterList& p);
82 const std::vector<PHX::Tag<ScalarT>> & output);
101 const std::string & scalarPrefix,
102 const std::vector<std::string> & postfix,
103 const Teuchos::RCP<const PHX::DataLayout> & vectorLayout,
104 const Teuchos::RCP<const PHX::DataLayout> & scalarLayout)
108 using Teuchos::rcp_const_cast;
110 RCP<std::vector<std::string> > scalarNames = rcp(
new std::vector<std::string>);
111 for(std::size_t i=0;i<postfix.size();i++)
112 scalarNames->push_back(scalarPrefix+postfix[i]);
114 Teuchos::ParameterList input;
115 input.set(
"Vector Name",vectorName);
116 input.set(
"Scalar Names",scalarNames.getConst());
117 input.set(
"Data Layout Vector",rcp_const_cast<PHX::DataLayout>(vectorLayout));
118 input.set(
"Data Layout Scalar",rcp_const_cast<PHX::DataLayout>(scalarLayout));
136 const std::vector<std::string> & postfix,
137 const Teuchos::RCP<const PHX::DataLayout> & vectorLayout,
138 const Teuchos::RCP<const PHX::DataLayout> & scalarLayout)
140 return vectorToScalarEvaluator<EvalT,Traits>(vectorName,vectorName,postfix,vectorLayout,scalarLayout);
Teuchos::RCP< PHX::Evaluator< Traits > > vectorToScalarEvaluator(const std::string &vectorName, const std::string &scalarPrefix, const std::vector< std::string > &postfix, const Teuchos::RCP< const PHX::DataLayout > &vectorLayout, const Teuchos::RCP< const PHX::DataLayout > &scalarLayout)