11 #ifndef PANZER_EVALUATOR_TENSOR_TO_STD_VECTOR_DECL_HPP
12 #define PANZER_EVALUATOR_TENSOR_TO_STD_VECTOR_DECL_HPP
17 #include "Phalanx_Evaluator_Macros.hpp"
18 #include "Phalanx_MDField.hpp"
32 template<
typename EvalT,
typename Traits>
72 template <
typename EvalT,
typename Traits>
74 const std::string & vectorPrefix,
75 const std::vector<std::string> & postfix,
81 using Teuchos::rcp_const_cast;
84 for(std::size_t i=0;i<postfix.size();i++)
85 vectorNames->push_back(vectorPrefix+postfix[i]);
88 input.
set(
"Tensor Name", tensorName);
90 input.
set(
"Data Layout Tensor",rcp_const_cast<PHX::DataLayout>(tensorLayout));
91 input.
set(
"Data Layout Vector",rcp_const_cast<PHX::DataLayout>(vectorLayout));
107 template <
typename EvalT,
typename Traits>
109 const std::vector<std::string> & postfix,
113 return tensorToStdVectorEvaluator<EvalT,Traits>(tensorName,tensorName,postfix,tensorLayout,vectorLayout);
RCP< const T > getConst() const
std::vector< PHX::MDField< ScalarT, Cell, Point, Dim > > vector_fields
Vector (to be filled)
TensorToStdVector(const Teuchos::ParameterList &p)
ParameterList & set(std::string const &name, T &&value, std::string const &docString="", RCP< const ParameterEntryValidator > const &validator=null)
PHX::MDField< const ScalarT, Cell, Point, Dim, Dim > tensor_field
Tensor (to be distributed to vector)
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
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)
typename EvalT::ScalarT ScalarT
Transform at Tensor to a std::vector of PHX-vectors.
void evaluateFields(typename Traits::EvalData d)