Stokhos Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Stokhos_OpenMP_CrsProductTensor.hpp
Go to the documentation of this file.
1 // @HEADER
2 // *****************************************************************************
3 // Stokhos Package
4 //
5 // Copyright 2009 NTESS and the Stokhos contributors.
6 // SPDX-License-Identifier: BSD-3-Clause
7 // *****************************************************************************
8 // @HEADER
9 
10 #ifndef STOKHOS_OPENMP_CRS_PRODUCT_TENSOR_HPP
11 #define STOKHOS_OPENMP_CRS_PRODUCT_TENSOR_HPP
12 
13 #include "Kokkos_Core.hpp"
14 
15 #include "Stokhos_Multiply.hpp"
19 #include "Stokhos_TinyVec.hpp"
20 
21 namespace Stokhos {
22 
23 template< typename ValueType , typename MatrixValue , typename VectorValue >
24 class Multiply<
25  BlockCrsMatrix< StochasticProductTensor< ValueType, CrsProductTensor< ValueType , Kokkos::OpenMP > , Kokkos::OpenMP > , MatrixValue , Kokkos::OpenMP > ,
26  Kokkos::View< VectorValue** , Kokkos::LayoutLeft , Kokkos::OpenMP > ,
27  Kokkos::View< VectorValue** , Kokkos::LayoutLeft , Kokkos::OpenMP > >
28 {
29 public:
33 
34  static void apply( const matrix_type & A ,
35  const block_vector_type & x ,
36  const block_vector_type & y ) {
37  impl_type::apply(A,x,y);
38  }
39 };
40 
41 } // namespace Stokhos
42 
43 #endif /* #ifndef STOKHOS_OPENMP_CRS_PRODUCT_TENSOR_HPP */
Bases defined by combinatorial product of polynomial bases.
Sparse product tensor with replicated entries to provide subsets with a given coordinate.
Kokkos::View< VectorValue **, Kokkos::LayoutLeft, execution_space > block_vector_type
CRS matrix of dense blocks.