cgv
Loading...
Searching...
No Matches
cgv::math::sparse_mat< T > Class Template Reference

Public Member Functions

 sparse_mat (const mat< T > &m, T eps=0)
 
unsigned nrows () const
 
unsigned ncols () const
 
unsigned num_non_zeros () const
 
 operator mat< T > ()
 
void compress (const mat< T > &m, T eps=0)
 
vec< T > operator* (const vec< T > &v)
 matrix vector product
 
sparse_mat< T > & operator*= (const T &s)
 
sparse_mat< T > operator* (const T &s)
 
sparse_mat< T > & operator/= (const T &s)
 
sparse_mat< T > operator/ (const T &s)
 
void transpose ()
 transpose matrix
 

Friends

std::ostream & operator<< (std::ostream &out, sparse_mat &sm)
 
void Ax (const sparse_mat< T > &A, const vec< T > &v, vec< T > &r)
 
void Atx (const sparse_mat< T > &A, const vec< T > &v, vec< T > &r)
 
bool low_tri_solve (const sparse_mat< T > &L, const vec< T > &b, vec< T > &x)
 

Detailed Description

template<typename T>
class cgv::math::sparse_mat< T >

Definition at line 22 of file sparse_mat.h.

Constructor & Destructor Documentation

◆ sparse_mat()

template<typename T >
cgv::math::sparse_mat< T >::sparse_mat ( const mat< T > &  m,
eps = 0 
)
inline

Definition at line 40 of file sparse_mat.h.

Member Function Documentation

◆ compress()

template<typename T >
void cgv::math::sparse_mat< T >::compress ( const mat< T > &  m,
eps = 0 
)
inline

Definition at line 76 of file sparse_mat.h.

◆ ncols()

template<typename T >
unsigned cgv::math::sparse_mat< T >::ncols ( ) const
inline

Definition at line 52 of file sparse_mat.h.

◆ nrows()

template<typename T >
unsigned cgv::math::sparse_mat< T >::nrows ( ) const
inline

Definition at line 46 of file sparse_mat.h.

◆ num_non_zeros()

template<typename T >
unsigned cgv::math::sparse_mat< T >::num_non_zeros ( ) const
inline

Definition at line 58 of file sparse_mat.h.

◆ operator mat< T >()

template<typename T >
cgv::math::sparse_mat< T >::operator mat< T > ( )
inline

Definition at line 64 of file sparse_mat.h.

◆ operator*() [1/2]

template<typename T >
sparse_mat< T > cgv::math::sparse_mat< T >::operator* ( const T &  s)
inline

Definition at line 141 of file sparse_mat.h.

◆ operator*() [2/2]

template<typename T >
vec< T > cgv::math::sparse_mat< T >::operator* ( const vec< T > &  v)
inline

matrix vector product

Definition at line 117 of file sparse_mat.h.

References cgv::math::vec< T >::size(), and cgv::math::vec< T >::zeros().

◆ operator*=()

template<typename T >
sparse_mat< T > & cgv::math::sparse_mat< T >::operator*= ( const T &  s)
inline

Definition at line 134 of file sparse_mat.h.

◆ operator/()

template<typename T >
sparse_mat< T > cgv::math::sparse_mat< T >::operator/ ( const T &  s)
inline

Definition at line 155 of file sparse_mat.h.

◆ operator/=()

template<typename T >
sparse_mat< T > & cgv::math::sparse_mat< T >::operator/= ( const T &  s)
inline

Definition at line 148 of file sparse_mat.h.

◆ transpose()

template<typename T >
void cgv::math::sparse_mat< T >::transpose ( )
inline

transpose matrix

Definition at line 164 of file sparse_mat.h.

References cgv::math::vec< T >::size(), and cgv::math::vec< T >::zeros().

Friends And Related Symbol Documentation

◆ Atx

template<typename T >
void Atx ( const sparse_mat< T > &  A,
const vec< T > &  v,
vec< T > &  r 
)
friend

Definition at line 253 of file sparse_mat.h.

◆ Ax

template<typename T >
void Ax ( const sparse_mat< T > &  A,
const vec< T > &  v,
vec< T > &  r 
)
friend

Definition at line 239 of file sparse_mat.h.

◆ low_tri_solve

template<typename T >
bool low_tri_solve ( const sparse_mat< T > &  L,
const vec< T > &  b,
vec< T > &  x 
)
friend

Definition at line 281 of file sparse_mat.h.

◆ operator<<

template<typename T >
std::ostream & operator<< ( std::ostream &  out,
sparse_mat< T > &  sm 
)
friend

Definition at line 229 of file sparse_mat.h.


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