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::PseudoSpectralOrthogPolyExpansion< ordinal_type, value_type, point_compare_type, node_type > Class Template Reference

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

#include <Stokhos_PseudoSpectralOrthogPolyExpansion.hpp>

Inheritance diagram for Stokhos::PseudoSpectralOrthogPolyExpansion< ordinal_type, value_type, point_compare_type, node_type >:
Inheritance graph
[legend]
Collaboration diagram for Stokhos::PseudoSpectralOrthogPolyExpansion< ordinal_type, value_type, point_compare_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

 PseudoSpectralOrthogPolyExpansion (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 PseudoSpectralOperator< ordinal_type, value_type, point_compare_type > > &ps_op, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor.
 
virtual ~PseudoSpectralOrthogPolyExpansion ()
 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.
 
typedef
Teuchos::SerialDenseVector
< ordinal_type, value_type > 
SDV
 Short-hand for SerialDenseVector.
 
- 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
PseudoSpectralOperator
< ordinal_type, value_type,
point_compare_type > > 
ps_op
 Pseudospectral operator.
 
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.
 
ordinal_type nqp
 Number of Quad points.
 
SDV avals
 Temporary array for values of first argument at quad points.
 
SDV bvals
 Temporary array for values of second argument at quad points.
 
Teuchos::Array< Teuchos::Array
< SDV > > 
navals
 Temporary array for values of n-ary arguments at quad points.
 
SDV fvals
 Temporary array for values of operation at quad points.
 
- 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 point_compare_type = typename DefaultPointCompare<ordinal_type,value_type>::type, typename node_type = Stokhos::StandardStorage<ordinal_type, value_type>>
class Stokhos::PseudoSpectralOrthogPolyExpansion< ordinal_type, value_type, point_compare_type, node_type >

Orthogonal polynomial expansions based on numerical quadrature.


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