Stokhos Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Stokhos_SmolyakSparseGridQuadrature.hpp
Go to the documentation of this file.
1 // @HEADER
2 // *****************************************************************************
3 // Stokhos Package
4 //
5 // Copyright 2009 NTESS and the Stokhos contributors.
6 // SPDX-License-Identifier: BSD-3-Clause
7 // *****************************************************************************
8 // @HEADER
9 
10 #ifndef STOKHOS_SMOLYAK_SPARSE_GRID_QUADRATURE_HPP
11 #define STOKHOS_SMOLYAK_SPARSE_GRID_QUADRATURE_HPP
12 
13 #include "Stokhos_Quadrature.hpp"
14 #include "Stokhos_ProductBasis.hpp"
16 #include "Teuchos_RCP.hpp"
17 
18 namespace Stokhos {
19 
28  template < typename ordinal_type, typename value_type,
29  typename point_compare_type =
30  typename DefaultPointCompare<ordinal_type,value_type>::type >
32  public Quadrature<ordinal_type,value_type> {
33  public:
34 
36 
41  template <typename index_set_type>
43  const Teuchos::RCP<const ProductBasis<ordinal_type,value_type> >& product_basis,
44  const index_set_type& index_set,
45  const value_type duplicate_tol = 1.0e-12,
46  const point_compare_type& point_compare = point_compare_type());
47 
50 
52  virtual ordinal_type size() const { return quad_weights.size(); }
53 
55 
60  getQuadPoints() const;
61 
63 
66  virtual const Teuchos::Array<value_type>&
67  getQuadWeights() const;
68 
70 
75  getBasisAtQuadPoints() const;
76 
78  virtual std::ostream& print(std::ostream& os) const;
79 
80  private:
81 
82  // Prohibit copying
84 
85  // Prohibit Assignment
87 
88  protected:
89 
92 
95 
98 
99  }; // class SmolyakSparseGridQuadrature
100 
101 } // namespace Stokhos
102 
103 // Include template definitions
105 
106 #endif //STOKHOS_SMOLYAK_SPARSE_GRID_QUADRATURE_HPP
SmolyakSparseGridQuadrature(const Teuchos::RCP< const ProductBasis< ordinal_type, value_type > > &product_basis, const index_set_type &index_set, const value_type duplicate_tol=1.0e-12, const point_compare_type &point_compare=point_compare_type())
Constructor.
Teuchos::Array< Teuchos::Array< value_type > > quad_values
Quadrature values.
Defines quadrature for a tensor product basis by Smolyak sparse grids.
virtual const Teuchos::Array< value_type > & getQuadWeights() const
Get quadrature weights.
Abstract base class for quadrature methods.
virtual const Teuchos::Array< Teuchos::Array< value_type > > & getQuadPoints() const
Get quadrature points.
Abstract base class for multivariate orthogonal polynomials generated from tensor products of univari...
Teuchos::Array< value_type > quad_weights
Quadrature weights.
SmolyakSparseGridQuadrature & operator=(const SmolyakSparseGridQuadrature &b)
size_type size() const
virtual const Teuchos::Array< Teuchos::Array< value_type > > & getBasisAtQuadPoints() const
Get values of basis at quadrature points.
Teuchos::Array< Teuchos::Array< value_type > > quad_points
Quadrature points.
virtual ordinal_type size() const
Get number of quadrature points.
virtual std::ostream & print(std::ostream &os) const
Print quadrature data.