Stokhos  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Classes | Public Member Functions | Protected Types | Protected Attributes | List of all members
Stokhos::QuadOrthogPolyExpansion< ordinal_type, value_type, node_type > Class Template Reference

Orthogonal polynomial expansions based on numerical quadrature. More...

#include <Stokhos_QuadOrthogPolyExpansion.hpp>

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

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 > &params=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 > &params=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.
 

Detailed Description

template<typename ordinal_type, typename value_type, typename node_type = Stokhos::StandardStorage<ordinal_type, value_type>>
class Stokhos::QuadOrthogPolyExpansion< ordinal_type, value_type, node_type >

Orthogonal polynomial expansions based on numerical quadrature.


The documentation for this class was generated from the following files: