10 #ifndef STOKHOS_SPARSEGRIDQUADRATURE
11 #define STOKHOS_SPARSEGRIDQUADRATURE
14 #ifdef HAVE_STOKHOS_DAKOTA
19 #include "pecos_global_defs.hpp"
32 template <
typename ordinal_type,
typename value_type>
33 class SparseGridQuadrature :
public Quadrature<ordinal_type,value_type> {
44 const Teuchos::RCP<
const ProductBasis<ordinal_type,value_type> >& product_basis,
47 ordinal_type growth_rate = Pecos::SLOW_RESTRICTED_GROWTH);
50 virtual ~SparseGridQuadrature() {}
53 virtual ordinal_type size()
const {
return quad_weights.size(); }
61 getQuadPoints()
const;
68 getQuadWeights()
const;
76 getBasisAtQuadPoints()
const;
79 virtual std::ostream& print(std::ostream& os)
const;
84 SparseGridQuadrature(
const SparseGridQuadrature&);
87 SparseGridQuadrature& operator=(
const SparseGridQuadrature& b);
89 static void getMyPoints(
int order,
int dim,
double x[] );
91 static void getMyWeights(
int order,
int dim,
double w[] );
108 static SparseGridQuadrature *sgq;
117 #endif // HAVE_STOKHOS_DAKOTA
119 #endif // STOKHOS_SPARSEGRIDQUADRATURE