43 #ifndef PANZER_EVALUATOR_TENSOR_TO_STD_VECTOR_DECL_HPP 44 #define PANZER_EVALUATOR_TENSOR_TO_STD_VECTOR_DECL_HPP 49 #include "Phalanx_Evaluator_Macros.hpp" 50 #include "Phalanx_Field.hpp" 64 PHX_EVALUATOR_CLASS(TensorToStdVector)
72 PHX_EVALUATOR_CLASS_END
86 template <typename EvalT,typename
Traits>
88 const
std::
string & vectorPrefix,
95 using Teuchos::rcp_const_cast;
98 for(std::size_t i=0;i<postfix.size();i++)
99 vectorNames->push_back(vectorPrefix+postfix[i]);
102 input.set(
"Tensor Name", tensorName);
104 input.set(
"Data Layout Tensor",rcp_const_cast<PHX::DataLayout>(tensorLayout));
105 input.set(
"Data Layout Vector",rcp_const_cast<PHX::DataLayout>(vectorLayout));
107 return rcp(
new TensorToStdVector<EvalT,Traits>(
input));
121 template <
typename EvalT,
typename Traits>
123 const std::vector<std::string> & postfix,
127 return tensorToStdVectorEvaluator<EvalT,Traits>(tensorName,tensorName,postfix,tensorLayout,vectorLayout);
std::vector< PHX::MDField< ScalarT, Cell, Point, Dim > > vector_fields
Vector (to be filled)
PHX::MDField< const ScalarT > input
PHX::MDField< ScalarT > vector
PHX::MDField< ScalarT, Cell, Point, Dim, Dim > tensor_field
Transform at Tensor to a std::vector of PHX-vectors.
PHX_EVALUATOR_CLASS_END Teuchos::RCP< PHX::Evaluator< Traits > > tensorToStdVectorEvaluator(const std::string &tensorName, const std::string &vectorPrefix, const std::vector< std::string > &postfix, const Teuchos::RCP< const PHX::DataLayout > &tensorLayout, const Teuchos::RCP< const PHX::DataLayout > &vectorLayout)
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
RCP< const T > getConst() const