OGS
|
Definition at line 120 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 123 of file MatrixElementCache.h.
|
inline |
Definition at line 128 of file MatrixElementCache.h.
References ProcessLib::Assembly::MatrixElementCache< Dim >::cache_, and ProcessLib::Assembly::MatrixElementCache< Dim >::cache_capacity.
|
inline |
Definition at line 140 of file MatrixElementCache.h.
References ProcessLib::Assembly::MatrixElementCache< Dim >::addToGlobal().
|
inline |
Definition at line 134 of file MatrixElementCache.h.
References ProcessLib::Assembly::MatrixElementCache< Dim >::addToCache().
Referenced by ProcessLib::Assembly::MultiMatrixElementCache::add().
|
inlineprivate |
Definition at line 143 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 158 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 184 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 242 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 219 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 249 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 125 of file MatrixElementCache.h.
Referenced by ProcessLib::Assembly::MatrixElementCache< Dim >::MatrixElementCache().
|
private |
Definition at line 250 of file MatrixElementCache.h.
Referenced by ProcessLib::Assembly::MatrixElementCache< Dim >::addToGlobal().
|
private |