Stokhos Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Namespaces | Functions
Stokhos_LTBSparse3Tensor.hpp File Reference
#include <ostream>
#include "Stokhos_TotalOrderBasis.hpp"
#include "Stokhos_OrthogPolyApprox.hpp"
Include dependency graph for Stokhos_LTBSparse3Tensor.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Stokhos::LTBSparse3Tensor< ordinal_type, value_type >
 Data structure storing a sparse 3-tensor C(i,j,k) in a a tree-based format for lexicographically ordered product bases. More...
 
struct  Stokhos::LTBSparse3Tensor< ordinal_type, value_type >::CijkNode
 Node type used in constructing the tree. More...
 
struct  Stokhos::LexicographicTreeBasisNode< ordinal_type >
 
struct  Stokhos::FlatLTBSparse3TensorNode< ordinal_type >
 
struct  Stokhos::FlatLTBSparse3Tensor< ordinal_type, value_type >
 

Namespaces

 Stokhos
 Top-level namespace for Stokhos classes and functions.
 

Functions

template<typename ordinal_type >
Teuchos::RCP
< LexicographicTreeBasisNode
< ordinal_type > > 
Stokhos::build_lexicographic_basis_tree (const Teuchos::ArrayView< const ordinal_type > &basis_orders, const ordinal_type total_order, const ordinal_type index_begin=ordinal_type(0), const ordinal_type order_sum=ordinal_type(0), const Stokhos::MultiIndex< ordinal_type > &term_prefix=Stokhos::MultiIndex< ordinal_type >())
 
template<typename ordinal_type , typename value_type >
Teuchos::RCP< LTBSparse3Tensor
< ordinal_type, value_type > > 
Stokhos::computeTripleProductTensorLTB (const TotalOrderBasis< ordinal_type, value_type, LexographicLess< MultiIndex< ordinal_type > > > &product_basis, bool symmetric=false)
 
template<typename ordinal_type , typename value_type >
Teuchos::RCP< typename
LTBSparse3Tensor< ordinal_type,
value_type >::CijkNode > 
Stokhos::computeCijkLTBNode (const Teuchos::ArrayView< const ordinal_type > &basis_orders, const Teuchos::ArrayView< const Teuchos::RCP< Sparse3Tensor< ordinal_type, value_type > > > &Cijk_1d, const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > &i_ltb, const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > &j_ltb, const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > &k_ltb, const ordinal_type total_order, const bool symmetric, const ordinal_type sum_i=ordinal_type(0), const ordinal_type sum_j=ordinal_type(0), const ordinal_type sum_k=ordinal_type(0), const value_type cijk_base=value_type(1))
 
template<typename ordinal_type , typename value_type >
Teuchos::RCP< LTBSparse3Tensor
< ordinal_type, value_type > > 
Stokhos::computeTripleProductTensorLTBBlockLeaf (const TotalOrderBasis< ordinal_type, value_type, LexographicLess< MultiIndex< ordinal_type > > > &product_basis, bool symmetric=false)
 
template<typename ordinal_type , typename value_type >
Teuchos::RCP< typename
LTBSparse3Tensor< ordinal_type,
value_type >::CijkNode > 
Stokhos::computeCijkLTBNodeBlockLeaf (const Teuchos::ArrayView< const ordinal_type > &basis_orders, const Teuchos::ArrayView< const Teuchos::RCP< Dense3Tensor< ordinal_type, value_type > > > &Cijk_1d, const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > &i_ltb, const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > &j_ltb, const Teuchos::RCP< LexicographicTreeBasisNode< ordinal_type > > &k_ltb, const ordinal_type total_order, const bool symmetric, const ordinal_type sum_i=ordinal_type(0), const ordinal_type sum_j=ordinal_type(0), const ordinal_type sum_k=ordinal_type(0), const value_type cijk_base=value_type(1), const bool parent_j_equals_k=true)
 
template<typename ordinal_type , typename value_type >
Teuchos::RCP
< FlatLTBSparse3Tensor
< ordinal_type, value_type > > 
Stokhos::computeFlatTripleProductTensorLTB (const TotalOrderBasis< ordinal_type, value_type, LexographicLess< MultiIndex< ordinal_type > > > &product_basis, bool symmetric=false)
 
template<int max_size, typename ordinal_type , typename value_type >
void Stokhos::flatLTB3TensorMultiply (OrthogPolyApprox< ordinal_type, value_type > &c, const OrthogPolyApprox< ordinal_type, value_type > &a, const OrthogPolyApprox< ordinal_type, value_type > &b, const FlatLTBSparse3Tensor< ordinal_type, value_type > &cijk)