|
TBCI Numerical high perf. C++ Library 2.8.0
|
#include <matrix.h>


Public Types | |
| typedef T | value_type |
| typedef T | element_type |
| typedef T aligned_value_type | TALIGN(MIN_ALIGN2) |
Public Member Functions | |
| T * | getvec () const |
| T * | getendvec () const |
| TMatrix (const unsigned=0) | |
| c'tor for square Matrix | |
| TMatrix (const unsigned, const unsigned) | |
| c'tor for Matrix, specifying rows and columns | |
| TMatrix (const T &, const unsigned, const unsigned) | |
| c'tor for Matrix, specifying and initialization value and rows and columns | |
| TMatrix (const Vector< T > &, const enum rowcolvec=colvec) | |
| c'tor to construct 1-column (or 1-row) Matrix from Vector | |
| TMatrix (const TMatrix< T > &) HOT | |
| aliasing copies (TBCI) | |
| TMatrix (TSMatrix< T >) | |
| TMatrix (const Matrix< T > &) HOT | |
| full copying | |
| void | real_destroy () |
| real destructor | |
| void | mark_destroy () const |
| mark destructible | |
| ~TMatrix () | |
| template<typename U> | |
| TMatrix (const Matrix< U > &m) | |
| template<typename U> | |
| TMatrix (const TMatrix< U > &tm) | |
| TMatrix< T > & | operator= (const Matrix< T > &) HOT |
| assignment, non-resizing | |
| TMatrix< T > & | operator= (const TMatrix< T > &) HOT |
| TMatrix< T > & | operator= (TSMatrix< T >) |
| TMatrix< T > & | operator= (const T &) |
| TMatrix< T > & | alias (const TMatrix< T > &m) |
| TMatrix< T > & | operator+= (TMatrix< T >) |
| arithmetics ... | |
| TMatrix< T > & | operator+= (const Matrix< T > &) |
| TMatrix< T > & | operator+= (const T &) |
| TMatrix< T > & | operator+= (TSMatrix< T >) |
| TMatrix< T > & | operator-= (TMatrix< T >) |
| TMatrix< T > & | operator-= (const Matrix< T > &) |
| TMatrix< T > & | operator-= (const T &) |
| TMatrix< T > & | operator-= (TSMatrix< T >) |
| TSMatrix< T > | operator*= (const T &) |
| TSMatrix< T > | operator/= (const T &) |
| TMatrix< T > & | operator- () |
| TMatrix< T > & | operator+ (TMatrix< T >) |
| TMatrix< T > & | operator+ (TSMatrix< T >) |
| TMatrix< T > & | operator+ (const Matrix< T > &) |
| TMatrix< T > & | operator+ (const T &) |
| TMatrix< T > & | operator- (TMatrix< T >) |
| TMatrix< T > & | operator- (TSMatrix< T >) |
| TMatrix< T > & | operator- (const Matrix< T > &) |
| TMatrix< T > & | operator- (const T &) |
| TSMatrix< T > | operator* (const T &) |
| TSMatrix< T > | operator/ (const T &) |
| TMatrix< T > | operator* (const Matrix< T > &) |
| TMatrix< T > | operator* (TMatrix< T >) |
| TMatrix< T > | operator* (TSMatrix< T >) |
| TVector< T > | operator* (const Vector< T > &v) |
| TVector< T > | operator* (TVector< T > &tv) |
| TVector< T > | operator* (const TSVector< T > &tsv) |
| TMatrix< T > & | swap (TMatrix< T > &) |
| TMatrix< T > | transposed_copy () const |
| Inefficient! Use transMult if possible. | |
| TMatrix< T > & | transpose () |
| T | operator() (const unsigned int, const unsigned int) const HOT |
| Element access (desctructive for TMatrix!). | |
| Mat_Brack< T > | operator[] (const unsigned int i) const |
| T & | setval (const T &val, const unsigned int r, const unsigned int c) |
| T & | setval (const unsigned r, const unsigned c) |
| tbci_traits< T >::const_refval_type | get (const unsigned r, const unsigned c) const |
| get, set and getcref are used internally and not for public consumption | |
| T & | set (const T &val, const unsigned r, const unsigned c) |
| const T & | getcref (const unsigned r, const unsigned c) const |
| const T * | getrowptr (const unsigned r) const |
| Helpers for matvecmul. | |
| T * | getrowptr (const unsigned r) |
| bool | operator== (const Matrix< T > &m) |
| Comparison. | |
| bool | operator!= (const Matrix< T > &m) |
| bool | operator== (TMatrix< T > tm) |
| bool | operator!= (TMatrix< T > tm) |
| bool | operator== (TSMatrix< T >) |
| bool | operator!= (TSMatrix< T > ts) |
| unsigned int | columns () const |
| number of columns | |
| unsigned int | rows () const |
| number of rows | |
| unsigned long | size () const |
| number of elements | |
| TVector< T > | operator() (const unsigned int) const |
| Row vector. | |
| TVector< T > | get_row (const unsigned int) const |
| Row vector. | |
| TVector< T > | get_col (const unsigned int) const |
| Column vector. | |
| void | set_row (const Vector< T > &, const unsigned int) |
| Fill complete row. | |
| void | set_col (const Vector< T > &, const unsigned int) |
| Fill complete column. | |
| void | set_row_partial (const Vector< T > &, const unsigned int, const unsigned int) |
| Fill partial row. | |
| void | set_col_partial (const Vector< T > &, const unsigned int, const unsigned int) |
| Fill partial column. | |
| TMatrix< T > & | resize (const unsigned int, const unsigned int) |
| Resize Matrix, specifying rows and columns. | |
| TMatrix< T > & | resize (const unsigned int d) |
| Resize Matrix to square shape. | |
| TMatrix< T > & | resize (const T &, const unsigned int, const unsigned int) |
| Resize Matrix and fill with value. | |
| TMatrix< T > & | resize (const TMatrix< T > &) |
| Resizing assignment. | |
| TMatrix< T > & | cheapdownsizerow (const unsigned) |
| Resize number of rows without actually freeing memory (efficiency). | |
| TMatrix< T > & | fill (const T &=(T) 0) |
| Fill matrix. | |
| TMatrix< T > & | clear () |
| Clear matrix (fill with 0). | |
| TMatrix< T > & | fill (const Vector< T > &) |
| Fill complete matrix by vector elements (m00, m01, ... m0C, m10, ...). | |
| TMatrix< T > & | setunit (const T &=(T) 1) |
| Set to unit matrix (optionally scaled). | |
| TMatrix< T > & | row_expand (const unsigned int r) |
| Set new numbers of rows to matrix (expansion only). | |
| TMatrix< T > & | row_expand (const TMatrix< T > &m) |
| Append matrix below existing one. | |
| T | trace () const |
| Trace. | |
| double | fabssqr () const |
| Sum over all squared elements. | |
| double | fabs () const |
| Public Member Functions inherited from Matrix_Sig< T > | |
| Matrix_Sig () | |
| ~Matrix_Sig () | |
| tbci_traits< T >::const_refval_type | operator() (const unsigned, const unsigned) const |
| ro access | |
| T & | operator() (const unsigned, const unsigned) |
| rw access | |
| Matrix_Sig< T > & | fill (const T &) |
| Matrix_Sig< T > & | setunit (const T &=(T) 1) |
| Matrix_Sig< T > & | clear () |
| TVector< T > | operator* (const Vector_Sig< T > &) const |
| TVector< T > | transMult (const Vector_Sig< T > &) const |
| unsigned int | rows () const |
| unsigned int | columns () const |
Static Public Member Functions | |
| static const char * | mat_info () |
| Static Public Member Functions inherited from Matrix_Sig< T > | |
| static const char * | mat_info () |
Protected Types | |
| typedef T | mat_t |
| typedef T * | Tptr |
Protected Member Functions | |
| int | set_ptrs () |
Protected Attributes | |
| unsigned long | dim |
| unsigned int | row |
| unsigned int | col:31 |
| unsigned int | freeable:1 |
| T ** | mat |
| C storage layout: mat[row][col]. | |
| T * | vec |
| T * | endvec |
Temporary Base Class (non referable!) for Matrices (acc. to Temp. Base Class Idiom, iX 11/96, 166)
| typedef T aligned_value_type TMatrix< T >::TALIGN(MIN_ALIGN2) |
Definition at line 184 of file matrix.h.
References freeable, and real_destroy().
number of columns
Definition at line 315 of file matrix.h.
References col.
Referenced by BdMatrix< T >::BdMatrix(), CSCMatrix< T >::CSCMatrix(), do_fill_mat(), F_BandMatrix< T >::F_BandMatrix(), lu_decomp(), LU_det(), LU_invert(), norm_1(), and norm_1().
Fill matrix.
Definition at line 805 of file matrix.h.
References dim, T, TBCIFILL, TMatrix, and vec.
Referenced by Matrix< T >::fill(), Matrix< T >::fill(), and operator=().
|
inline |
get, set and getcref are used internally and not for public consumption
Definition at line 288 of file matrix.h.
Referenced by LU_bkw_subst(), lu_decomp(), LU_det(), LU_fwd_subst(), norm_1(), norm_1(), and TSMatrix< T >::operator*().
Row vector.
Definition at line 640 of file matrix.h.
References col, mark_destroy(), mat, T, TBCICOPY, and BVector< T >::vec.
Referenced by operator()().
mark destructible
Definition at line 402 of file matrix.h.
References freeable.
Referenced by get_col(), get_row(), norm_1(), operator()(), TSMatrix< T >::operator*(), and transposed_copy().
Definition at line 988 of file matrix.h.
References a, T, and TSMatrix< T >.
Definition at line 955 of file matrix.h.
References a, T, and TSMatrix< T >.
arithmetics ...
Definition at line 917 of file matrix.h.
References a, Matrix, operator+=(), and TMatrix.
Referenced by operator+(), operator+(), operator+(), Matrix< T >::operator+=(), Matrix< T >::operator+=(), Matrix< T >::operator+=(), Matrix< T >::operator+=(), and operator+=().
Definition at line 920 of file matrix.h.
References a, Matrix, operator-=(), and TMatrix.
Referenced by operator-(), operator-(), operator-(), Matrix< T >::operator-=(), Matrix< T >::operator-=(), Matrix< T >::operator-=(), Matrix< T >::operator-=(), and operator-=().
assignment, non-resizing
Definition at line 533 of file matrix.h.
References a, BCHK, dim, Matrix, T, TBCICOPY, TMatrix, and vec.
Referenced by Matrix< T >::operator=(), Matrix< T >::operator=(), and Matrix< T >::operator=().
Definition at line 2355 of file matrix.h.
References EXPCHK, Mat_Brack< T >, and row.
real destructor
Definition at line 394 of file matrix.h.
References dim, mat, row, T, TBCIDELETE, UNLIKELY, and vec.
Referenced by alias(), TSMatrix< T >::fabssqr(), TSMatrix< T >::operator*(), TSMatrix< T >::operator*(), TSMatrix< T >::operator*(), TSMatrix< T >::operator*(), TSMatrix< T >::operator+(), TSMatrix< T >::operator+(), TSMatrix< T >::operator-(), TSMatrix< T >::operator-(), TSMatrix< T >::operator==(), TSMatrix< T >::operator==(), and ~TMatrix().
| TMatrix< T > & TMatrix< T >::resize | ( | const unsigned int | r, |
| const unsigned int | c ) |
Resize Matrix, specifying rows and columns.
Definition at line 655 of file matrix.h.
References c, col, dim, endvec, LIKELY, mat, MIN, NEW, row, set_ptrs(), T, TBCICOPY, TBCIDELETE, TMatrix, UNLIKELY, and vec.
Referenced by cheapdownsizerow(), Matrix< T >::resize(), Matrix< T >::resize(), and Matrix< T >::resize().
number of rows
Definition at line 317 of file matrix.h.
References row.
Referenced by BdMatrix< T >::BdMatrix(), CSCMatrix< T >::CSCMatrix(), Matrix< T >::div_rows(), expm(), F_BandMatrix< T >::F_BandMatrix(), LU_bkw_subst(), lu_decomp(), LU_det(), LU_fwd_subst(), LU_invert(), Matrix< T >::mult_rows(), norm_1(), norm_1(), operator+(), operator+=(), operator+=(), operator-(), operator-=(), operator-=(), and par_fill().
|
inline |
Fill complete column.
Definition at line 606 of file matrix.h.
References BCHKNR, c, col, BVector< T >::dim, index, mat, REGISTER, row, set_col(), size(), and BVector< T >::vec.
Referenced by set_col(), and set_col_partial().
|
inline |
Fill complete row.
Definition at line 589 of file matrix.h.
References BCHKNR, col, BVector< T >::dim, index, mat, row, set_row(), size(), T, TBCICOPY, and BVector< T >::vec.
Referenced by operator>>(), and set_row().
|
inline |
Fill partial row.
Definition at line 597 of file matrix.h.
References BCHKNR, col, BVector< T >::dim, index, large, mat, row, set_row_partial(), T, TBCICOPY, and BVector< T >::vec.
Referenced by set_row_partial().
|
inline |
Definition at line 281 of file matrix.h.
Referenced by lu_decomp(), BdMatrix< T >::operator TMatrix< T >(), F_Matrix< T >::operator TMatrix< T >(), F_TMatrix< T >::operator TMatrix< T >(), F_TSMatrix< T >::operator TMatrix< T >(), and par_fill().
number of elements
Definition at line 319 of file matrix.h.
References dim.
Referenced by fill(), Matrix< T >::operator+(), Matrix< T >::operator+(), Matrix< T >::operator+(), Matrix< T >::operator-(), Matrix< T >::operator-(), Matrix< T >::operator-(), set_col(), and set_row().
Inefficient! Use transMult if possible.
Definition at line 1061 of file matrix.h.
References c, col, mark_destroy(), mat, and TMatrix.
Referenced by transpose(), and transpose().
Definition at line 131 of file matrix.h.
References Matrix, MIN_ALIGN2, and T.
References lu_invert(), NOINST, and TMatrix.
|
friend |
References lu_solve(), Matrix, NOINST, and TMatrix.
References LU_invert(), NOINST, and TMatrix.
|
friend |
References LU_solve(), Matrix, NOINST, and TMatrix.
|
friend |
References do_mat_tsv_mult(), end, FRIEND_TBCI2__, HOT, mat, Matrix, and res.
|
friend |
|
friend |
References do_mat_vec_mult(), end, FRIEND_TBCI2__, HOT, mat, Matrix, res, and vec.
Definition at line 131 of file matrix.h.
Referenced by operator[]().
Definition at line 190 of file matrix.h.
References Matrix.
Referenced by BdMatrix< T >, fabssqr(), FGD, FGD, FGD, FGD, Matrix, operator!=(), operator*(), operator*(), operator*(), operator*(), operator*(), operator*(), operator*FGD, operator+(), operator+(), operator+=(), operator+=(), operator+FGD, operator-(), operator-(), operator-=(), operator-=(), operator-FGD, operator/(), operator/=(), operator=(), operator==(), operator==(), operator==(), TMatrix(), TMatrix(), and transpose().
|
friend |
References FRIEND_TBCI__, NOINST, T, and TMatrix.
|
friend |
References FRIEND_TBCI__, Matrix, NOINST, T, and TMatrix.
|
friend |
References FRIEND_TBCI__, NOINST, T, and TMatrix.
|
friend |
References FRIEND_TBCI__, Matrix, NOINST, T, and TMatrix.
|
friend |
References FRIEND_TBCI__, NOINST, T, and TMatrix.
Definition at line 191 of file matrix.h.
References TMatrix.
Referenced by alias(), cheapdownsizerow(), clear(), FGD, FGD, FGD, FGD, FGD, fill(), fill(), Matrix< T >::Matrix(), Matrix< T >::Matrix(), Matrix< T >::Matrix(), Matrix< T >::Matrix(), Matrix< T >::Matrix(), Matrix< T >::Matrix(), Matrix< T >::Matrix(), Matrix< T >::Matrix(), Matrix< T >::Matrix(), Matrix< T >::operator!=(), operator!=(), Matrix< T >::operator*(), Matrix< T >::operator*(), Matrix< T >::operator*(), operator*(), operator*(), operator*(), operator*FGD, operator*FGD, Matrix< T >::operator+(), Matrix< T >::operator+(), Matrix< T >::operator+(), Matrix< T >::operator+(), operator+(), operator+(), operator+(), operator+(), Matrix< T >::operator+=(), operator+=(), operator+=(), operator+=(), operator+=(), operator+FGD, operator+FGD, Matrix< T >::operator-(), Matrix< T >::operator-(), Matrix< T >::operator-(), Matrix< T >::operator-(), Matrix< T >::operator-(), operator-(), operator-(), operator-(), operator-(), operator-(), Matrix< T >::operator-=(), operator-=(), operator-=(), operator-=(), operator-=(), operator-FGD, operator-FGD, Matrix< T >::operator=(), Matrix< T >::operator=(), operator=(), operator=(), operator=(), operator=(), Matrix< T >::operator==(), operator==(), resize(), resize(), resize(), resize(), row_expand(), row_expand(), setunit(), swap(), TMatrix, TMatrix(), TMatrix(), transpose(), and transposed_copy().
Definition at line 131 of file matrix.h.
Referenced by operator*(), operator*(), operator*(), operator*=(), operator/(), and operator/=().
Definition at line 116 of file matrix.h.
Referenced by alias(), cheapdownsizerow(), columns(), get_col(), get_row(), Matrix< T >::operator()(), Matrix< T >::operator()(), operator()(), TSMatrix< T >::operator*(), TSMatrix< T >::operator*(), operator+(), TSMatrix< T >::operator+(), TSMatrix< T >::operator+(), operator+=(), operator+=(), operator-(), TSMatrix< T >::operator-(), TSMatrix< T >::operator-(), operator-=(), operator-=(), operator<<(), operator=(), operator=(), TSMatrix< T >::operator=(), Matrix< T >::operator==(), operator==(), operator==(), TSMatrix< T >::operator==(), operator>>(), resize(), resize(), resize(), row_expand(), row_expand(), set_col(), set_col_partial(), set_ptrs(), set_row(), set_row_partial(), setunit(), swap(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), trace(), transpose(), and transposed_copy().
Definition at line 115 of file matrix.h.
Referenced by alias(), bvfillm(), cheapdownsizerow(), clear(), fill(), fill(), operator+(), operator+=(), operator+=(), operator+=(), operator-(), operator-(), operator-=(), operator-=(), operator-=(), operator=(), TSMatrix< T >::operator=(), operator==(), operator==(), real_destroy(), resize(), resize(), resize(), row_expand(), row_expand(), set_ptrs(), setunit(), size(), swap(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), and TMatrix().
Definition at line 119 of file matrix.h.
Referenced by alias(), cheapdownsizerow(), TSMatrix< T >::detach(), getendvec(), TSMatrix< T >::operator=(), Matrix< T >::operator==(), operator==(), resize(), resize(), resize(), row_expand(), row_expand(), set_ptrs(), swap(), TMatrix(), TMatrix(), TMatrix(), and TMatrix().
Definition at line 117 of file matrix.h.
Referenced by alias(), mark_destroy(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), Matrix< T >::~Matrix(), and ~TMatrix().
C storage layout: mat[row][col].
Definition at line 119 of file matrix.h.
Referenced by alias(), TSMatrix< T >::detach(), FGD, FGD, get(), get_col(), get_row(), getcref(), getrowptr(), getrowptr(), operator()(), TSMatrix< T >::operator*(), TSMatrix< T >::operator=(), real_destroy(), resize(), resize(), resize(), row_expand(), row_expand(), set(), set_col(), set_col_partial(), set_ptrs(), set_row(), set_row_partial(), setunit(), setval(), setval(), swap(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), trace(), and transposed_copy().
Definition at line 116 of file matrix.h.
Referenced by alias(), cheapdownsizerow(), get_col(), Matrix< T >::operator()(), Matrix< T >::operator()(), Matrix< T >::operator()(), operator()(), TSMatrix< T >::operator*(), TSMatrix< T >::operator*(), operator+(), TSMatrix< T >::operator+(), TSMatrix< T >::operator+(), operator+=(), operator+=(), operator-(), TSMatrix< T >::operator-(), TSMatrix< T >::operator-(), operator-=(), operator-=(), operator<<(), operator=(), operator=(), TSMatrix< T >::operator=(), Matrix< T >::operator==(), operator==(), operator==(), TSMatrix< T >::operator==(), operator>>(), operator[](), real_destroy(), resize(), resize(), resize(), row_expand(), row_expand(), rows(), set_col(), set_col_partial(), set_ptrs(), set_row(), set_row_partial(), setunit(), swap(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), and trace().
Definition at line 119 of file matrix.h.
Referenced by alias(), bvfillm(), cheapdownsizerow(), clear(), TSMatrix< T >::detach(), FGD, fill(), fill(), getvec(), Matrix< T >::operator+(), Matrix< T >::operator+(), operator+(), TSMatrix< T >::operator+(), TSMatrix< T >::operator+(), operator+=(), operator+=(), operator+=(), Matrix< T >::operator-(), Matrix< T >::operator-(), operator-(), operator-(), TSMatrix< T >::operator-(), TSMatrix< T >::operator-(), operator-=(), operator-=(), operator-=(), operator=(), TSMatrix< T >::operator=(), Matrix< T >::operator==(), operator==(), operator==(), TSMatrix< T >::operator==(), real_destroy(), resize(), resize(), resize(), row_expand(), row_expand(), set_ptrs(), setunit(), swap(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), TMatrix(), and trace().