OGS
|
Definition at line 121 of file MatrixElementCache.h.
#include <MatrixElementCache.h>
Public Member Functions | |
MatrixElementCache (GlobalMatView &mat_or_vec, Stats &stats) | |
void | add (std::vector< double > const &local_data, std::vector< GlobalIndexType > const &indices) |
~MatrixElementCache () | |
Private Types | |
using | GlobalMatView = ConcurrentMatrixView<Dim> |
Private Member Functions | |
void | addToCache (std::vector< double > const &values, std::vector< GlobalIndexType > const &indices) |
void | addToCacheImpl (std::vector< double > const &values, std::vector< GlobalIndexType > const &indices, std::integral_constant< std::size_t, 1 >) |
void | addToCacheImpl (std::vector< double > const &values, std::vector< GlobalIndexType > const &indices, std::integral_constant< std::size_t, 2 >) |
void | ensureEnoughSpace (std::size_t const space_needed) |
void | addToGlobal () |
Private Attributes | |
std::vector< MatrixElementCacheEntry< Dim > > | cache_ |
GlobalMatView & | mat_or_vec_ |
Stats & | stats_ |
Static Private Attributes | |
static constexpr std::size_t | cache_capacity = 1'000'000 |
|
private |
Definition at line 124 of file MatrixElementCache.h.
|
inline |
Definition at line 129 of file MatrixElementCache.h.
References ProcessLib::Assembly::MatrixElementCache< Dim >::cache_, and ProcessLib::Assembly::MatrixElementCache< Dim >::cache_capacity.
|
inline |
Definition at line 141 of file MatrixElementCache.h.
References ProcessLib::Assembly::MatrixElementCache< Dim >::addToGlobal().
|
inline |
Definition at line 135 of file MatrixElementCache.h.
References ProcessLib::Assembly::MatrixElementCache< Dim >::addToCache().
Referenced by ProcessLib::Assembly::MultiMatrixElementCache::add().
|
inlineprivate |
Definition at line 144 of file MatrixElementCache.h.
References ProcessLib::Assembly::MatrixElementCache< Dim >::addToCacheImpl(), and ProcessLib::Assembly::MatrixElementCache< Dim >::ensureEnoughSpace().
Referenced by ProcessLib::Assembly::MatrixElementCache< Dim >::add().
|
inlineprivate |
Definition at line 159 of file MatrixElementCache.h.
References ProcessLib::Assembly::MatrixElementCache< Dim >::cache_, ProcessLib::Assembly::Stats::count, ProcessLib::Assembly::Stats::count_nonzero, and ProcessLib::Assembly::MatrixElementCache< Dim >::stats_.
Referenced by ProcessLib::Assembly::MatrixElementCache< Dim >::addToCache().
|
inlineprivate |
Definition at line 185 of file MatrixElementCache.h.
References ProcessLib::Assembly::MatrixElementCache< Dim >::cache_, ProcessLib::Assembly::Stats::count, ProcessLib::Assembly::Stats::count_nonzero, ProcessLib::Assembly::MatrixElementCache< Dim >::stats_, and MathLib::toMatrix().
|
inlineprivate |
Definition at line 243 of file MatrixElementCache.h.
References ProcessLib::Assembly::ConcurrentMatrixView< Dim >::add(), ProcessLib::Assembly::MatrixElementCache< Dim >::cache_, ProcessLib::Assembly::Stats::count_global, ProcessLib::Assembly::MatrixElementCache< Dim >::mat_or_vec_, and ProcessLib::Assembly::MatrixElementCache< Dim >::stats_.
Referenced by ProcessLib::Assembly::MatrixElementCache< Dim >::~MatrixElementCache(), and ProcessLib::Assembly::MatrixElementCache< Dim >::ensureEnoughSpace().
|
inlineprivate |
Definition at line 220 of file MatrixElementCache.h.
References ProcessLib::Assembly::MatrixElementCache< Dim >::addToGlobal(), and ProcessLib::Assembly::MatrixElementCache< Dim >::cache_.
Referenced by ProcessLib::Assembly::MatrixElementCache< Dim >::addToCache().
|
private |
Definition at line 250 of file MatrixElementCache.h.
Referenced by ProcessLib::Assembly::MatrixElementCache< Dim >::MatrixElementCache(), ProcessLib::Assembly::MatrixElementCache< Dim >::addToCacheImpl(), ProcessLib::Assembly::MatrixElementCache< Dim >::addToCacheImpl(), ProcessLib::Assembly::MatrixElementCache< Dim >::addToGlobal(), and ProcessLib::Assembly::MatrixElementCache< Dim >::ensureEnoughSpace().
|
staticconstexprprivate |
Definition at line 126 of file MatrixElementCache.h.
Referenced by ProcessLib::Assembly::MatrixElementCache< Dim >::MatrixElementCache().
|
private |
Definition at line 251 of file MatrixElementCache.h.
Referenced by ProcessLib::Assembly::MatrixElementCache< Dim >::addToGlobal().
|
private |