44#ifndef STOKHOS_VECTORORTHOGPOLY_HPP
45#define STOKHOS_VECTORORTHOGPOLY_HPP
57 template <
typename coeff_type>
83 const Teuchos::RCP<const Epetra_BlockMap>&
map);
92 const Teuchos::RCP<const Epetra_BlockMap>&
map,
93 const typename traits_type::cloner_type& cloner);
116 const Teuchos::RCP<const Epetra_BlockMap>& new_map,
117 const typename traits_type::cloner_type& cloner);
120 Teuchos::RCP<const Stokhos::OrthogPolyBasis<ordinal_type, value_type> >
133 void evaluate(
const Teuchos::Array<value_type>& basis_values,
134 coeff_type& result)
const;
138 const Teuchos::Array<value_type>& basis_values,
139 const Teuchos::Array<value_type>& basis_norms,
140 const coeff_type& vec);
143 std::ostream&
print(std::ostream& os)
const;
148 Teuchos::RCP<const Stokhos::OrthogPolyBasis<ordinal_type,value_type> >
basis_;
152 template <
typename coeff_type>
155 return vec.
print(os);
Abstract base class for multivariate orthogonal polynomials.
Base traits definition for ProductContainer.
A product (in the mathematical sense) container class whose coefficients are vectors,...
traits_type::value_type value_type
Typename of values.
traits_type::ordinal_type ordinal_type
Typename of ordinals.
Teuchos::RCP< const Epetra_BlockMap > map() const
Return container map.
A container class storing an orthogonal polynomial whose coefficients are vectors,...
Teuchos::RCP< const Stokhos::OrthogPolyBasis< ordinal_type, value_type > > basis() const
Get basis.
VectorOrthogPoly & operator=(const VectorOrthogPoly &)
Assignment.
void sumIntoAllTerms(const value_type &weight, const Teuchos::Array< value_type > &basis_values, const Teuchos::Array< value_type > &basis_norms, const coeff_type &vec)
Evaluate polynomial at supplied basis values.
ProductContainer< coeff_type >::ordinal_type ordinal_type
Typename of ordinals.
virtual ~VectorOrthogPoly()
Destructor.
std::ostream & print(std::ostream &os) const
Print polynomial.
void reset(const Teuchos::RCP< const Stokhos::OrthogPolyBasis< ordinal_type, value_type > > &new_basis, const Teuchos::RCP< const Epetra_BlockMap > &new_map, const typename traits_type::cloner_type &cloner)
Reset to a new basis.
ProductContainer< coeff_type >::traits_type traits_type
Typename of traits.
ProductContainer< coeff_type >::value_type value_type
Typename of values.
Teuchos::RCP< const Stokhos::OrthogPolyBasis< ordinal_type, value_type > > basis_
Basis.
VectorOrthogPoly()
Constructor with no basis.
void evaluate(const Teuchos::Array< value_type > &basis_values, coeff_type &result) const
Evaluate polynomial at supplied basis values.
coeff_type & term(ordinal_type dimension, ordinal_type order)
Get term for dimension dimension and order order.
Top-level namespace for Stokhos classes and functions.
std::ostream & operator<<(std::ostream &os, const ProductContainer< coeff_type > &vec)