atlas::matrix::Matrix< C > Class Template Reference

#include <matrix.h>

List of all members.

Public Types

typedef std::pair< size_t,
size_t > 
index_pair
typedef std::vector< C
>::iterator 
iterator
typedef std::vector< C
>::const_iterator 
const_iterator

Public Member Functions

iterator begin ()
iterator end ()
const_iterator begin () const
const_iterator end () const
 Matrix ()
 Matrix (size_t m, size_t n)
 Matrix (size_t m, size_t n, const C &c)
 Matrix (size_t n)
 Matrix (const std::vector< std::vector< C > > &)
 Matrix (const Matrix< C > &, const std::vector< std::vector< C > > &)
 Matrix (const Matrix< C > &, size_t, size_t, size_t, size_t)
template<typename I>
 Matrix (const Matrix< C > &, const I &, const I &)
template<typename I>
 Matrix (const I &, const I &, tags::IteratorTag)
virtual ~Matrix ()
const C & operator() (size_t i, size_t j) const
bool operator== (const Matrix< C > &) const
index_pair absMinPos (size_t i_min=0, size_t j_min=0) const
void apply (std::vector< C > &, const std::vector< C > &) const
template<typename I, typename O>
void apply (const I &, const I &, O) const
void column (std::vector< C > &, size_t) const
size_t columnSize () const
bool divisible (C) const
bool isEmpty () const
bool isZero (size_t i_min=0, size_t j_min=0) const
size_t numRows () const
size_t numColumns () const
void row (std::vector< C > &, size_t) const
size_t rowSize () const
C & operator() (size_t i, size_t j)
Matrix< C > & operator+= (const Matrix< C > &)
Matrix< C > & operator-= (const Matrix< C > &)
Matrix< C > & operator *= (const Matrix< C > &)
Matrix< C > & operator/= (const C &c)
void changeColumnSign (size_t)
void changeRowSign (size_t)
void columnOperation (size_t, size_t, const C &)
void copy (const Matrix< C > &, size_t r=0, size_t c=0)
void copyColumn (const Matrix< C > &, size_t, size_t)
void copyRow (const Matrix< C > &, size_t, size_t)
void eraseColumn (size_t)
void eraseRow (size_t)
void invert ()
void invert (C &d)
void permute (const setutils::Permutation &a)
void negate ()
void reset ()
void resize (size_t, size_t)
void resize (size_t, size_t, const C &)
void rowOperation (size_t, size_t, const C &)
void swap (Matrix &)
void swapColumns (size_t, size_t)
void swapRows (size_t, size_t)
void transpose ()

Private Attributes

std::vector< C > d_data
size_t d_rows
size_t d_columns

template<typename C>
class atlas::matrix::Matrix< C >


Member Typedef Documentation

template<typename C>
typedef std::vector<C>::const_iterator atlas::matrix::Matrix< C >::const_iterator
 

template<typename C>
typedef std::pair<size_t,size_t> atlas::matrix::Matrix< C >::index_pair
 

template<typename C>
typedef std::vector<C>::iterator atlas::matrix::Matrix< C >::iterator
 


Constructor & Destructor Documentation

template<typename C>
atlas::matrix::Matrix< C >::Matrix (   )  [inline]
 

template<typename C>
atlas::matrix::Matrix< C >::Matrix (  size_t  m,
size_t  n
)  [inline]
 

template<typename C>
atlas::matrix::Matrix< C >::Matrix (  size_t  m,
size_t  n,
const C &  c
)  [inline]
 

template<typename C>
atlas::matrix::Matrix< C >::Matrix (  size_t  n  )  [inline, explicit]
 

template<typename C>
atlas::matrix::Matrix< C >::Matrix (  const std::vector< std::vector< C > > &   )  [explicit]
 

template<typename C>
atlas::matrix::Matrix< C >::Matrix (  const Matrix< C > &  ,
const std::vector< std::vector< C > > & 
) 
 

template<typename C>
atlas::matrix::Matrix< C >::Matrix (  const Matrix< C > &  ,
size_t  ,
size_t  ,
size_t  ,
size_t 
) 
 

template<typename C>
template<typename I>
atlas::matrix::Matrix< C >::Matrix (  const Matrix< C > &  ,
const I &  ,
const I & 
) 
 

template<typename C>
template<typename I>
atlas::matrix::Matrix< C >::Matrix (  const I &  ,
const I &  ,
tags::IteratorTag 
) 
 

template<typename C>
virtual atlas::matrix::Matrix< C >::~Matrix (   )  [inline, virtual]
 


Member Function Documentation

template<typename C>
Matrix< C >::index_pair atlas::matrix::Matrix< C >::absMinPos (  size_t  i_min = 0,
size_t  j_min = 0
)  const
 

template<typename C>
template<typename I, typename O>
void atlas::matrix::Matrix< C >::apply (  const I &  ,
const I &  ,
O 
)  const
 

template<typename C>
void atlas::matrix::Matrix< C >::apply (  std::vector< C > &  ,
const std::vector< C > & 
)  const
 

template<typename C>
const_iterator atlas::matrix::Matrix< C >::begin (   )  const [inline]
 

template<typename C>
iterator atlas::matrix::Matrix< C >::begin (   )  [inline]
 

template<typename C>
void atlas::matrix::Matrix< C >::changeColumnSign (  size_t   ) 
 

template<typename C>
void atlas::matrix::Matrix< C >::changeRowSign (  size_t   ) 
 

template<typename C>
void atlas::matrix::Matrix< C >::column (  std::vector< C > &  ,
size_t 
)  const
 

template<typename C>
void atlas::matrix::Matrix< C >::columnOperation (  size_t  ,
size_t  ,
const C & 
) 
 

template<typename C>
size_t atlas::matrix::Matrix< C >::columnSize (   )  const [inline]
 

template<typename C>
void atlas::matrix::Matrix< C >::copy (  const Matrix< C > &  ,
size_t  r = 0,
size_t  c = 0
) 
 

template<typename C>
void atlas::matrix::Matrix< C >::copyColumn (  const Matrix< C > &  ,
size_t  ,
size_t 
) 
 

template<typename C>
void atlas::matrix::Matrix< C >::copyRow (  const Matrix< C > &  ,
size_t  ,
size_t 
) 
 

template<typename C>
bool atlas::matrix::Matrix< C >::divisible (  C   )  const
 

template<typename C>
const_iterator atlas::matrix::Matrix< C >::end (   )  const [inline]
 

template<typename C>
iterator atlas::matrix::Matrix< C >::end (   )  [inline]
 

template<typename C>
void atlas::matrix::Matrix< C >::eraseColumn (  size_t   ) 
 

template<typename C>
void atlas::matrix::Matrix< C >::eraseRow (  size_t   ) 
 

template<typename C>
void atlas::matrix::Matrix< C >::invert (  C &  d  ) 
 

template<typename C>
void atlas::matrix::Matrix< C >::invert (   ) 
 

template<typename C>
bool atlas::matrix::Matrix< C >::isEmpty (   )  const [inline]
 

template<typename C>
bool atlas::matrix::Matrix< C >::isZero (  size_t  i_min = 0,
size_t  j_min = 0
)  const
 

template<typename C>
void atlas::matrix::Matrix< C >::negate (   ) 
 

template<typename C>
size_t atlas::matrix::Matrix< C >::numColumns (   )  const [inline]
 

template<typename C>
size_t atlas::matrix::Matrix< C >::numRows (   )  const [inline]
 

template<typename C>
Matrix< C > & atlas::matrix::Matrix< C >::operator *= (  const Matrix< C > &   ) 
 

template<typename C>
C& atlas::matrix::Matrix< C >::operator() (  size_t  i,
size_t  j
)  [inline]
 

template<typename C>
const C& atlas::matrix::Matrix< C >::operator() (  size_t  i,
size_t  j
)  const [inline]
 

template<typename C>
Matrix< C > & atlas::matrix::Matrix< C >::operator+= (  const Matrix< C > &   ) 
 

template<typename C>
Matrix< C > & atlas::matrix::Matrix< C >::operator-= (  const Matrix< C > &   ) 
 

template<typename C>
Matrix< C > & atlas::matrix::Matrix< C >::operator/= (  const C &  c  ) 
 

template<typename C>
bool atlas::matrix::Matrix< C >::operator== (  const Matrix< C > &   )  const
 

template<typename C>
void atlas::matrix::Matrix< C >::permute (  const setutils::Permutation &  a  ) 
 

template<typename C>
void atlas::matrix::Matrix< C >::reset (   )  [inline]
 

template<typename C>
void atlas::matrix::Matrix< C >::resize (  size_t  ,
size_t  ,
const C & 
) 
 

template<typename C>
void atlas::matrix::Matrix< C >::resize (  size_t  ,
size_t 
) 
 

template<typename C>
void atlas::matrix::Matrix< C >::row (  std::vector< C > &  ,
size_t 
)  const
 

template<typename C>
void atlas::matrix::Matrix< C >::rowOperation (  size_t  ,
size_t  ,
const C & 
) 
 

template<typename C>
size_t atlas::matrix::Matrix< C >::rowSize (   )  const [inline]
 

template<typename C>
void atlas::matrix::Matrix< C >::swap (  Matrix< C > &   ) 
 

template<typename C>
void atlas::matrix::Matrix< C >::swapColumns (  size_t  ,
size_t 
) 
 

template<typename C>
void atlas::matrix::Matrix< C >::swapRows (  size_t  ,
size_t 
) 
 

template<typename C>
void atlas::matrix::Matrix< C >::transpose (   ) 
 


Member Data Documentation

template<typename C>
size_t atlas::matrix::Matrix< C >::d_columns [private]
 

template<typename C>
std::vector<C> atlas::matrix::Matrix< C >::d_data [private]
 

template<typename C>
size_t atlas::matrix::Matrix< C >::d_rows [private]
 


The documentation for this class was generated from the following files:
Generated on Mon Mar 20 07:47:29 2006 for atlas by  doxygen 1.4.6