Stokhos
Development
|
Orthogonal polynomial expansions based on numerical quadrature. More...
#include <Stokhos_QuadOrthogPolyExpansion.hpp>
Classes | |
struct | acos_quad_func |
struct | acosh_quad_func |
struct | asin_quad_func |
struct | asinh_quad_func |
struct | atan2_quad_func |
struct | atan_quad_func |
struct | atanh_quad_func |
struct | cbrt_quad_func |
struct | cos_quad_func |
struct | cosh_quad_func |
struct | div_quad_func |
struct | exp_quad_func |
struct | log10_quad_func |
struct | log_quad_func |
struct | pow_quad_func |
struct | sin_quad_func |
struct | sinh_quad_func |
struct | sqrt_quad_func |
struct | tan_quad_func |
struct | tanh_quad_func |
struct | times_quad_func |
Public Member Functions | |
QuadOrthogPolyExpansion (const Teuchos::RCP< const OrthogPolyBasis< ordinal_type, value_type > > &basis, const Teuchos::RCP< const Stokhos::Sparse3Tensor< ordinal_type, value_type > > &Cijk, const Teuchos::RCP< const Quadrature< ordinal_type, value_type > > &quad, const Teuchos::RCP< Teuchos::ParameterList > ¶ms=Teuchos::null) | |
Constructor. | |
virtual | ~QuadOrthogPolyExpansion () |
Destructor. | |
void | timesEqual (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &x) |
void | divideEqual (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &x) |
void | timesEqual (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &x) |
void | divideEqual (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &x) |
void | times (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | times (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | times (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const value_type &b) |
void | divide (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | divide (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | divide (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const value_type &b) |
void | exp (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | log (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | log10 (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | sqrt (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | cbrt (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | pow (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | pow (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | pow (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const value_type &b) |
void | cos (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | sin (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | tan (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | cosh (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | sinh (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | tanh (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | acos (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | asin (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | atan (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | atan2 (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | atan2 (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | atan2 (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const value_type &b) |
void | acosh (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | asinh (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | atanh (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
template<typename FuncT > | |
void | nary_op (const FuncT &func, OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > **a) |
template<typename ExprT1 , typename ExprT2 > | |
value_type | compute_times_coeff (ordinal_type k, const ExprT1 &a, const ExprT2 &b) const |
template<typename ExprT1 , typename ExprT2 > | |
value_type | fast_compute_times_coeff (ordinal_type k, const ExprT1 &a, const ExprT2 &b) const |
template<typename FuncT > | |
void | unary_op (const FuncT &func, OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
Nonlinear unary function. | |
template<typename FuncT > | |
void | binary_op (const FuncT &func, OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
Nonlinear binary function. | |
template<typename FuncT > | |
void | binary_op (const FuncT &func, OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
Nonlinear binary function. | |
template<typename FuncT > | |
void | binary_op (const FuncT &func, OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const value_type &b) |
Nonlinear binary function. | |
Public Member Functions inherited from Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type > | |
OrthogPolyExpansionBase (const Teuchos::RCP< const OrthogPolyBasis< ordinal_type, value_type > > &basis, const Teuchos::RCP< const Stokhos::Sparse3Tensor< ordinal_type, value_type > > &Cijk, const Teuchos::RCP< Teuchos::ParameterList > ¶ms=Teuchos::null) | |
Constructor. | |
virtual | ~OrthogPolyExpansionBase () |
Destructor. | |
ordinal_type | size () const |
Get expansion size. | |
Teuchos::RCP< const OrthogPolyBasis< ordinal_type, value_type > > | getBasis () const |
Get basis. | |
virtual Teuchos::RCP< const Sparse3Tensor< ordinal_type, value_type > > | getTripleProduct () const |
Get triple product. | |
void | unaryMinus (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | plusEqual (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &x) |
void | minusEqual (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &x) |
void | plusEqual (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &x) |
void | minusEqual (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &x) |
void | plus (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | plus (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | plus (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const value_type &b) |
void | minus (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | minus (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | minus (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const value_type &b) |
void | abs (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | fabs (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a) |
void | max (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | max (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | max (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const value_type &b) |
void | min (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | min (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const value_type &a, const OrthogPolyApprox< ordinal_type, value_type, node_type > &b) |
void | min (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a, const value_type &b) |
Public Member Functions inherited from Stokhos::OrthogPolyExpansion< ordinal_type, value_type, node_type > | |
OrthogPolyExpansion () | |
Constructor. | |
virtual | ~OrthogPolyExpansion () |
Destructor. | |
Protected Types | |
typedef OrthogPolyExpansionBase < ordinal_type, value_type, node_type >::Cijk_type | Cijk_type |
Short-hand for Cijk. | |
Protected Types inherited from Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type > | |
typedef Stokhos::Sparse3Tensor < ordinal_type, value_type > | Cijk_type |
Short-hand for Cijk. | |
Protected Attributes | |
Teuchos::RCP< const Quadrature < ordinal_type, value_type > > | quad |
Quadrature routine. | |
bool | use_quad_for_times |
Use quadrature for times functions. | |
bool | use_quad_for_division |
Use quadrature for division functions. | |
ordinal_type | sz |
Expansions size. | |
Teuchos::BLAS< ordinal_type, value_type > | blas |
BLAS wrappers. | |
const Teuchos::Array < Teuchos::Array< value_type > > & | quad_points |
Array of Quad points. | |
const Teuchos::Array < value_type > & | quad_weights |
Array of Quad weights. | |
const Teuchos::Array < Teuchos::Array< value_type > > & | quad_values |
Values of basis at Quad points. | |
const Teuchos::Array < value_type > & | norms |
Norms of basis vectors. | |
ordinal_type | nqp |
Number of Quad points. | |
Teuchos::Array< value_type > | avals |
Temporary array for values of first argument at quad points. | |
Teuchos::Array< value_type > | bvals |
Temporary array for values of second argument at quad points. | |
Teuchos::Array< Teuchos::Array < Teuchos::Array< value_type > > > | navals |
Temporary array for values of n-ary arguments at quad points. | |
Teuchos::Array< value_type > | fvals |
Temporary array for values of operation at quad points. | |
Teuchos::Array< value_type > | qv |
Reshaped quad values into 1D array. | |
Teuchos::Array< value_type > | sqv |
Quad values scaled by norms. | |
Protected Attributes inherited from Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type > | |
Teuchos::RCP< const OrthogPolyBasis< ordinal_type, value_type > > | basis |
Basis. | |
Teuchos::RCP< const Stokhos::Sparse3Tensor < ordinal_type, value_type > > | Cijk |
Triple-product tensor. | |
Teuchos::RCP < Teuchos::ParameterList > | params |
Parameter list. | |
Teuchos::RCP < Stokhos::DivisionExpansionStrategy < ordinal_type, value_type, node_type > > | division_strategy |
Division expansion strategy. | |
ordinal_type | sz |
Expansions size. | |
Additional Inherited Members | |
Public Types inherited from Stokhos::OrthogPolyExpansion< ordinal_type, value_type, node_type > | |
typedef Sparse3Tensor < ordinal_type, value_type > | tp_type |
Typename of TripleProduct tensor. | |
Orthogonal polynomial expansions based on numerical quadrature.