Stokhos Development
Loading...
Searching...
No Matches
Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type > Class Template Reference

Base class for consolidating common expansion implementations. More...

#include <Stokhos_OrthogPolyExpansionBase.hpp>

Inheritance diagram for Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >:
Collaboration diagram for Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >:

Public Member Functions

 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 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 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 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 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 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 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.
virtual void exp (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void log (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void log10 (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void sqrt (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void cbrt (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual 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)=0
virtual void cos (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void sin (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void tan (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void cosh (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void sinh (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void tanh (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void acos (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void asin (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void atan (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void acosh (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void asinh (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0
virtual void atanh (OrthogPolyApprox< ordinal_type, value_type, node_type > &c, const OrthogPolyApprox< ordinal_type, value_type, node_type > &a)=0

Protected Types

typedef Stokhos::Sparse3Tensor< ordinal_type, value_typeCijk_type
 Short-hand for Cijk.

Protected Attributes

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_typetp_type
 Typename of TripleProduct tensor.

Detailed Description

template<typename ordinal_type, typename value_type, typename node_type>
class Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >

Base class for consolidating common expansion implementations.

Implements a few of the OrthogPolyExpansion virtual methods that are common to several implementations so those implementations are duplicated.

Member Function Documentation

◆ abs()

template<typename ordinal_type, typename value_type, typename node_type>
void Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::abs ( Stokhos::OrthogPolyApprox< ordinal_type, value_type, node_type > & c,
const OrthogPolyApprox< ordinal_type, value_type, node_type > & a )
virtual

◆ divide()

template<typename ordinal_type, typename value_type, typename node_type>
void Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::divide ( Stokhos::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 )
virtual

◆ divideEqual()

template<typename ordinal_type, typename value_type, typename node_type>
void Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::divideEqual ( Stokhos::OrthogPolyApprox< ordinal_type, value_type, node_type > & c,
const value_type & x )
virtual

◆ fabs()

template<typename ordinal_type, typename value_type, typename node_type>
void Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::fabs ( Stokhos::OrthogPolyApprox< ordinal_type, value_type, node_type > & c,
const OrthogPolyApprox< ordinal_type, value_type, node_type > & a )
virtual

◆ getBasis()

template<typename ordinal_type, typename value_type, typename node_type>
Teuchos::RCP< const OrthogPolyBasis< ordinal_type, value_type > > Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::getBasis ( ) const
inlinevirtual

◆ getTripleProduct()

template<typename ordinal_type, typename value_type, typename node_type>
virtual Teuchos::RCP< const Sparse3Tensor< ordinal_type, value_type > > Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::getTripleProduct ( ) const
inlinevirtual

◆ max()

template<typename ordinal_type, typename value_type, typename node_type>
void Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::max ( Stokhos::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 )
virtual

◆ min()

template<typename ordinal_type, typename value_type, typename node_type>
void Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::min ( Stokhos::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 )
virtual

◆ minus()

template<typename ordinal_type, typename value_type, typename node_type>
void Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::minus ( Stokhos::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 )
virtual

◆ minusEqual()

template<typename ordinal_type, typename value_type, typename node_type>
void Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::minusEqual ( Stokhos::OrthogPolyApprox< ordinal_type, value_type, node_type > & c,
const value_type & x )
virtual

◆ plus()

template<typename ordinal_type, typename value_type, typename node_type>
void Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::plus ( Stokhos::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 )
virtual

◆ plusEqual()

template<typename ordinal_type, typename value_type, typename node_type>
void Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::plusEqual ( Stokhos::OrthogPolyApprox< ordinal_type, value_type, node_type > & c,
const value_type & x )
virtual

◆ size()

template<typename ordinal_type, typename value_type, typename node_type>
ordinal_type Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::size ( ) const
inlinevirtual

◆ times()

template<typename ordinal_type, typename value_type, typename node_type>
void Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::times ( Stokhos::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 )
virtual

◆ timesEqual()

template<typename ordinal_type, typename value_type, typename node_type>
void Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::timesEqual ( Stokhos::OrthogPolyApprox< ordinal_type, value_type, node_type > & c,
const value_type & x )
virtual

◆ unaryMinus()

template<typename ordinal_type, typename value_type, typename node_type>
void Stokhos::OrthogPolyExpansionBase< ordinal_type, value_type, node_type >::unaryMinus ( Stokhos::OrthogPolyApprox< ordinal_type, value_type, node_type > & c,
const OrthogPolyApprox< ordinal_type, value_type, node_type > & a )
virtual

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