Bayesian Filtering Library  Generated from SVN r
Classes | Public Types | Public Member Functions | Static Public Attributes | Friends | List of all members
matrix< T, L, A > Class Template Reference

A dense matrix of values of type T. More...

#include <asirfilter.h>

Inheritance diagram for matrix< T, L, A >:
matrix_container< matrix< T, L, A > > matrix_expression< matrix< T, L, A > > ublas_expression< matrix< T, L, A > > Matrix

Classes

class  const_iterator1
 
class  const_iterator2
 
class  iterator1
 
class  iterator2
 

Public Types

typedef A::size_type size_type
 
typedef A::difference_type difference_type
 
typedef T value_type
 
typedef const T & const_reference
 
typedef T & reference
 
typedef A array_type
 
typedef const matrix_reference
< const self_type
const_closure_type
 
typedef matrix_reference
< self_type
closure_type
 
typedef vector< T, A > vector_temporary_type
 
typedef self_type matrix_temporary_type
 
typedef dense_tag storage_category
 
typedef L::orientation_category orientation_category
 
typedef reverse_iterator_base1
< const_iterator1
const_reverse_iterator1
 
typedef reverse_iterator_base1
< iterator1
reverse_iterator1
 
typedef reverse_iterator_base2
< const_iterator2
const_reverse_iterator2
 
typedef reverse_iterator_base2
< iterator2
reverse_iterator2
 
typedef matrix< T, L, A > container_type
 
typedef matrix_tag type_category
 
typedef matrix< T, L, A > expression_type
 

Public Member Functions

BOOST_UBLAS_INLINE matrix ()
 Default dense matrix constructor. Make a dense matrix of size (0,0)
 
BOOST_UBLAS_INLINE matrix (size_type size1, size_type size2)
 
 matrix (size_type size1, size_type size2, const value_type &init)
 
BOOST_UBLAS_INLINE matrix (size_type size1, size_type size2, const array_type &data)
 
BOOST_UBLAS_INLINE matrix (const matrix &m)
 
template<class AE >
BOOST_UBLAS_INLINE matrix (const matrix_expression< AE > &ae)
 
BOOST_UBLAS_INLINE size_type size1 () const
 
BOOST_UBLAS_INLINE size_type size2 () const
 
BOOST_UBLAS_INLINE const
array_type & 
data () const
 
BOOST_UBLAS_INLINE array_type & data ()
 
BOOST_UBLAS_INLINE void resize (size_type size1, size_type size2, bool preserve=true)
 
BOOST_UBLAS_INLINE const_reference operator() (size_type i, size_type j) const
 
BOOST_UBLAS_INLINE reference at_element (size_type i, size_type j)
 
BOOST_UBLAS_INLINE reference operator() (size_type i, size_type j)
 
BOOST_UBLAS_INLINE reference insert_element (size_type i, size_type j, const_reference t)
 
void erase_element (size_type i, size_type j)
 
BOOST_UBLAS_INLINE void clear ()
 
BOOST_UBLAS_INLINE matrixoperator= (const matrix &m)
 
template<class C >
BOOST_UBLAS_INLINE matrixoperator= (const matrix_container< C > &m)
 
BOOST_UBLAS_INLINE matrixassign_temporary (matrix &m)
 
template<class AE >
BOOST_UBLAS_INLINE matrixoperator= (const matrix_expression< AE > &ae)
 
template<class AE >
BOOST_UBLAS_INLINE matrixassign (const matrix_expression< AE > &ae)
 
template<class AE >
BOOST_UBLAS_INLINE matrixoperator+= (const matrix_expression< AE > &ae)
 
template<class C >
BOOST_UBLAS_INLINE matrixoperator+= (const matrix_container< C > &m)
 
template<class AE >
BOOST_UBLAS_INLINE matrixplus_assign (const matrix_expression< AE > &ae)
 
template<class AE >
BOOST_UBLAS_INLINE matrixoperator-= (const matrix_expression< AE > &ae)
 
template<class C >
BOOST_UBLAS_INLINE matrixoperator-= (const matrix_container< C > &m)
 
template<class AE >
BOOST_UBLAS_INLINE matrixminus_assign (const matrix_expression< AE > &ae)
 
template<class AT >
BOOST_UBLAS_INLINE matrixoperator*= (const AT &at)
 
template<class AT >
BOOST_UBLAS_INLINE matrixoperator/= (const AT &at)
 
BOOST_UBLAS_INLINE void swap (matrix &m)
 
BOOST_UBLAS_INLINE const_iterator1 find1 (int, size_type i, size_type j) const
 
BOOST_UBLAS_INLINE iterator1 find1 (int, size_type i, size_type j)
 
BOOST_UBLAS_INLINE const_iterator2 find2 (int, size_type i, size_type j) const
 
BOOST_UBLAS_INLINE iterator2 find2 (int, size_type i, size_type j)
 
BOOST_UBLAS_INLINE const_iterator1 begin1 () const
 
BOOST_UBLAS_INLINE const_iterator1 end1 () const
 
BOOST_UBLAS_INLINE iterator1 begin1 ()
 
BOOST_UBLAS_INLINE iterator1 end1 ()
 
BOOST_UBLAS_INLINE const_iterator2 begin2 () const
 
BOOST_UBLAS_INLINE const_iterator2 end2 () const
 
BOOST_UBLAS_INLINE iterator2 begin2 ()
 
BOOST_UBLAS_INLINE iterator2 end2 ()
 
BOOST_UBLAS_INLINE
const_reverse_iterator1 
rbegin1 () const
 
BOOST_UBLAS_INLINE
const_reverse_iterator1 
rend1 () const
 
BOOST_UBLAS_INLINE
reverse_iterator1 
rbegin1 ()
 
BOOST_UBLAS_INLINE
reverse_iterator1 
rend1 ()
 
BOOST_UBLAS_INLINE
const_reverse_iterator2 
rbegin2 () const
 
BOOST_UBLAS_INLINE
const_reverse_iterator2 
rend2 () const
 
BOOST_UBLAS_INLINE
reverse_iterator2 
rbegin2 ()
 
BOOST_UBLAS_INLINE
reverse_iterator2 
rend2 ()
 
template<class Archive >
void serialize (Archive &ar, const unsigned int)
 
BOOST_UBLAS_INLINE const
container_type
operator() () const
 
BOOST_UBLAS_INLINE container_typeoperator() ()
 

Static Public Attributes

static const unsigned complexity
 

Friends

BOOST_UBLAS_INLINE friend void swap (matrix &m1, matrix &m2)
 

Detailed Description

template<class T, class L = row_major, class A = unbounded_array<T>>
class BFL::boost::numeric::ublas::matrix< T, L, A >

A dense matrix of values of type T.

For a $(m \times n)$-dimensional matrix and $ 0 \leq i < m, 0 \leq j < n$, every element $ m_{i,j} $ is mapped to the $(i.n + j)$-th element of the container for row major orientation or the $ (i + j.m) $-th element of the container for column major orientation. In a dense matrix all elements are represented in memory in a contiguous chunk of memory by definition.

Orientation and storage can also be specified, otherwise a row_major and unbounded_array are used. It is not required by the storage to initialize elements of the matrix.

Template Parameters
Tthe type of object stored in the matrix (like double, float, complex, etc...)
Lthe storage organization. It can be either row_major or column_major. Default is row_major
Athe type of Storage array. Default is unbounded_array

Definition at line 127 of file asirfilter.h.


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