Generates three-term recurrence using the Lanczos procedure applied to a polynomial chaos expansion in another basis. More...
#include <Stokhos_LanczosPCEBasis.hpp>


Public Member Functions | |
| LanczosPCEBasis (ordinal_type p, const Teuchos::RCP< const Stokhos::OrthogPolyApprox< ordinal_type, value_type > > &pce, const Teuchos::RCP< const Stokhos::Quadrature< ordinal_type, value_type > > &quad, bool normalize, bool limit_integration_order) | |
| Constructor. | |
| ~LanczosPCEBasis () | |
| Destructor. | |
| value_type | getNewCoeffs (ordinal_type i) const |
| Get new coefficients in this new basis. | |
| void | transformCoeffsFromLanczos (const value_type *in, value_type *out) const |
| Map expansion coefficients from this basis to original. | |
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 Types | |
|
typedef WeightedVectorSpace < ordinal_type, value_type > | vectorspace_type |
|
typedef DiagonalOperator < ordinal_type, value_type > | operator_type |
|
typedef Stokhos::Lanczos < vectorspace_type, operator_type > | lanczos_type |
| typedef lanczos_type::matrix_type | matrix_type |
| typedef lanczos_type::vector_type | vector_type |
Protected Member Functions | |
| LanczosPCEBasis (ordinal_type p, const LanczosPCEBasis &basis) | |
| Copy constructor with specified order. | |
Implementation of Stokhos::RecurrenceBasis methods | |
| virtual bool | computeRecurrenceCoefficients (ordinal_type n, Teuchos::Array< value_type > &alpha, Teuchos::Array< value_type > &beta, Teuchos::Array< value_type > &delta, Teuchos::Array< value_type > &gamma) const |
| Compute recurrence coefficients. | |
| virtual void | setup () |
| Setup basis after computing recurrence coefficients. | |
Protected Attributes | |
|
Teuchos::RCP< const Stokhos::OrthogPolyApprox < ordinal_type, value_type > > | pce |
| PCE Lanczos procedure is based on. | |
|
Teuchos::RCP< const Stokhos::Quadrature < ordinal_type, value_type > > | quad |
| Quadrature object. | |
| bool | limit_integration_order |
| Flag indicating whether to limit the integration order. | |
| ordinal_type | nqp |
| Number of quadrature points. | |
| vector_type | pce_weights |
| Quadrature weights. | |
| vector_type | pce_vals |
| Values of PCE at quadrature points. | |
| vector_type | u0 |
| Initial Lanczos vector. | |
| matrix_type | lanczos_vecs |
| Lanczos vectors. | |
| matrix_type | fromStieltjesMat |
| Matrix mapping coefficients in Stieltjes basis back to original basis. | |
| vector_type | new_pce |
| Projection of pce in new basis. | |
Generates three-term recurrence using the Lanczos procedure applied to a polynomial chaos expansion in another basis.
| Stokhos::LanczosPCEBasis< ordinal_type, value_type >::LanczosPCEBasis | ( | ordinal_type | p, |
| const Teuchos::RCP< const Stokhos::OrthogPolyApprox< ordinal_type, value_type > > & | pce, | ||
| const Teuchos::RCP< const Stokhos::Quadrature< ordinal_type, value_type > > & | quad, | ||
| bool | normalize, | ||
| bool | limit_integration_order | ||
| ) |
Constructor.
| p | order of the basis |
| pce | polynomial chaos expansion defining new density function |
| quad | quadrature data for basis of PC expansion |
| Teuchos::RCP< Stokhos::OneDOrthogPolyBasis< ordinal_type, value_type > > Stokhos::LanczosPCEBasis< ordinal_type, value_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 >.
1.7.6.1