OpenMEEG
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Private Attributes | List of all members
OpenMEEG::SparseMatrix Class Reference

#include <sparse_matrix.h>

Inheritance diagram for OpenMEEG::SparseMatrix:
Inheritance graph
[legend]
Collaboration diagram for OpenMEEG::SparseMatrix:
Collaboration graph
[legend]

Public Types

typedef std::map< std::pair
< size_t, size_t >, double > 
Tank
 
typedef std::map< std::pair
< size_t, size_t >, double >
::const_iterator 
const_iterator
 
typedef std::map< std::pair
< size_t, size_t >, double >
::iterator 
iterator
 
- Public Types inherited from OpenMEEG::LinOpInfo
enum  StorageType { FULL, SYMMETRIC, SPARSE }
 
typedef maths::MathsIOIO
 
typedef unsigned Dimension
 

Public Member Functions

 SparseMatrix ()
 
 SparseMatrix (const char *fname)
 
 SparseMatrix (size_t N, size_t M)
 
 ~SparseMatrix ()
 
double operator() (size_t i, 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 (double t)
 
Vector getlin (size_t i) const
 
void setlin (Vector v, 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 size_t m, const size_t n, const StorageType st, const Dimension d)
 
LinOpoperator= (const LinOp &l)
 
- Public Member Functions inherited from OpenMEEG::LinOpInfo
 LinOpInfo ()
 
 LinOpInfo (const size_t m, const size_t n, const StorageType st, const Dimension d)
 
virtual ~LinOpInfo ()
 
LinOpInfooperator= (const LinOpInfo &l)
 
size_t nlin () const
 
size_t & nlin ()
 
virtual size_t ncol () const
 
size_t & ncol ()
 
StorageType storageType () const
 
StorageTypestorageType ()
 
Dimension dimension () const
 
Dimensiondimension ()
 
IOdefault_io ()
 

Private Attributes

Tank m_tank
 

Additional Inherited Members

- Protected Attributes inherited from OpenMEEG::LinOpInfo
size_t num_lines
 
size_t num_cols
 
StorageType storage
 
Dimension dim
 
IO DefaultIO
 

Detailed Description

Definition at line 62 of file sparse_matrix.h.

Member Typedef Documentation

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

Definition at line 66 of file sparse_matrix.h.

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

Definition at line 67 of file sparse_matrix.h.

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

Definition at line 68 of file sparse_matrix.h.

Constructor & Destructor Documentation

OpenMEEG::SparseMatrix::SparseMatrix ( )
inline

Definition at line 70 of file sparse_matrix.h.

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

Definition at line 71 of file sparse_matrix.h.

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

Definition at line 72 of file sparse_matrix.h.

OpenMEEG::SparseMatrix::~SparseMatrix ( )
inline

Definition at line 73 of file sparse_matrix.h.

Member Function Documentation

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

Definition at line 75 of file sparse_matrix.h.

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

Definition at line 83 of file sparse_matrix.h.

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

Implements OpenMEEG::LinOp.

Definition at line 89 of file sparse_matrix.h.

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

Definition at line 93 of file sparse_matrix.h.

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

Definition at line 94 of file sparse_matrix.h.

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

Definition at line 98 of file sparse_matrix.h.

void OpenMEEG::SparseMatrix::set ( double  t)
Vector OpenMEEG::SparseMatrix::getlin ( size_t  i) const
inline

Definition at line 124 of file sparse_matrix.h.

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

Definition at line 135 of file sparse_matrix.h.

void OpenMEEG::SparseMatrix::save ( const char *  filename) const
void OpenMEEG::SparseMatrix::load ( const char *  filename)
void OpenMEEG::SparseMatrix::save ( const std::string &  s) const
inline

Definition at line 107 of file sparse_matrix.h.

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

Definition at line 108 of file sparse_matrix.h.

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

Implements OpenMEEG::LinOp.

double OpenMEEG::SparseMatrix::frobenius_norm ( ) const
Vector OpenMEEG::SparseMatrix::operator* ( const Vector x) const
Matrix OpenMEEG::SparseMatrix::operator* ( const SymMatrix m) const
Matrix OpenMEEG::SparseMatrix::operator* ( const Matrix m) const
SparseMatrix OpenMEEG::SparseMatrix::operator* ( const SparseMatrix m) const
SparseMatrix OpenMEEG::SparseMatrix::operator+ ( const SparseMatrix m) const

Member Data Documentation

Tank OpenMEEG::SparseMatrix::m_tank
private

Definition at line 121 of file sparse_matrix.h.


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