Classes | Functions
core/vnl/vnl_sparse_matrix.h File Reference

Simple sparse matrix. More...

#include <vcl_vector.h>
#include <vnl/vnl_vector.h>
#include <vcl_functional.h>

Go to the source code of this file.

Classes

class  vnl_sparse_matrix_pair< T >
 Stores elements of sparse matrix. More...
struct  vnl_sparse_matrix_pair< T >::less
class  vnl_sparse_matrix< T >
 Simple sparse matrix. More...

Functions

template<class T >
vnl_sparse_matrix< T > operator* (T const &value, vnl_sparse_matrix< T > const &m)

Detailed Description

Simple sparse matrix.

Only those values which are non-zero are stored. The sparse matrix currently supports only getting/putting elements, and multiply by vector or another sparse matrix.

Each row is stored as a vector of vcl_pair<unsigned int,T>, where the first of the pair indicates the column index, and the second the value. All rows are stored, as vcl_vector< row >;

Author:
Rupert W. Curwen, GE CR&D
Date:
20 Oct 98
    Modifications
     Robin Flatland 5/31/99 Added pre_mult(lhs,result), where
                            lhs is a vector.
  
     Robin Flatland 6/08/99 Added iterator that allows sequential
                            access to non-zero values in matrix.
                            Iterator is controlled using reset, next,
                            getrow, getcolumn, and value.
  
     David Capel May 2000   Added set_row, scale_row, mult, vcat and const
                            methods where appropriate.
     Peter Vanroose - Jan.2009 - Added several methods, modelled after vnl_matrix<T>:
       const version of operator()(unsigned int, unsigned int)
       T get(unsigned int, unsigned int)
       void put(unsigned int, unsigned int, T)
       void clear()
       vnl_sparse_matrix& normalize_rows()
       bool operator==()
       bool operator!=()
       unary minus of a matrix
       addition of two matrices
       subtraction of two matrices
       multiplication of two matrices
       in-place addition of two matrices
       in-place subtraction of two matrices
       in-place multiplication of two matrices
       scalar multiplication of a matrix
       in-place scalar multiplication of a matrix
       scalar division of a matrix
       in-place scalar division of a matrix
     Peter Vanroose - Oct.2010 - Added set_identity()
     Peter Vanroose - Mar.2011 - Added transpose() and conjugate_transpose()
   

Definition in file vnl_sparse_matrix.h.


Function Documentation

template<class T >
vnl_sparse_matrix< T > operator* ( T const &  value,
vnl_sparse_matrix< T > const &  m 
) [inline]

Definition at line 315 of file vnl_sparse_matrix.h.