43 #ifndef __Panzer_SGUtilities_hpp__
44 #define __Panzer_SGUtilities_hpp__
46 #include "Panzer_config.hpp"
50 #include "Stokhos_OrthogPolyExpansion.hpp"
59 template <
typename ScalarT>
63 { value = in_vector[0]; }
75 if(in_vector.size()>0)
82 value.reset(expansion);
88 for(std::size_t i=0;i<in_vector.size();i++)
89 value.fastAccessCoeff(i) = in_vector[i];
90 for(
int i=in_vector.size();i<value.size();i++)
91 value.fastAccessCoeff(i) = 0.0;
103 if(in_vector.size()>0)
104 value = in_vector[0];
111 value.val().reset(expansion);
112 value.val().copyForWrite();
117 for(std::size_t i=0;i<in_vector.size();i++)
118 value.val().fastAccessCoeff(i) = in_vector[i];
119 for(
int i=in_vector.size();i<value.val().size();i++)
120 value.val().fastAccessCoeff(i) = 0.0;
bool is_null(const std::shared_ptr< T > &p)
void vectorToValue(const std::vector< double > &in_vector, const Teuchos::RCP< Stokhos::OrthogPolyExpansion< int, double > > &expansion, ScalarT &value)
Converts a vector value into a scalar depending on the scalar type.
#define TEUCHOS_ASSERT(assertion_test)