![]() |
Boost.uBlas 1.49
Linear Algebra in C++: matrices, vectors and numeric algorithms
|
A diagonal matrix of values of type T
, which is a specialization of a banded matrix.
More...
#include <banded.hpp>
Public Types | |
typedef A | array_type |
typedef matrix_reference < self_type > | closure_type |
typedef const matrix_reference < const self_type > | const_closure_type |
typedef const T & | const_reference |
typedef reverse_iterator_base1 < const_iterator1 > | const_reverse_iterator1 |
typedef reverse_iterator_base2 < const_iterator2 > | const_reverse_iterator2 |
typedef banded_matrix< T, L, A > | container_type |
typedef A::difference_type | difference_type |
typedef banded_matrix< T, L, A > | expression_type |
typedef matrix< T, L, A > | matrix_temporary_type |
typedef banded_matrix< T, L, A > | matrix_type |
typedef L::orientation_category | orientation_category |
typedef T & | reference |
typedef reverse_iterator_base1 < iterator1 > | reverse_iterator1 |
typedef reverse_iterator_base2 < iterator2 > | reverse_iterator2 |
typedef A::size_type | size_type |
typedef packed_tag | storage_category |
typedef matrix_tag | type_category |
typedef T | value_type |
typedef vector< T, A > | vector_temporary_type |
Public Member Functions | |
BOOST_UBLAS_INLINE | diagonal_matrix () |
BOOST_UBLAS_INLINE | diagonal_matrix (size_type size) |
BOOST_UBLAS_INLINE | diagonal_matrix (size_type size1, size_type size2) |
template<class AE > | |
BOOST_UBLAS_INLINE | diagonal_matrix (const matrix_expression< AE > &ae) |
BOOST_UBLAS_INLINE | diagonal_matrix (size_type size, const array_type &data) |
BOOST_UBLAS_INLINE | ~diagonal_matrix () |
template<class AE > | |
BOOST_UBLAS_INLINE banded_matrix & | assign (const matrix_expression< AE > &ae) |
BOOST_UBLAS_INLINE banded_matrix & | assign_temporary (banded_matrix &m) |
BOOST_UBLAS_INLINE reference | at_element (size_type i, size_type j) |
BOOST_UBLAS_INLINE const_iterator1 | begin1 () const |
BOOST_UBLAS_INLINE iterator1 | begin1 () |
BOOST_UBLAS_INLINE const_iterator2 | begin2 () const |
BOOST_UBLAS_INLINE iterator2 | begin2 () |
BOOST_UBLAS_INLINE void | clear () |
BOOST_UBLAS_INLINE const array_type & | data () const |
BOOST_UBLAS_INLINE array_type & | data () |
BOOST_UBLAS_INLINE const_iterator1 | end1 () const |
BOOST_UBLAS_INLINE iterator1 | end1 () |
BOOST_UBLAS_INLINE const_iterator2 | end2 () const |
BOOST_UBLAS_INLINE iterator2 | end2 () |
BOOST_UBLAS_INLINE void | erase_element (size_type i, size_type j) |
BOOST_UBLAS_INLINE const_iterator1 | find1 (int rank, size_type i, size_type j) const |
BOOST_UBLAS_INLINE iterator1 | find1 (int rank, size_type i, size_type j) |
BOOST_UBLAS_INLINE iterator2 | find2 (int rank, size_type i, size_type j) |
BOOST_UBLAS_INLINE const_iterator2 | find2 (int rank, size_type i, size_type j) const |
BOOST_UBLAS_INLINE reference | insert_element (size_type i, size_type j, const_reference t) |
BOOST_UBLAS_INLINE size_type | lower () const |
template<class AE > | |
BOOST_UBLAS_INLINE banded_matrix & | minus_assign (const matrix_expression< AE > &ae) |
BOOST_UBLAS_INLINE const_reference | operator() (size_type i, size_type j) const |
BOOST_UBLAS_INLINE reference | operator() (size_type i, size_type j) |
BOOST_UBLAS_INLINE container_type & | operator() () |
BOOST_UBLAS_INLINE const container_type & | operator() () const |
template<class AT > | |
BOOST_UBLAS_INLINE banded_matrix & | operator*= (const AT &at) |
template<class AE > | |
BOOST_UBLAS_INLINE banded_matrix & | operator+= (const matrix_expression< AE > &ae) |
template<class AE > | |
BOOST_UBLAS_INLINE banded_matrix & | operator-= (const matrix_expression< AE > &ae) |
template<class AT > | |
BOOST_UBLAS_INLINE banded_matrix & | operator/= (const AT &at) |
template<class AE > | |
BOOST_UBLAS_INLINE diagonal_matrix & | operator= (const matrix_expression< AE > &ae) |
BOOST_UBLAS_INLINE diagonal_matrix & | operator= (const diagonal_matrix &m) |
template<class AE > | |
BOOST_UBLAS_INLINE banded_matrix & | plus_assign (const matrix_expression< AE > &ae) |
BOOST_UBLAS_INLINE const_reverse_iterator1 | rbegin1 () const |
BOOST_UBLAS_INLINE reverse_iterator1 | rbegin1 () |
BOOST_UBLAS_INLINE const_reverse_iterator2 | rbegin2 () const |
BOOST_UBLAS_INLINE reverse_iterator2 | rbegin2 () |
BOOST_UBLAS_INLINE reverse_iterator1 | rend1 () |
BOOST_UBLAS_INLINE const_reverse_iterator1 | rend1 () const |
BOOST_UBLAS_INLINE reverse_iterator2 | rend2 () |
BOOST_UBLAS_INLINE const_reverse_iterator2 | rend2 () const |
BOOST_UBLAS_INLINE void | resize (size_type size1, size_type size2, size_type lower=0, size_type upper=0, bool preserve=true) |
BOOST_UBLAS_INLINE void | resize_packed_preserve (size_type size1, size_type size2, size_type lower=0, size_type upper=0) |
BOOST_UBLAS_INLINE size_type | size1 () const |
BOOST_UBLAS_INLINE size_type | size2 () const |
BOOST_UBLAS_INLINE void | swap (banded_matrix &m) |
BOOST_UBLAS_INLINE size_type | upper () const |
Static Public Attributes | |
static const unsigned | complexity |
Friends | |
BOOST_UBLAS_INLINE friend void | swap (banded_matrix &m1, banded_matrix &m2) |
A diagonal matrix of values of type T
, which is a specialization of a banded matrix.
For a -dimensional diagonal matrix,
and
, if
then
. The default storage for diagonal matrices is packed. Orientation and storage can also be specified. Default is
row
major unbounded_array
.
As a specialization of a banded matrix, the constructor of the diagonal matrix creates a banded matrix with 0 upper and lower diagonals around the main diagonal and the matrix is obviously a square matrix. Operations are optimized based on these 2 assumptions. It is not required by the storage to initialize elements of the matrix.
T | the type of object stored in the matrix (like double, float, complex, etc...) |
L | the storage organization. It can be either row_major or column_major . Default is row_major |
A | the type of Storage array. Default is unbounded_array |
Definition at line 1000 of file banded.hpp.
typedef A::size_type boost::numeric::ublas::diagonal_matrix< T, L, A >::size_type |
Reimplemented from boost::numeric::ublas::banded_matrix< T, L, A >.
Definition at line 1003 of file banded.hpp.
typedef banded_matrix<T, L, A> boost::numeric::ublas::diagonal_matrix< T, L, A >::matrix_type |
Definition at line 1004 of file banded.hpp.
typedef A boost::numeric::ublas::diagonal_matrix< T, L, A >::array_type |
Reimplemented from boost::numeric::ublas::banded_matrix< T, L, A >.
Definition at line 1005 of file banded.hpp.
typedef A::difference_type boost::numeric::ublas::banded_matrix< T, L, A >::difference_type [inherited] |
Definition at line 47 of file banded.hpp.
typedef T boost::numeric::ublas::banded_matrix< T, L, A >::value_type [inherited] |
Definition at line 48 of file banded.hpp.
typedef const T& boost::numeric::ublas::banded_matrix< T, L, A >::const_reference [inherited] |
Definition at line 49 of file banded.hpp.
typedef T& boost::numeric::ublas::banded_matrix< T, L, A >::reference [inherited] |
Definition at line 50 of file banded.hpp.
typedef const matrix_reference<const self_type> boost::numeric::ublas::banded_matrix< T, L, A >::const_closure_type [inherited] |
Definition at line 52 of file banded.hpp.
typedef matrix_reference<self_type> boost::numeric::ublas::banded_matrix< T, L, A >::closure_type [inherited] |
Definition at line 53 of file banded.hpp.
typedef vector<T, A> boost::numeric::ublas::banded_matrix< T, L, A >::vector_temporary_type [inherited] |
Definition at line 54 of file banded.hpp.
typedef matrix<T, L, A> boost::numeric::ublas::banded_matrix< T, L, A >::matrix_temporary_type [inherited] |
Definition at line 55 of file banded.hpp.
typedef packed_tag boost::numeric::ublas::banded_matrix< T, L, A >::storage_category [inherited] |
Definition at line 56 of file banded.hpp.
typedef L::orientation_category boost::numeric::ublas::banded_matrix< T, L, A >::orientation_category [inherited] |
Definition at line 57 of file banded.hpp.
typedef reverse_iterator_base1<const_iterator1> boost::numeric::ublas::banded_matrix< T, L, A >::const_reverse_iterator1 [inherited] |
Definition at line 315 of file banded.hpp.
typedef reverse_iterator_base1<iterator1> boost::numeric::ublas::banded_matrix< T, L, A >::reverse_iterator1 [inherited] |
Definition at line 318 of file banded.hpp.
typedef reverse_iterator_base2<const_iterator2> boost::numeric::ublas::banded_matrix< T, L, A >::const_reverse_iterator2 [inherited] |
Definition at line 319 of file banded.hpp.
typedef reverse_iterator_base2<iterator2> boost::numeric::ublas::banded_matrix< T, L, A >::reverse_iterator2 [inherited] |
Definition at line 320 of file banded.hpp.
typedef banded_matrix< T, L, A > boost::numeric::ublas::matrix_container< banded_matrix< T, L, A > >::container_type [inherited] |
Definition at line 488 of file expression_types.hpp.
typedef matrix_tag boost::numeric::ublas::matrix_container< banded_matrix< T, L, A > >::type_category [inherited] |
Reimplemented from boost::numeric::ublas::matrix_expression< banded_matrix< T, L, A > >.
Definition at line 489 of file expression_types.hpp.
typedef banded_matrix< T, L, A > boost::numeric::ublas::matrix_expression< banded_matrix< T, L, A > >::expression_type [inherited] |
Reimplemented from boost::numeric::ublas::ublas_expression< banded_matrix< T, L, A > >.
Definition at line 313 of file expression_types.hpp.
BOOST_UBLAS_INLINE boost::numeric::ublas::diagonal_matrix< T, L, A >::diagonal_matrix | ( | ) | [inline] |
Definition at line 1009 of file banded.hpp.
BOOST_UBLAS_INLINE boost::numeric::ublas::diagonal_matrix< T, L, A >::diagonal_matrix | ( | size_type | size | ) | [inline] |
Definition at line 1012 of file banded.hpp.
BOOST_UBLAS_INLINE boost::numeric::ublas::diagonal_matrix< T, L, A >::diagonal_matrix | ( | size_type | size, |
const array_type & | data | ||
) | [inline] |
Definition at line 1015 of file banded.hpp.
BOOST_UBLAS_INLINE boost::numeric::ublas::diagonal_matrix< T, L, A >::diagonal_matrix | ( | size_type | size1, |
size_type | size2 | ||
) | [inline] |
Definition at line 1018 of file banded.hpp.
BOOST_UBLAS_INLINE boost::numeric::ublas::diagonal_matrix< T, L, A >::diagonal_matrix | ( | const matrix_expression< AE > & | ae | ) | [inline] |
Definition at line 1022 of file banded.hpp.
BOOST_UBLAS_INLINE boost::numeric::ublas::diagonal_matrix< T, L, A >::~diagonal_matrix | ( | ) | [inline] |
Definition at line 1025 of file banded.hpp.
BOOST_UBLAS_INLINE diagonal_matrix& boost::numeric::ublas::diagonal_matrix< T, L, A >::operator= | ( | const diagonal_matrix< T, L, A > & | m | ) | [inline] |
Definition at line 1029 of file banded.hpp.
BOOST_UBLAS_INLINE diagonal_matrix& boost::numeric::ublas::diagonal_matrix< T, L, A >::operator= | ( | const matrix_expression< AE > & | ae | ) | [inline] |
Reimplemented from boost::numeric::ublas::banded_matrix< T, L, A >.
Definition at line 1035 of file banded.hpp.
BOOST_UBLAS_INLINE size_type boost::numeric::ublas::banded_matrix< T, L, A >::size1 | ( | ) | const [inline, inherited] |
Definition at line 93 of file banded.hpp.
BOOST_UBLAS_INLINE size_type boost::numeric::ublas::banded_matrix< T, L, A >::size2 | ( | ) | const [inline, inherited] |
Definition at line 97 of file banded.hpp.
BOOST_UBLAS_INLINE size_type boost::numeric::ublas::banded_matrix< T, L, A >::lower | ( | ) | const [inline, inherited] |
Definition at line 101 of file banded.hpp.
BOOST_UBLAS_INLINE size_type boost::numeric::ublas::banded_matrix< T, L, A >::upper | ( | ) | const [inline, inherited] |
Definition at line 105 of file banded.hpp.
BOOST_UBLAS_INLINE const array_type& boost::numeric::ublas::banded_matrix< T, L, A >::data | ( | ) | const [inline, inherited] |
Definition at line 111 of file banded.hpp.
BOOST_UBLAS_INLINE array_type& boost::numeric::ublas::banded_matrix< T, L, A >::data | ( | ) | [inline, inherited] |
Definition at line 115 of file banded.hpp.
BOOST_UBLAS_INLINE void boost::numeric::ublas::banded_matrix< T, L, A >::resize | ( | size_type | size1, |
size_type | size2, | ||
size_type | lower = 0 , |
||
size_type | upper = 0 , |
||
bool | preserve = true |
||
) | [inline, inherited] |
Definition at line 121 of file banded.hpp.
BOOST_UBLAS_INLINE void boost::numeric::ublas::banded_matrix< T, L, A >::resize_packed_preserve | ( | size_type | size1, |
size_type | size2, | ||
size_type | lower = 0 , |
||
size_type | upper = 0 |
||
) | [inline, inherited] |
Definition at line 136 of file banded.hpp.
BOOST_UBLAS_INLINE const_reference boost::numeric::ublas::banded_matrix< T, L, A >::operator() | ( | size_type | i, |
size_type | j | ||
) | const [inline, inherited] |
Definition at line 146 of file banded.hpp.
BOOST_UBLAS_INLINE reference boost::numeric::ublas::banded_matrix< T, L, A >::operator() | ( | size_type | i, |
size_type | j | ||
) | [inline, inherited] |
Definition at line 183 of file banded.hpp.
BOOST_UBLAS_INLINE const container_type& boost::numeric::ublas::matrix_container< banded_matrix< T, L, A > >::operator() | ( | ) | const [inline, inherited] |
Reimplemented from boost::numeric::ublas::matrix_expression< banded_matrix< T, L, A > >.
Definition at line 492 of file expression_types.hpp.
BOOST_UBLAS_INLINE container_type& boost::numeric::ublas::matrix_container< banded_matrix< T, L, A > >::operator() | ( | ) | [inline, inherited] |
Reimplemented from boost::numeric::ublas::matrix_expression< banded_matrix< T, L, A > >.
Definition at line 496 of file expression_types.hpp.
BOOST_UBLAS_INLINE reference boost::numeric::ublas::banded_matrix< T, L, A >::at_element | ( | size_type | i, |
size_type | j | ||
) | [inline, inherited] |
Definition at line 167 of file banded.hpp.
BOOST_UBLAS_INLINE reference boost::numeric::ublas::banded_matrix< T, L, A >::insert_element | ( | size_type | i, |
size_type | j, | ||
const_reference | t | ||
) | [inline, inherited] |
Definition at line 211 of file banded.hpp.
BOOST_UBLAS_INLINE void boost::numeric::ublas::banded_matrix< T, L, A >::erase_element | ( | size_type | i, |
size_type | j | ||
) | [inline, inherited] |
Definition at line 215 of file banded.hpp.
BOOST_UBLAS_INLINE void boost::numeric::ublas::banded_matrix< T, L, A >::clear | ( | ) | [inline, inherited] |
Definition at line 221 of file banded.hpp.
BOOST_UBLAS_INLINE banded_matrix& boost::numeric::ublas::banded_matrix< T, L, A >::assign_temporary | ( | banded_matrix< T, L, A > & | m | ) | [inline, inherited] |
Definition at line 236 of file banded.hpp.
BOOST_UBLAS_INLINE banded_matrix& boost::numeric::ublas::banded_matrix< T, L, A >::assign | ( | const matrix_expression< AE > & | ae | ) | [inline, inherited] |
Definition at line 248 of file banded.hpp.
BOOST_UBLAS_INLINE banded_matrix& boost::numeric::ublas::banded_matrix< T, L, A >::operator+= | ( | const matrix_expression< AE > & | ae | ) | [inline, inherited] |
Definition at line 254 of file banded.hpp.
BOOST_UBLAS_INLINE banded_matrix& boost::numeric::ublas::banded_matrix< T, L, A >::plus_assign | ( | const matrix_expression< AE > & | ae | ) | [inline, inherited] |
Definition at line 260 of file banded.hpp.
BOOST_UBLAS_INLINE banded_matrix& boost::numeric::ublas::banded_matrix< T, L, A >::operator-= | ( | const matrix_expression< AE > & | ae | ) | [inline, inherited] |
Definition at line 266 of file banded.hpp.
BOOST_UBLAS_INLINE banded_matrix& boost::numeric::ublas::banded_matrix< T, L, A >::minus_assign | ( | const matrix_expression< AE > & | ae | ) | [inline, inherited] |
Definition at line 272 of file banded.hpp.
BOOST_UBLAS_INLINE banded_matrix& boost::numeric::ublas::banded_matrix< T, L, A >::operator*= | ( | const AT & | at | ) | [inline, inherited] |
Definition at line 278 of file banded.hpp.
BOOST_UBLAS_INLINE banded_matrix& boost::numeric::ublas::banded_matrix< T, L, A >::operator/= | ( | const AT & | at | ) | [inline, inherited] |
Definition at line 284 of file banded.hpp.
BOOST_UBLAS_INLINE void boost::numeric::ublas::banded_matrix< T, L, A >::swap | ( | banded_matrix< T, L, A > & | m | ) | [inline, inherited] |
Definition at line 291 of file banded.hpp.
BOOST_UBLAS_INLINE const_iterator1 boost::numeric::ublas::banded_matrix< T, L, A >::find1 | ( | int | rank, |
size_type | i, | ||
size_type | j | ||
) | const [inline, inherited] |
Definition at line 324 of file banded.hpp.
BOOST_UBLAS_INLINE iterator1 boost::numeric::ublas::banded_matrix< T, L, A >::find1 | ( | int | rank, |
size_type | i, | ||
size_type | j | ||
) | [inline, inherited] |
Definition at line 334 of file banded.hpp.
BOOST_UBLAS_INLINE const_iterator2 boost::numeric::ublas::banded_matrix< T, L, A >::find2 | ( | int | rank, |
size_type | i, | ||
size_type | j | ||
) | const [inline, inherited] |
Definition at line 344 of file banded.hpp.
BOOST_UBLAS_INLINE iterator2 boost::numeric::ublas::banded_matrix< T, L, A >::find2 | ( | int | rank, |
size_type | i, | ||
size_type | j | ||
) | [inline, inherited] |
Definition at line 354 of file banded.hpp.
BOOST_UBLAS_INLINE const_iterator1 boost::numeric::ublas::banded_matrix< T, L, A >::begin1 | ( | ) | const [inline, inherited] |
Definition at line 500 of file banded.hpp.
BOOST_UBLAS_INLINE iterator1 boost::numeric::ublas::banded_matrix< T, L, A >::begin1 | ( | ) | [inline, inherited] |
Definition at line 641 of file banded.hpp.
BOOST_UBLAS_INLINE const_iterator1 boost::numeric::ublas::banded_matrix< T, L, A >::end1 | ( | ) | const [inline, inherited] |
Definition at line 504 of file banded.hpp.
BOOST_UBLAS_INLINE iterator1 boost::numeric::ublas::banded_matrix< T, L, A >::end1 | ( | ) | [inline, inherited] |
Definition at line 645 of file banded.hpp.
BOOST_UBLAS_INLINE const_iterator2 boost::numeric::ublas::banded_matrix< T, L, A >::begin2 | ( | ) | const [inline, inherited] |
Definition at line 783 of file banded.hpp.
BOOST_UBLAS_INLINE iterator2 boost::numeric::ublas::banded_matrix< T, L, A >::begin2 | ( | ) | [inline, inherited] |
Definition at line 924 of file banded.hpp.
BOOST_UBLAS_INLINE const_iterator2 boost::numeric::ublas::banded_matrix< T, L, A >::end2 | ( | ) | const [inline, inherited] |
Definition at line 787 of file banded.hpp.
BOOST_UBLAS_INLINE iterator2 boost::numeric::ublas::banded_matrix< T, L, A >::end2 | ( | ) | [inline, inherited] |
Definition at line 928 of file banded.hpp.
BOOST_UBLAS_INLINE const_reverse_iterator1 boost::numeric::ublas::banded_matrix< T, L, A >::rbegin1 | ( | ) | const [inline, inherited] |
Definition at line 935 of file banded.hpp.
BOOST_UBLAS_INLINE reverse_iterator1 boost::numeric::ublas::banded_matrix< T, L, A >::rbegin1 | ( | ) | [inline, inherited] |
Definition at line 944 of file banded.hpp.
BOOST_UBLAS_INLINE const_reverse_iterator1 boost::numeric::ublas::banded_matrix< T, L, A >::rend1 | ( | ) | const [inline, inherited] |
Definition at line 939 of file banded.hpp.
BOOST_UBLAS_INLINE reverse_iterator1 boost::numeric::ublas::banded_matrix< T, L, A >::rend1 | ( | ) | [inline, inherited] |
Definition at line 948 of file banded.hpp.
BOOST_UBLAS_INLINE const_reverse_iterator2 boost::numeric::ublas::banded_matrix< T, L, A >::rbegin2 | ( | ) | const [inline, inherited] |
Definition at line 953 of file banded.hpp.
BOOST_UBLAS_INLINE reverse_iterator2 boost::numeric::ublas::banded_matrix< T, L, A >::rbegin2 | ( | ) | [inline, inherited] |
Definition at line 962 of file banded.hpp.
BOOST_UBLAS_INLINE const_reverse_iterator2 boost::numeric::ublas::banded_matrix< T, L, A >::rend2 | ( | ) | const [inline, inherited] |
Definition at line 957 of file banded.hpp.
BOOST_UBLAS_INLINE reverse_iterator2 boost::numeric::ublas::banded_matrix< T, L, A >::rend2 | ( | ) | [inline, inherited] |
Definition at line 966 of file banded.hpp.
BOOST_UBLAS_INLINE friend void swap | ( | banded_matrix< T, L, A > & | m1, |
banded_matrix< T, L, A > & | m2 | ||
) | [friend, inherited] |
Definition at line 301 of file banded.hpp.
const unsigned boost::numeric::ublas::matrix_container< banded_matrix< T, L, A > >::complexity [static, inherited] |
Reimplemented from boost::numeric::ublas::matrix_expression< banded_matrix< T, L, A > >.
Definition at line 487 of file expression_types.hpp.