OpenMEEG
Loading...
Searching...
No Matches
OpenMEEG::SparseMatrix Class Reference

#include <sparse_matrix.h>

Inheritance diagram for OpenMEEG::SparseMatrix:
Collaboration diagram for OpenMEEG::SparseMatrix:

Public Types

typedef std::map< std::pair< size_t, size_t >, double > Tank
typedef Tank::const_iterator const_iterator
typedef Tank::iterator iterator
Public Types inherited from OpenMEEG::LinOpInfo
enum  StorageType {
  FULL , SYMMETRIC , BLOCK , BLOCK_SYMMETRIC ,
  SPARSE
}
typedef maths::MathsIO * IO

Public Member Functions

 SparseMatrix ()
 SparseMatrix (const char *fname)
 SparseMatrix (const size_t N, const size_t M)
 ~SparseMatrix ()
double operator() (const size_t i, const size_t j) const
double & operator() (size_t i, size_t j)
size_t size () const
const_iterator begin () const
const_iterator end () const
SparseMatrix transpose () const
const Tanktank () const
void set (const double d)
Vector getlin (const size_t i) const
void setlin (const Vector &v, const size_t i)
void save (const char *filename) const
void load (const char *filename)
void save (const std::string &s) const
void load (const std::string &s)
void info () const
double frobenius_norm () const
Vector operator* (const Vector &x) const
Matrix operator* (const SymMatrix &m) const
Matrix operator* (const Matrix &m) const
SparseMatrix operator* (const SparseMatrix &m) const
SparseMatrix operator+ (const SparseMatrix &m) const
Public Member Functions inherited from OpenMEEG::LinOp
 LinOp ()
 LinOp (const Dimension m, const Dimension n, const StorageType st, const unsigned d)
Public Member Functions inherited from OpenMEEG::LinOpInfo
 LinOpInfo ()
 LinOpInfo (const Dimension m, const Dimension n, const StorageType st, const unsigned d)
virtual ~LinOpInfo ()
Dimension nlin () const
Dimensionnlin ()
virtual Dimension ncol () const
Dimensionncol ()
StorageType storageType () const
StorageTypestorageType ()
unsigned dimension () const
unsigned & dimension ()
IOdefault_io ()

Additional Inherited Members

Protected Attributes inherited from OpenMEEG::LinOpInfo
Dimension num_lines
Dimension num_cols
StorageType storage
unsigned dim
IO DefaultIO = nullptr

Detailed Description

Definition at line 26 of file sparse_matrix.h.

Member Typedef Documentation

◆ Tank

typedef std::map<std::pair<size_t,size_t>,double> OpenMEEG::SparseMatrix::Tank

Definition at line 29 of file sparse_matrix.h.

◆ const_iterator

typedef Tank::const_iterator OpenMEEG::SparseMatrix::const_iterator

Definition at line 30 of file sparse_matrix.h.

◆ iterator

typedef Tank::iterator OpenMEEG::SparseMatrix::iterator

Definition at line 31 of file sparse_matrix.h.

Constructor & Destructor Documentation

◆ SparseMatrix() [1/3]

OpenMEEG::SparseMatrix::SparseMatrix ( )
inline

Definition at line 33 of file sparse_matrix.h.

◆ SparseMatrix() [2/3]

OpenMEEG::SparseMatrix::SparseMatrix ( const char * fname)
inline

Definition at line 34 of file sparse_matrix.h.

◆ SparseMatrix() [3/3]

OpenMEEG::SparseMatrix::SparseMatrix ( const size_t N,
const size_t M )
inline

Definition at line 35 of file sparse_matrix.h.

◆ ~SparseMatrix()

OpenMEEG::SparseMatrix::~SparseMatrix ( )
inline

Definition at line 36 of file sparse_matrix.h.

Member Function Documentation

◆ operator()() [1/2]

double OpenMEEG::SparseMatrix::operator() ( const size_t i,
const size_t j ) const
inline

Definition at line 38 of file sparse_matrix.h.

◆ operator()() [2/2]

double & OpenMEEG::SparseMatrix::operator() ( size_t i,
size_t j )
inline

Definition at line 45 of file sparse_matrix.h.

◆ size()

size_t OpenMEEG::SparseMatrix::size ( ) const
inlinevirtual

Implements OpenMEEG::LinOp.

Definition at line 51 of file sparse_matrix.h.

◆ begin()

const_iterator OpenMEEG::SparseMatrix::begin ( ) const
inline

Definition at line 55 of file sparse_matrix.h.

◆ end()

const_iterator OpenMEEG::SparseMatrix::end ( ) const
inline

Definition at line 56 of file sparse_matrix.h.

◆ transpose()

SparseMatrix OpenMEEG::SparseMatrix::transpose ( ) const

◆ tank()

const Tank & OpenMEEG::SparseMatrix::tank ( ) const
inline

Definition at line 60 of file sparse_matrix.h.

◆ set()

void OpenMEEG::SparseMatrix::set ( const double d)
inline

Definition at line 62 of file sparse_matrix.h.

◆ getlin()

Vector OpenMEEG::SparseMatrix::getlin ( const size_t i) const
inline

Definition at line 67 of file sparse_matrix.h.

◆ setlin()

void OpenMEEG::SparseMatrix::setlin ( const Vector & v,
const size_t i )
inline

Definition at line 77 of file sparse_matrix.h.

◆ save() [1/2]

void OpenMEEG::SparseMatrix::save ( const char * filename) const
inline

Definition at line 83 of file sparse_matrix.h.

◆ load() [1/2]

void OpenMEEG::SparseMatrix::load ( const char * filename)
inline

Definition at line 92 of file sparse_matrix.h.

◆ save() [2/2]

void OpenMEEG::SparseMatrix::save ( const std::string & s) const
inline

Definition at line 101 of file sparse_matrix.h.

◆ load() [2/2]

void OpenMEEG::SparseMatrix::load ( const std::string & s)
inline

Definition at line 102 of file sparse_matrix.h.

◆ info()

void OpenMEEG::SparseMatrix::info ( ) const
virtual

Implements OpenMEEG::LinOp.

◆ frobenius_norm()

double OpenMEEG::SparseMatrix::frobenius_norm ( ) const

◆ operator*() [1/4]

Vector OpenMEEG::SparseMatrix::operator* ( const Vector & x) const

◆ operator*() [2/4]

Matrix OpenMEEG::SparseMatrix::operator* ( const SymMatrix & m) const

◆ operator*() [3/4]

Matrix OpenMEEG::SparseMatrix::operator* ( const Matrix & m) const

◆ operator*() [4/4]

SparseMatrix OpenMEEG::SparseMatrix::operator* ( const SparseMatrix & m) const

◆ operator+()

SparseMatrix OpenMEEG::SparseMatrix::operator+ ( const SparseMatrix & m) const

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