PolyFEM
Loading...
Searching...
No Matches
polyfem::utils::DenseMatrixCache Class Reference

#include <MatrixCache.hpp>

Inheritance diagram for polyfem::utils::DenseMatrixCache:
[legend]
Collaboration diagram for polyfem::utils::DenseMatrixCache:
[legend]

Public Member Functions

 DenseMatrixCache ()
 
 DenseMatrixCache (const size_t size)
 
 DenseMatrixCache (const size_t rows, const size_t cols)
 
 DenseMatrixCache (const MatrixCache &other)
 
 DenseMatrixCache (const DenseMatrixCache &other)
 
std::unique_ptr< MatrixCachecopy () const override
 
void init (const size_t size) override
 
void init (const size_t rows, const size_t cols) override
 
void init (const MatrixCache &other) override
 
void init (const DenseMatrixCache &other)
 
void set_zero () override
 
void reserve (const size_t size) override
 
size_t entries_size () const override
 
size_t capacity () const override
 
size_t non_zeros () const override
 
size_t triplet_count () const override
 
bool is_sparse () const override
 
void add_value (const int e, const int i, const int j, const double value) override
 
StiffnessMatrix get_matrix (const bool compute_mapping=true) override
 
void prune () override
 
std::shared_ptr< MatrixCacheoperator+ (const MatrixCache &a) const override
 
std::shared_ptr< MatrixCacheoperator+ (const DenseMatrixCache &a) const
 
void operator+= (const MatrixCache &o) override
 
void operator+= (const DenseMatrixCache &o)
 
const Eigen::MatrixXd & mat () const
 
- Public Member Functions inherited from polyfem::utils::MatrixCache
 MatrixCache ()
 
virtual ~MatrixCache ()=default
 
bool is_dense () const
 

Private Attributes

Eigen::MatrixXd mat_
 

Detailed Description

Definition at line 136 of file MatrixCache.hpp.

Constructor & Destructor Documentation

◆ DenseMatrixCache() [1/5]

polyfem::utils::DenseMatrixCache::DenseMatrixCache ( )
inline

Definition at line 139 of file MatrixCache.hpp.

◆ DenseMatrixCache() [2/5]

polyfem::utils::DenseMatrixCache::DenseMatrixCache ( const size_t  size)

Definition at line 327 of file MatrixCache.cpp.

References mat_.

◆ DenseMatrixCache() [3/5]

polyfem::utils::DenseMatrixCache::DenseMatrixCache ( const size_t  rows,
const size_t  cols 
)

Definition at line 332 of file MatrixCache.cpp.

References mat_.

◆ DenseMatrixCache() [4/5]

polyfem::utils::DenseMatrixCache::DenseMatrixCache ( const MatrixCache other)

Definition at line 337 of file MatrixCache.cpp.

References init().

Here is the call graph for this function:

◆ DenseMatrixCache() [5/5]

polyfem::utils::DenseMatrixCache::DenseMatrixCache ( const DenseMatrixCache other)

Definition at line 342 of file MatrixCache.cpp.

References init().

Here is the call graph for this function:

Member Function Documentation

◆ add_value()

void polyfem::utils::DenseMatrixCache::add_value ( const int  e,
const int  i,
const int  j,
const double  value 
)
overridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 372 of file MatrixCache.cpp.

References mat_.

◆ capacity()

size_t polyfem::utils::DenseMatrixCache::capacity ( ) const
inlineoverridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 159 of file MatrixCache.hpp.

References mat_.

◆ copy()

std::unique_ptr< MatrixCache > polyfem::utils::DenseMatrixCache::copy ( ) const
inlineoverridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 145 of file MatrixCache.hpp.

◆ entries_size()

size_t polyfem::utils::DenseMatrixCache::entries_size ( ) const
inlineoverridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 158 of file MatrixCache.hpp.

◆ get_matrix()

polyfem::StiffnessMatrix polyfem::utils::DenseMatrixCache::get_matrix ( const bool  compute_mapping = true)
overridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 379 of file MatrixCache.cpp.

References mat_.

◆ init() [1/4]

void polyfem::utils::DenseMatrixCache::init ( const DenseMatrixCache other)

Definition at line 362 of file MatrixCache.cpp.

References mat_.

◆ init() [2/4]

void polyfem::utils::DenseMatrixCache::init ( const MatrixCache other)
overridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 357 of file MatrixCache.cpp.

References init().

Here is the call graph for this function:

◆ init() [3/4]

void polyfem::utils::DenseMatrixCache::init ( const size_t  rows,
const size_t  cols 
)
overridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 352 of file MatrixCache.cpp.

References mat_.

◆ init() [4/4]

void polyfem::utils::DenseMatrixCache::init ( const size_t  size)
overridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 347 of file MatrixCache.cpp.

References mat_.

Referenced by DenseMatrixCache(), DenseMatrixCache(), and init().

Here is the caller graph for this function:

◆ is_sparse()

bool polyfem::utils::DenseMatrixCache::is_sparse ( ) const
inlineoverridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 162 of file MatrixCache.hpp.

◆ mat()

const Eigen::MatrixXd & polyfem::utils::DenseMatrixCache::mat ( ) const
inline

Definition at line 173 of file MatrixCache.hpp.

References mat_.

◆ non_zeros()

size_t polyfem::utils::DenseMatrixCache::non_zeros ( ) const
inlineoverridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 160 of file MatrixCache.hpp.

References mat_.

Referenced by triplet_count().

Here is the caller graph for this function:

◆ operator+() [1/2]

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

Definition at line 389 of file MatrixCache.cpp.

References mat_.

◆ operator+() [2/2]

std::shared_ptr< MatrixCache > polyfem::utils::DenseMatrixCache::operator+ ( const MatrixCache a) const
overridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 384 of file MatrixCache.cpp.

◆ operator+=() [1/2]

void polyfem::utils::DenseMatrixCache::operator+= ( const DenseMatrixCache o)

Definition at line 401 of file MatrixCache.cpp.

References mat_.

◆ operator+=() [2/2]

void polyfem::utils::DenseMatrixCache::operator+= ( const MatrixCache o)
overridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 396 of file MatrixCache.cpp.

◆ prune()

void polyfem::utils::DenseMatrixCache::prune ( )
overridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 377 of file MatrixCache.cpp.

◆ reserve()

void polyfem::utils::DenseMatrixCache::reserve ( const size_t  size)
inlineoverridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 157 of file MatrixCache.hpp.

◆ set_zero()

void polyfem::utils::DenseMatrixCache::set_zero ( )
overridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 367 of file MatrixCache.cpp.

References mat_.

◆ triplet_count()

size_t polyfem::utils::DenseMatrixCache::triplet_count ( ) const
inlineoverridevirtual

Implements polyfem::utils::MatrixCache.

Definition at line 161 of file MatrixCache.hpp.

References non_zeros().

Here is the call graph for this function:

Member Data Documentation

◆ mat_

Eigen::MatrixXd polyfem::utils::DenseMatrixCache::mat_
private

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