PolyFEM
Loading...
Searching...
No Matches
polyfem::utils::MatrixCache Class Referenceabstract

abstract class used for caching More...

#include <MatrixCache.hpp>

Inheritance diagram for polyfem::utils::MatrixCache:
[legend]

Public Member Functions

 MatrixCache ()
 
virtual ~MatrixCache ()=default
 
virtual std::unique_ptr< MatrixCachecopy () const =0
 
virtual void init (const size_t size)=0
 
virtual void init (const size_t rows, const size_t cols)=0
 
virtual void init (const MatrixCache &other)=0
 
virtual void set_zero ()=0
 
virtual void reserve (const size_t size)=0
 
virtual size_t entries_size () const =0
 
virtual size_t capacity () const =0
 
virtual size_t non_zeros () const =0
 
virtual size_t triplet_count () const =0
 
virtual bool is_sparse () const =0
 
bool is_dense () const
 
virtual void add_value (const int e, const int i, const int j, const double value)=0
 
virtual StiffnessMatrix get_matrix (const bool compute_mapping=true)=0
 
virtual void prune ()=0
 
virtual std::shared_ptr< MatrixCacheoperator+ (const MatrixCache &a) const =0
 
virtual void operator+= (const MatrixCache &o)=0
 

Detailed Description

abstract class used for caching

Definition at line 13 of file MatrixCache.hpp.

Constructor & Destructor Documentation

◆ MatrixCache()

polyfem::utils::MatrixCache::MatrixCache ( )
inline

Definition at line 16 of file MatrixCache.hpp.

◆ ~MatrixCache()

virtual polyfem::utils::MatrixCache::~MatrixCache ( )
virtualdefault

Member Function Documentation

◆ add_value()

virtual void polyfem::utils::MatrixCache::add_value ( const int  e,
const int  i,
const int  j,
const double  value 
)
pure virtual

◆ capacity()

virtual size_t polyfem::utils::MatrixCache::capacity ( ) const
pure virtual

◆ copy()

virtual std::unique_ptr< MatrixCache > polyfem::utils::MatrixCache::copy ( ) const
pure virtual

◆ entries_size()

virtual size_t polyfem::utils::MatrixCache::entries_size ( ) const
pure virtual

◆ get_matrix()

virtual StiffnessMatrix polyfem::utils::MatrixCache::get_matrix ( const bool  compute_mapping = true)
pure virtual

◆ init() [1/3]

virtual void polyfem::utils::MatrixCache::init ( const MatrixCache other)
pure virtual

◆ init() [2/3]

virtual void polyfem::utils::MatrixCache::init ( const size_t  rows,
const size_t  cols 
)
pure virtual

◆ init() [3/3]

virtual void polyfem::utils::MatrixCache::init ( const size_t  size)
pure virtual

◆ is_dense()

bool polyfem::utils::MatrixCache::is_dense ( ) const
inline

Definition at line 33 of file MatrixCache.hpp.

References is_sparse().

Here is the call graph for this function:

◆ is_sparse()

virtual bool polyfem::utils::MatrixCache::is_sparse ( ) const
pure virtual

Implemented in polyfem::utils::SparseMatrixCache, and polyfem::utils::DenseMatrixCache.

Referenced by is_dense().

Here is the caller graph for this function:

◆ non_zeros()

virtual size_t polyfem::utils::MatrixCache::non_zeros ( ) const
pure virtual

◆ operator+()

virtual std::shared_ptr< MatrixCache > polyfem::utils::MatrixCache::operator+ ( const MatrixCache a) const
pure virtual

◆ operator+=()

virtual void polyfem::utils::MatrixCache::operator+= ( const MatrixCache o)
pure virtual

◆ prune()

virtual void polyfem::utils::MatrixCache::prune ( )
pure virtual

◆ reserve()

virtual void polyfem::utils::MatrixCache::reserve ( const size_t  size)
pure virtual

◆ set_zero()

virtual void polyfem::utils::MatrixCache::set_zero ( )
pure virtual

◆ triplet_count()

virtual size_t polyfem::utils::MatrixCache::triplet_count ( ) const
pure virtual

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