Stokhos::JacobiBasis< ordinal_type, value_type > Class Template Reference

Jacobi polynomial basis. More...

#include <Stokhos_JacobiBasis.hpp>

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

List of all members.

Public Member Functions

 JacobiBasis (ordinal_type p, value_type alphaIndex, value_type betaIndex, bool normalize=false)
 Constructor.
 ~JacobiBasis ()
 Destructor.
Implementation of Stokhos::OneDOrthogPolyBasis methods

virtual ordinal_type getRule () const
 Get sparse grid rule number as defined by Dakota's webbur package.
virtual value_type getQuadWeightFactor () const
 Get quadrature weight factor as defined by Dakota's webbur package.
virtual value_type getQuadPointFactor () const
 Get quadrature point factor as defined by Dakota's webbur package.

Protected Member Functions

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.

Detailed Description

template<typename ordinal_type, typename value_type>
class Stokhos::JacobiBasis< ordinal_type, value_type >

Jacobi polynomial basis.

Jacobi polynomials are defined by the recurrence relationship

\[ A_k \psi_{k+1}(x) = \left(B_k-x C_k\right) \psi_k(x) - D_k \psi_{k-1}(x)\right) \]

with $\psi_{-1}(x) = 0$ and $\psi_{0}(x) = 1$ where

\[ A_n = 2 (n+1)(n+\alpha+\beta+1)(2 n + \alpha+\beta) \]

\[ B_n = -(2n+\alpha+\beta+1)(\alpha^2 - \beta^2) \]

\[ C_n = (2n+\alpha+\beta)_3 \]

\[ D_n = 2(n+\alpha)(n+\beta)(2n+\alpha+\beta+2). \]

In Stokhos notation we have

\[ \gamma_{k+1}=1/A_{k} \]

\[ \alpha_k = B_k \] \f[ \delta_k = C_k \] \f[ \beta_k = D_k. \] The corresponding density function is \f[ \rho(x) = w_{\alpha_,\beta}(1-x)^\alpha (1+x)^\beta, \quad x\in[-1,1] \]

with

\[ w_{\alpha,\beta}^{-1}=\frac{2^{\alpha+\beta+1}}{\alpha+\beta+1} \frac{\Gamma(\alpha+1)\Gamma(\beta+1)}{\Gamma(\alpha+\beta+1)}. \]

This class implements computeRecurrenceCoefficients() using the above formula.

Author:
Kevin Long (kevin.long@ttu.edu)

Constructor & Destructor Documentation

template<typename ordinal_type , typename value_type >
Stokhos::JacobiBasis< ordinal_type, value_type >::JacobiBasis ( ordinal_type  p,
value_type  alphaIndex,
value_type  betaIndex,
bool  normalize = false 
) [inline]

Constructor.

Parameters:
p order of the basis
normalize whether polynomials should be given unit norm

Member Function Documentation

template<typename ordinal_type , typename value_type >
virtual value_type Stokhos::JacobiBasis< ordinal_type, value_type >::getQuadPointFactor (  )  const [inline, virtual]

Get quadrature point factor as defined by Dakota's webbur package.

This method is needed for building Smolyak sparse grids out of this basis.

template<typename ordinal_type , typename value_type >
virtual value_type Stokhos::JacobiBasis< ordinal_type, value_type >::getQuadWeightFactor (  )  const [inline, virtual]

Get quadrature weight factor as defined by Dakota's webbur package.

This method is needed for building Smolyak sparse grids out of this basis.

template<typename ordinal_type , typename value_type >
virtual ordinal_type Stokhos::JacobiBasis< ordinal_type, value_type >::getRule (  )  const [inline, virtual]

Get sparse grid rule number as defined by Dakota's webbur package.

This method is needed for building Smolyak sparse grids out of this basis.


The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator
Generated on Wed Apr 13 09:58:15 2011 for Stokhos by  doxygen 1.6.3