Stokhos Development
Public Member Functions | Protected Member Functions | Protected Attributes
Stokhos::StieltjesBasis< ordinal_type, value_type, func_type > Class Template Reference

Generates three-term recurrence using the Discretized Stieltjes procedure applied to a functional mapping another basis. More...

#include <Stokhos_StieltjesBasis.hpp>

Inheritance diagram for Stokhos::StieltjesBasis< ordinal_type, value_type, func_type >:
Inheritance graph
[legend]
Collaboration diagram for Stokhos::StieltjesBasis< ordinal_type, value_type, func_type >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 StieltjesBasis (ordinal_type p, const Teuchos::RCP< const func_type > &func, const Teuchos::RCP< const Stokhos::Quadrature< ordinal_type, value_type > > &quad, bool use_pce_quad_points, bool normalize=false)
 Constructor.
 ~StieltjesBasis ()
 Destructor.
Implementation of Stokhos::OneDOrthogPolyBasis methods
virtual void getQuadPoints (ordinal_type quad_order, Teuchos::Array< value_type > &points, Teuchos::Array< value_type > &weights, Teuchos::Array< Teuchos::Array< value_type > > &values) const
 Get Gauss quadrature points, weights, and values of basis at points.
virtual Teuchos::RCP
< OneDOrthogPolyBasis
< ordinal_type, value_type > > 
cloneWithOrder (ordinal_type p) const
 Clone this object with the option of building a higher order basis.

Protected Member Functions

void stieltjes (ordinal_type nstart, ordinal_type nfinish, const Teuchos::Array< value_type > &weights, const Teuchos::Array< value_type > &points, Teuchos::Array< value_type > &a, Teuchos::Array< value_type > &b, Teuchos::Array< value_type > &nrm, Teuchos::Array< Teuchos::Array< value_type > > &phi_vals) const
 Compute 3-term recurrence using Stieljtes procedure.
void integrateBasisSquared (ordinal_type k, const Teuchos::Array< value_type > &a, const Teuchos::Array< value_type > &b, const Teuchos::Array< value_type > &weights, const Teuchos::Array< value_type > &points, Teuchos::Array< Teuchos::Array< value_type > > &phi_vals, value_type &val1, value_type &val2) const
 Compute $\int\psi^2_k(t) d\lambda(t)$ and $\int t\psi^2_k(t) d\lambda(t)$.
void evaluateRecurrence (ordinal_type k, const Teuchos::Array< value_type > &a, const Teuchos::Array< value_type > &b, const Teuchos::Array< value_type > &points, Teuchos::Array< Teuchos::Array< value_type > > &values) const
 Evaluate polynomials via 3-term recurrence.
Implementation of Stokhos::RecurrenceBasis methods
virtual void computeRecurrenceCoefficients (ordinal_type n, Teuchos::Array< value_type > &alpha, Teuchos::Array< value_type > &beta, Teuchos::Array< value_type > &delta) const
 Compute recurrence coefficients.

Protected Attributes

Teuchos::RCP< const func_type > func
 PC expansion.
Teuchos::RCP< const
Stokhos::Quadrature
< ordinal_type, value_type > > 
quad
 Quadrature object.
const Teuchos::Array
< value_type > & 
pce_weights
 PCE quadrature weights.
const Teuchos::Array
< Teuchos::Array< value_type > > & 
basis_values
 Values of PCE basis functions at quadrature points.
Teuchos::Array< value_type > func_vals
 Values of func at quadrature points.
Teuchos::Array< Teuchos::Array
< value_type > > 
phi_vals
 Values of generated polynomials at PCE quadrature points.
bool use_pce_quad_points
 Use underlying pce's quadrature data.

Detailed Description

template<typename ordinal_type, typename value_type, typename func_type>
class Stokhos::StieltjesBasis< ordinal_type, value_type, func_type >

Generates three-term recurrence using the Discretized Stieltjes procedure applied to a functional mapping another basis.


Constructor & Destructor Documentation

template<typename ordinal_type , typename value_type , typename func_type >
Stokhos::StieltjesBasis< ordinal_type, value_type, func_type >::StieltjesBasis ( ordinal_type  p,
const Teuchos::RCP< const func_type > &  func,
const Teuchos::RCP< const Stokhos::Quadrature< ordinal_type, value_type > > &  quad,
bool  use_pce_quad_points,
bool  normalize = false 
)

Constructor.

Parameters:
porder of the basis
funcmapping defining new density function
quadquadrature data for basis of PC expansion
use_pce_quad_pointswhether to use quad to define quadrature points for the new basis, or whether to use the Golub-Welsch system.
normalizewhether polynomials should be given unit norm

Member Function Documentation

template<typename ordinal_type , typename value_type , typename func_type >
Teuchos::RCP< Stokhos::OneDOrthogPolyBasis< ordinal_type, value_type > > Stokhos::StieltjesBasis< ordinal_type, value_type, func_type >::cloneWithOrder ( ordinal_type  p) const [virtual]

Clone this object with the option of building a higher order basis.

This method is following the Prototype pattern (see Design Pattern's textbook). The slight variation is that it allows the order of the polynomial to be modified, otherwise an exact copy is formed. The use case for this is creating basis functions for column indices in a spatially varying adaptive refinement context.

Implements Stokhos::OneDOrthogPolyBasis< ordinal_type, value_type >.


The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator