Stokhos Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Private Attributes | List of all members
Stokhos::SymmetricDiagonalSpec< ExecutionSpace > Class Template Reference

Symmetric diagonal storage for a dense matrix. More...

#include <Stokhos_SymmetricDiagonalSpec.hpp>

Public Types

typedef unsigned size_type
 

Public Member Functions

KOKKOS_INLINE_FUNCTION unsigned dimension () const
 Dimension of vector block. More...
 
KOKKOS_INLINE_FUNCTION unsigned matrix_offset (const unsigned row, const unsigned column) const
 Storage location for the (row,column) entry. More...
 
KOKKOS_INLINE_FUNCTION unsigned matrix_size () const
 Storage size for block coefficients. More...
 
 SymmetricDiagonalSpec ()
 
 SymmetricDiagonalSpec (const SymmetricDiagonalSpec &rhs)
 
SymmetricDiagonalSpecoperator= (const SymmetricDiagonalSpec &rhs)
 
 SymmetricDiagonalSpec (const unsigned dim)
 

Private Attributes

unsigned m_dimension
 

Detailed Description

template<class ExecutionSpace>
class Stokhos::SymmetricDiagonalSpec< ExecutionSpace >

Symmetric diagonal storage for a dense matrix.

Block storage size = dimension * ( dimension + 1 ) / 2

Given block_dim then total_diagonal_count = 1 + dimension / 2

If dimension is even then the last diagonal is only half length.

{ a11 , a22 , a33 , a44 , a55 , ... } { a12 , a23 , a34 , a45 , a56 , ... } { a13 , a24 , a35 , a46 , a57 , ... }

Definition at line 31 of file Stokhos_SymmetricDiagonalSpec.hpp.

Member Typedef Documentation

template<class ExecutionSpace >
typedef unsigned Stokhos::SymmetricDiagonalSpec< ExecutionSpace >::size_type

Definition at line 34 of file Stokhos_SymmetricDiagonalSpec.hpp.

Constructor & Destructor Documentation

template<class ExecutionSpace >
Stokhos::SymmetricDiagonalSpec< ExecutionSpace >::SymmetricDiagonalSpec ( )
inline

Definition at line 64 of file Stokhos_SymmetricDiagonalSpec.hpp.

template<class ExecutionSpace >
Stokhos::SymmetricDiagonalSpec< ExecutionSpace >::SymmetricDiagonalSpec ( const SymmetricDiagonalSpec< ExecutionSpace > &  rhs)
inline

Definition at line 67 of file Stokhos_SymmetricDiagonalSpec.hpp.

template<class ExecutionSpace >
Stokhos::SymmetricDiagonalSpec< ExecutionSpace >::SymmetricDiagonalSpec ( const unsigned  dim)
inlineexplicit

Definition at line 75 of file Stokhos_SymmetricDiagonalSpec.hpp.

Member Function Documentation

template<class ExecutionSpace >
KOKKOS_INLINE_FUNCTION unsigned Stokhos::SymmetricDiagonalSpec< ExecutionSpace >::dimension ( ) const
inline

Dimension of vector block.

Definition at line 38 of file Stokhos_SymmetricDiagonalSpec.hpp.

template<class ExecutionSpace >
KOKKOS_INLINE_FUNCTION unsigned Stokhos::SymmetricDiagonalSpec< ExecutionSpace >::matrix_offset ( const unsigned  row,
const unsigned  column 
) const
inline

Storage location for the (row,column) entry.

Definition at line 42 of file Stokhos_SymmetricDiagonalSpec.hpp.

template<class ExecutionSpace >
KOKKOS_INLINE_FUNCTION unsigned Stokhos::SymmetricDiagonalSpec< ExecutionSpace >::matrix_size ( ) const
inline

Storage size for block coefficients.

Definition at line 61 of file Stokhos_SymmetricDiagonalSpec.hpp.

template<class ExecutionSpace >
SymmetricDiagonalSpec& Stokhos::SymmetricDiagonalSpec< ExecutionSpace >::operator= ( const SymmetricDiagonalSpec< ExecutionSpace > &  rhs)
inline

Definition at line 71 of file Stokhos_SymmetricDiagonalSpec.hpp.

Member Data Documentation

template<class ExecutionSpace >
unsigned Stokhos::SymmetricDiagonalSpec< ExecutionSpace >::m_dimension
private

Definition at line 79 of file Stokhos_SymmetricDiagonalSpec.hpp.


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