42 #ifndef STOKHOS_ORTHOGPOLYEXPANSIONBASE_HPP 43 #define STOKHOS_ORTHOGPOLYEXPANSIONBASE_HPP 48 #include "Teuchos_RCP.hpp" 49 #include "Teuchos_ParameterList.hpp" 58 template <
typename ordinal_type,
typename value_type,
typename node_type>
67 const Teuchos::RCP<Teuchos::ParameterList>&
params = Teuchos::null);
76 Teuchos::RCP< const OrthogPolyBasis<ordinal_type, value_type> >
80 virtual Teuchos::RCP<const Sparse3Tensor<ordinal_type, value_type> >
186 Teuchos::RCP<const OrthogPolyBasis<ordinal_type, value_type> >
basis;
192 Teuchos::RCP<const Stokhos::Sparse3Tensor<ordinal_type, value_type> >
Cijk;
195 Teuchos::RCP<Teuchos::ParameterList>
params;
198 Teuchos::RCP<Stokhos::DivisionExpansionStrategy<ordinal_type,value_type,node_type> >
division_strategy;
209 #endif // STOKHOS_ORTHOGPOLYEXPANSIONBASE_HPP void divideEqual(OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &x)
Teuchos::RCP< const OrthogPolyBasis< ordinal_type, value_type > > basis
Basis.
Teuchos::RCP< Teuchos::ParameterList > params
Parameter list.
void minusEqual(OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &x)
OrthogPolyExpansionBase & operator=(const OrthogPolyExpansionBase &b)
Data structure storing a sparse 3-tensor C(i,j,k) in a a compressed format.
void divide(OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b)
Teuchos::RCP< Stokhos::DivisionExpansionStrategy< ordinal_type, value_type, node_type > > division_strategy
Division expansion strategy.
ordinal_type sz
Expansions size.
Base class for consolidating common expansion implementations.
void timesEqual(OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &x)
void max(OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b)
void plusEqual(OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &x)
Abstract base class for orthogonal polynomial-based expansions.
Abstract base class for multivariate orthogonal polynomials.
virtual Teuchos::RCP< const Sparse3Tensor< ordinal_type, value_type > > getTripleProduct() const
Get triple product.
const IndexType const IndexType const IndexType const IndexType const ValueType const ValueType * x
void min(OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b)
Top-level namespace for Stokhos classes and functions.
void plus(OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b)
void minus(OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b)
void times(OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b)
Class to store coefficients of a projection onto an orthogonal polynomial basis.
virtual ~OrthogPolyExpansionBase()
Destructor.
Teuchos::RCP< const OrthogPolyBasis< ordinal_type, value_type > > getBasis() const
Get basis.
void abs(OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)
Teuchos::RCP< const Stokhos::Sparse3Tensor< ordinal_type, value_type > > Cijk
Triple-product tensor.
ordinal_type size() const
Get expansion size.
Stokhos::Sparse3Tensor< ordinal_type, value_type > Cijk_type
Short-hand for Cijk.
void unaryMinus(OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)
void fabs(OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)
OrthogPolyExpansionBase(const Teuchos::RCP< const OrthogPolyBasis< ordinal_type, value_type > > &basis, const Teuchos::RCP< const Stokhos::Sparse3Tensor< ordinal_type, value_type > > &Cijk, const Teuchos::RCP< Teuchos::ParameterList > ¶ms=Teuchos::null)
Constructor.