44 template <
typename coeff_type>
52 template <
typename coeff_type>
56 const Teuchos::RCP<const Epetra_BlockMap>& theMap) :
62 template <
typename coeff_type>
66 const Teuchos::RCP<const Epetra_BlockMap>& theMap,
67 const typename traits_type::cloner_type& cloner)
73 template <
typename coeff_type>
81 template <
typename coeff_type>
87 template <
typename coeff_type>
99 template <
typename coeff_type>
104 const Teuchos::RCP<const Epetra_BlockMap>& new_map,
111 template <
typename coeff_type>
120 template <
typename coeff_type>
125 Teuchos::RCP< const Stokhos::ProductBasis<ordinal_type, value_type> >
126 product_basis = Teuchos::rcp_dynamic_cast< const Stokhos::ProductBasis<ordinal_type, value_type> >(basis_,
true);
129 theTerm[dimension] = order;
131 return *(this->coeff_[this->map_->LID(
index)]);
134 template <
typename coeff_type>
139 Teuchos::RCP< const Stokhos::ProductBasis<ordinal_type, value_type> >
140 product_basis = Teuchos::rcp_dynamic_cast< const Stokhos::ProductBasis<ordinal_type, value_type> >(basis_,
true);
143 theTerm[dimension] = order;
145 return *(this->coeff_[this->map_->LID(
index)]);
148 template <
typename coeff_type>
151 evaluate(
const Teuchos::Array<value_type>& basis_values, coeff_type& result)
const
159 template <
typename coeff_type>
163 const Teuchos::Array<value_type>& basis_values,
164 const Teuchos::Array<value_type>& basis_norms,
165 const coeff_type& vec)
170 i_gid = this->map_->GID(i);
172 weight*basis_values[i_gid]/basis_norms[i_gid],
177 template <
typename coeff_type>
180 print(std::ostream& os)
const
183 os <<
"Stokhos::VectorOrthogPoly of global size "
184 << this->map_->NumGlobalElements() <<
", local size " << sz <<
" in basis "
185 <<
"\n" << basis_->getName() <<
":" << std::endl;
187 Teuchos::RCP< const Stokhos::ProductBasis<ordinal_type, value_type> >
188 product_basis = Teuchos::rcp_dynamic_cast< const Stokhos::ProductBasis<ordinal_type, value_type> >(basis_);
190 if (product_basis != Teuchos::null) {
193 os <<
"Term " << i <<
" (";
195 os << trm[
j] <<
", ";
196 os << trm[trm.
size()-1] <<
"):" << std::endl;
197 traits_type::print(os, *(this->coeff_[this->map_->LID(i)]));
202 os <<
"Term " << this->map_->GID(i) <<
":" << std::endl;
203 traits_type::print(os, *(this->coeff_[i]));