Stokhos Development
Classes | Public Member Functions | Protected Types | Protected Attributes
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]

List of all members.

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  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, bool use_quad_for_times=false)
 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 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.
template<typename FuncT >
void unary_op (const FuncT &func, OrthogPolyApprox< int, float, CUDAStorage< int, float > > &c, const OrthogPolyApprox< int, float, CUDAStorage< int, float > > &a)
template<typename FuncT >
void binary_op (const FuncT &func, OrthogPolyApprox< int, float, CUDAStorage< int, float > > &c, const OrthogPolyApprox< int, float, CUDAStorage< int, float > > &a, const OrthogPolyApprox< int, float, CUDAStorage< int, float > > &b)
template<typename FuncT >
void nary_op (const FuncT &func, OrthogPolyApprox< int, float, Stokhos::CUDAStorage< int, float > > &c, const OrthogPolyApprox< int, float, Stokhos::CUDAStorage< int, float > > **na)
template<typename ExprT1 , typename ExprT2 >
float compute_times_coeff (int k, const ExprT1 &a, const ExprT2 &b) const
template<typename ExprT1 , typename ExprT2 >
float fast_compute_times_coeff (int k, const ExprT1 &a, const ExprT2 &b) const

Protected Types

typedef
OrthogPolyExpansionBase
< ordinal_type, value_type,
node_type >::Cijk_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.
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.

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:
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator