Alien  1.3.0
User documentation
Loading...
Searching...
No Matches
Alien::HCSRInternal::MatrixInternal< ValueT > Class Template Reference

Classes

class  HypreProfile
class  COOProfile

Public Types

typedef ValueT ValueType
typedef MatrixInternal< ValueType > ThisType
typedef SimpleCSRInternal::CSRStructInfo ProfileType
typedef ProfileType::IndexType IndexType
typedef sycl::buffer< ValueType, 1 > ValueBufferType
typedef sycl::buffer< IndexType, 1 > IndexBufferType

Public Member Functions

 MatrixInternal (ProfileType *profile)
ProfileType & getCSRProfile ()
ProfileType const & getCSRProfile () const
void setValues (ValueT value)
ValueBufferType & values ()
ValueBufferType & values () const
IndexBufferType & kcol ()
IndexBufferType const & kcol () const
IndexBufferType & cols ()
IndexBufferType const & cols () const
HypreProfilegetHypreProfile (IndexType local_offset) const
COOProfilegetCOOProfile (IndexType local_offset, std::size_t ghost_size=0, const int *ghost_uids=nullptr) const
void copyValuesToHost (std::size_t nnz, ValueT *ptr)

Public Attributes

ProfileType * m_profile = nullptr
ValueBufferType m_values
IndexBufferType m_kcol
IndexBufferType m_cols
std::vector< IndexType > m_global_rows_ids
std::vector< IndexType > m_row_sizes
std::unique_ptr< HypreProfilem_hypre_profile
std::unique_ptr< COOProfilem_coo_profile
Integer m_empty_ghost_uids = 0

Detailed Description

template<typename ValueT = Real>
class Alien::HCSRInternal::MatrixInternal< ValueT >

Definition at line 42 of file HCSRMatrixInternal.h.

Member Typedef Documentation

◆ IndexBufferType

template<typename ValueT = Real>
typedef sycl::buffer<IndexType, 1> Alien::HCSRInternal::MatrixInternal< ValueT >::IndexBufferType

Definition at line 51 of file HCSRMatrixInternal.h.

◆ IndexType

template<typename ValueT = Real>
typedef ProfileType::IndexType Alien::HCSRInternal::MatrixInternal< ValueT >::IndexType

Definition at line 49 of file HCSRMatrixInternal.h.

◆ ProfileType

template<typename ValueT = Real>
typedef SimpleCSRInternal::CSRStructInfo Alien::HCSRInternal::MatrixInternal< ValueT >::ProfileType

Definition at line 48 of file HCSRMatrixInternal.h.

◆ ThisType

template<typename ValueT = Real>
typedef MatrixInternal<ValueType> Alien::HCSRInternal::MatrixInternal< ValueT >::ThisType

Definition at line 47 of file HCSRMatrixInternal.h.

◆ ValueBufferType

template<typename ValueT = Real>
typedef sycl::buffer<ValueType, 1> Alien::HCSRInternal::MatrixInternal< ValueT >::ValueBufferType

Definition at line 50 of file HCSRMatrixInternal.h.

◆ ValueType

template<typename ValueT = Real>
typedef ValueT Alien::HCSRInternal::MatrixInternal< ValueT >::ValueType

Definition at line 46 of file HCSRMatrixInternal.h.

Constructor & Destructor Documentation

◆ MatrixInternal()

template<typename ValueT = Real>
Alien::HCSRInternal::MatrixInternal< ValueT >::MatrixInternal ( ProfileType * profile)
inline

Definition at line 85 of file HCSRMatrixInternal.h.

◆ ~MatrixInternal()

template<typename ValueT = Real>
virtual Alien::HCSRInternal::MatrixInternal< ValueT >::~MatrixInternal ( )
inlinevirtual

Definition at line 94 of file HCSRMatrixInternal.h.

Member Function Documentation

◆ cols() [1/2]

template<typename ValueT = Real>
IndexBufferType & Alien::HCSRInternal::MatrixInternal< ValueT >::cols ( )
inline

Definition at line 146 of file HCSRMatrixInternal.h.

◆ cols() [2/2]

template<typename ValueT = Real>
IndexBufferType const & Alien::HCSRInternal::MatrixInternal< ValueT >::cols ( ) const
inline

Definition at line 150 of file HCSRMatrixInternal.h.

◆ copyValuesToHost()

template<typename ValueT = Real>
void Alien::HCSRInternal::MatrixInternal< ValueT >::copyValuesToHost ( std::size_t nnz,
ValueT * ptr )
inline

Definition at line 212 of file HCSRMatrixInternal.h.

◆ getCOOProfile()

template<typename ValueT = Real>
COOProfile & Alien::HCSRInternal::MatrixInternal< ValueT >::getCOOProfile ( IndexType local_offset,
std::size_t ghost_size = 0,
const int * ghost_uids = nullptr ) const
inline

Definition at line 173 of file HCSRMatrixInternal.h.

◆ getCSRProfile() [1/2]

template<typename ValueT = Real>
ProfileType & Alien::HCSRInternal::MatrixInternal< ValueT >::getCSRProfile ( )
inline

Definition at line 97 of file HCSRMatrixInternal.h.

◆ getCSRProfile() [2/2]

template<typename ValueT = Real>
ProfileType const & Alien::HCSRInternal::MatrixInternal< ValueT >::getCSRProfile ( ) const
inline

Definition at line 102 of file HCSRMatrixInternal.h.

◆ getHypreProfile()

template<typename ValueT = Real>
HypreProfile & Alien::HCSRInternal::MatrixInternal< ValueT >::getHypreProfile ( IndexType local_offset) const
inline

Definition at line 154 of file HCSRMatrixInternal.h.

◆ kcol() [1/2]

template<typename ValueT = Real>
IndexBufferType & Alien::HCSRInternal::MatrixInternal< ValueT >::kcol ( )
inline

Definition at line 138 of file HCSRMatrixInternal.h.

◆ kcol() [2/2]

template<typename ValueT = Real>
IndexBufferType const & Alien::HCSRInternal::MatrixInternal< ValueT >::kcol ( ) const
inline

Definition at line 142 of file HCSRMatrixInternal.h.

◆ setValues()

template<typename ValueT = Real>
void Alien::HCSRInternal::MatrixInternal< ValueT >::setValues ( ValueT value)
inline

Definition at line 107 of file HCSRMatrixInternal.h.

◆ values() [1/2]

template<typename ValueT = Real>
ValueBufferType & Alien::HCSRInternal::MatrixInternal< ValueT >::values ( )
inline

Definition at line 128 of file HCSRMatrixInternal.h.

◆ values() [2/2]

template<typename ValueT = Real>
ValueBufferType & Alien::HCSRInternal::MatrixInternal< ValueT >::values ( ) const
inline

Definition at line 133 of file HCSRMatrixInternal.h.

Member Data Documentation

◆ m_cols

template<typename ValueT = Real>
IndexBufferType Alien::HCSRInternal::MatrixInternal< ValueT >::m_cols
mutable

Definition at line 222 of file HCSRMatrixInternal.h.

◆ m_coo_profile

template<typename ValueT = Real>
std::unique_ptr<COOProfile> Alien::HCSRInternal::MatrixInternal< ValueT >::m_coo_profile
mutable

Definition at line 226 of file HCSRMatrixInternal.h.

◆ m_empty_ghost_uids

template<typename ValueT = Real>
Integer Alien::HCSRInternal::MatrixInternal< ValueT >::m_empty_ghost_uids = 0

Definition at line 227 of file HCSRMatrixInternal.h.

◆ m_global_rows_ids

template<typename ValueT = Real>
std::vector<IndexType> Alien::HCSRInternal::MatrixInternal< ValueT >::m_global_rows_ids
mutable

Definition at line 223 of file HCSRMatrixInternal.h.

◆ m_hypre_profile

template<typename ValueT = Real>
std::unique_ptr<HypreProfile> Alien::HCSRInternal::MatrixInternal< ValueT >::m_hypre_profile
mutable

Definition at line 225 of file HCSRMatrixInternal.h.

◆ m_kcol

template<typename ValueT = Real>
IndexBufferType Alien::HCSRInternal::MatrixInternal< ValueT >::m_kcol
mutable

Definition at line 221 of file HCSRMatrixInternal.h.

◆ m_profile

template<typename ValueT = Real>
ProfileType* Alien::HCSRInternal::MatrixInternal< ValueT >::m_profile = nullptr

Definition at line 218 of file HCSRMatrixInternal.h.

◆ m_row_sizes

template<typename ValueT = Real>
std::vector<IndexType> Alien::HCSRInternal::MatrixInternal< ValueT >::m_row_sizes
mutable

Definition at line 224 of file HCSRMatrixInternal.h.

◆ m_values

template<typename ValueT = Real>
ValueBufferType Alien::HCSRInternal::MatrixInternal< ValueT >::m_values
mutable

Definition at line 220 of file HCSRMatrixInternal.h.


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