|
TBCI Numerical high perf. C++ Library
2.8.0
|
Temporary Base Class Idiom: Class TVector is used for temporary variables. More...
#include <bvector.h>


Public Types | |
| typedef T | value_type |
| typedef T | element_type |
| typedef T aligned_value_type | TALIGN (MIN_ALIGN2) |
Public Types inherited from BVector< T > | |
| typedef T * | iterator |
| STL-like iterator support. More... | |
| typedef const T * | const_iterator |
Public Member Functions | |
| TVector (const unsigned long d=0) | |
| TVector (const T &val, const unsigned long d) | |
| TVector (const BVector< T > &bv) | |
| TVector (const Vector< T > &v) | |
| TVector (const TVector< T > &tv) HOT | |
| TVector (const TSVector< T > &ts) | |
| TVector (const Mat_Brack< T > &) | |
| ~TVector () | |
| unsigned long | size () const |
| TVector< T > & | operator= (const T &a) |
| TVector< T > & | operator= (const Vector< T > &v) |
| TVector< T > & | operator= (const TVector< T > &tv) |
| alias More... | |
| TVector< T > & | operator= (const TSVector< T > &ts) |
| bool | operator== (const TVector< T > &tv) const |
| bool | operator!= (const TVector< T > &tv) const |
| bool | operator== (const Vector< T > &v) const |
| bool | operator!= (const Vector< T > &v) const |
| bool | operator== (const BVector< T > &bv) const |
| bool | operator!= (const BVector< T > &v) const |
| bool | operator== (const TSVector< T > &tsv) const |
| bool | operator!= (const TSVector< T > &tsv) const |
| TVector< T > & | operator+= (const T &) |
| TV += a. More... | |
| TVector< T > & | operator-= (const T &) |
| TV -= a. More... | |
| TVector< T > & | operator*= (const T &) |
| TV *= a. More... | |
| TVector< T > & | operator/= (const T &) |
| TV /= a. More... | |
| TVector< T > & | operator+= (const Vector< T > &) HOT |
| TV += V. More... | |
| TVector< T > & | operator-= (const Vector< T > &) HOT |
| TV -= V. More... | |
| TVector< T > & | operator+= (const TVector< T > &tv) |
| TVector< T > & | operator-= (const TVector< T > &tv) |
| TVector< T > & | operator+= (const TSVector< T > &tsv) HOT |
| TV += TSV. More... | |
| TVector< T > & | operator-= (const TSVector< T > &tsv) HOT |
| TV -= TSV. More... | |
| T | min () |
| T | max () |
| T | sum () |
| double | fabssqr () |
| double | fabs () |
| T | abs () |
| TVector< T > & | operator+ (const Vector< T > &) HOT |
| TVector< T > & | operator- (const Vector< T > &) HOT |
| TVector< T > & | operator+ (const TSVector< T > &ts) HOT |
| TV = TV + TSV Transformed to TV += TSV. More... | |
| TVector< T > & | operator- (const TSVector< T > &ts) HOT |
| TV = TV - TSV Transformed to TV -= TSV. More... | |
| const TVector< T > & | operator+ (const TVector< T > &a) HOT |
| TV = TV + TV Transformed to TV += TV. More... | |
| const TVector< T > & | operator- (const TVector< T > &a) HOT |
| TV = TV - TV Transformed to TV -= TV. More... | |
| T | operator() (const unsigned long i) |
| T | operator[] (const unsigned long i) |
| const T & | getcref (const unsigned long i) const |
| tbci_traits< T >::const_refval_type | get (const unsigned long i) const |
| T & | setval (const unsigned long i) const |
| T & | setval (const T &val, const unsigned long i) const |
| T & | set (const T &val, const unsigned long i) const |
| TVector< T > | slice (const unsigned long, const unsigned long) |
| TVector< T > & | incr (const unsigned long, const T=(T) 1) |
| TVector< T > & | operator+ (const T &) |
| TVector< T > & | operator- (const T &) |
| TSVector< T > | operator* (const T &) |
| TSVector< T > | operator/ (const T &) |
| TSVector< T > | operator- () |
| T | operator* (const Vector< T > &v) |
| T | operator* (TVector< T > &tv) |
| template<typename U > | |
| TVector (const BVector< U > &bv) | |
Public Member Functions inherited from BVector< T > | |
| BVector (const unsigned long=0) | |
| BVector (const T &, const unsigned long) | |
| BVector (const BVector< T > &) HOT | |
| copy constructor More... | |
| BVector (const vararg va,...) | |
| void | destroy () |
| ~BVector () | |
| BVector< T > & | init_0 () |
| BVector< T > & | fill (const T &) HOT |
| BVector< T > & | resize (const BVector< T > &) |
| Actually it's a resize and copy (some people would expect the assignment op to do this) More... | |
| BVector< T > & | resize (const unsigned long) |
| BVector< T > & | resize (const T &, const unsigned long) |
| BVector< T > & | cheapdownsize (const unsigned long) |
| BVector< T > & | clear () |
| BVector< T > & | append (const T &) |
| performs poorly More... | |
| BVector< T > & | push_back (const T &value) |
| performs poorly More... | |
| BVector< T > & | append (const BVector< T > &) |
| BVector< T > & | remove (const unsigned long) |
| BVector< T > & | revert () |
| BVector< T > & | bubble_sort () |
| BVector< T > & | swap (BVector< T > &v) |
| T & | operator() (const unsigned long) HOT |
| tbci_traits< T >::const_refval_type | operator() (const unsigned long) const HOT |
| const T & | getcref (const unsigned long idx) const |
| tbci_traits< T >::const_refval_type | get (const unsigned long idx) const HOT |
| T & | set (const unsigned long idx) HOT |
| T & | set (const T &val, unsigned long idx) |
| T & | operator[] (const unsigned long i) |
| tbci_traits< T >::const_refval_type | operator[] (const unsigned long i) const |
| unsigned long | size () const HOT |
| T *const & | vecptr () const |
| iterator | begin () |
| iterator | end () |
| const_iterator | begin () const |
| const_iterator | end () const |
| BVector< T > & | setptr (T *pointer) |
| BVector< T > & | setsize (const unsigned long size) |
| T *const & | get_fortran_vector () const |
| void | set_fortran_vector (T *pointer) |
| BVector< T > & | operator= (const T &a) |
| BVector< T > & | operator= (const BVector< T > &) HOT |
| Note that the assignment op does NEVER resize the target BVector. More... | |
| BVector< T > & | alias (const BVector< T > &bv) |
| BVector< T > & | copy (const BVector< T > &bv) |
| copy does a resize, if necessary More... | |
| bool | operator== (const BVector< T > &) const HOT |
| KG, 2001-06-29: Strange: If we don't inline this, we seems to get better performance in our solver benchmark (iPIII) More... | |
| bool | operator!= (const BVector< T > &bv) const |
| bool | operator<= (const BVector< T > &bv) const |
| bool | operator>= (const BVector< T > &bv) const |
| bool | operator< (const BVector< T > &bv) const |
| bool | operator> (const BVector< T > &bv) const |
| bool | contains (const T &, unsigned long *=0) const |
| BVector< T > | concat (const BVector< T > &) const |
| template<typename U > | |
| BVector (const BVector< U > &bv) | |
Public Member Functions inherited from BVector_Sig< T > | |
| BVector_Sig () | |
| BVector_Sig (const unsigned long) | |
| ~BVector_Sig () | |
| T & | operator() (const unsigned long) |
| tbci_traits< T >::const_refval_type | operator() (const unsigned long) const |
| unsigned long | size () const |
| BVector_Sig< T > & | fill (const T &) |
| BVector_Sig< T > & | clear () |
| bool | operator== (const BVector_Sig< T > &) const |
| bool | operator!= (const BVector_Sig< T > &) const |
Public Member Functions inherited from Vector_Sig< T > | |
| Vector_Sig () | |
| Vector_Sig (const unsigned) | |
| ~Vector_Sig () | |
| Vector_Sig< T > | operator+ (const Vector_Sig< T > &) const |
| Vector_Sig< T > | operator- (const Vector_Sig< T > &) const |
| Vector_Sig< T > | operator* (const T &) const |
| Vector_Sig< T > | operator/ (const T &) const |
| Vector_Sig< T > & | operator+= (const Vector_Sig< T > &) |
| Vector_Sig< T > & | operator-= (const Vector_Sig< T > &) |
| Vector_Sig< T > & | operator*= (const T &) |
| Vector_Sig< T > & | operator/= (const T &) |
| bool | operator<= (const Vector_Sig< T > &) const |
| bool | operator>= (const Vector_Sig< T > &) const |
| bool | operator< (const Vector_Sig< T > &) const |
| bool | operator> (const Vector_Sig< T > &) const |
Static Public Member Functions | |
| static const char * | vec_info () |
Static Public Member Functions inherited from BVector< T > | |
| static const char * | vec_info () |
Static Public Member Functions inherited from BVector_Sig< T > | |
| static const char * | vec_info () |
Friends | |
| class | Vector< T > |
| class | TSVector< T > |
| class | Matrix< T > |
| class | BdMatrix< T > |
| TVector< T > conj | FGD (const Vector< T > &) |
| TVector< T > real | FGD (const Vector< T > &) |
| TVector< T > imag | FGD (const Vector< T > &) |
| TVector< T > &conj | FGD (TVector< T > &) |
| TVector< T > &real | FGD (TVector< T > &) |
| TVector< T > &imag | FGD (TVector< T > &) |
| STD__ ostream & | operator<< FGD (STD__ ostream &, const TVector< T > &) |
| NOINST void FRIEND_TBCI2__ do_mat_vec_mult | FGD (const unsigned start, const unsigned end, TVector< T > *res, const Matrix< T > *mat, const Vector< T > *vec) |
| NOINST void FRIEND_TBCI2__ do_mat_tsv_mult | FGD (const unsigned start, const unsigned end, TVector< T > *res, const Matrix< T > *mat, const TSVector< T > *rsv) |
| NOINST void FRIEND_TBCI2__ do_mat_vec_transmult | FGD (const unsigned start, const unsigned end, TVector< T > *res, const Matrix< T > *mat, const Vector< T > *vec) |
Additional Inherited Members | |
Protected Types inherited from BVector< T > | |
| typedef T | value_type |
| typedef T | element_type |
| typedef T aligned_value_type | TALIGN (MIN_ALIGN2) |
Protected Attributes inherited from BVector< T > | |
| T * | vec |
| unsigned long | dim |
| bool | keep |
Temporary Base Class Idiom: Class TVector is used for temporary variables.
Unlike real Vectors it can be copied by aliasing. Never use TVectors in your programs explicitly!
| typedef T aligned_value_type TVector< T >::TALIGN(MIN_ALIGN2) |
Definition at line 89 of file vector.h.
References BVector< T >::dim, and BVector< T >::vec.
Definition at line 91 of file vector.h.
References BVector< T >::dim, TSVector< T >::dim, TSVector< T >::eval(), BVector< T >::vec, and TSVector< T >::vec.
Definition at line 2333 of file matrix.h.
References TMatrix< T >::dim, and TMatrix< T >::vec.
Definition at line 95 of file vector.h.
References BVector< T >::keep.
Definition at line 152 of file vector.h.
References Vector< T >::abs().
Definition at line 151 of file vector.h.
References Vector< T >::fabs().
Definition at line 150 of file vector.h.
References Vector< T >::fabssqr().
Referenced by fabssqr().
|
inline |
Definition at line 190 of file vector.h.
References i, and BVector< T >::vec.
Referenced by cediv(), cemul(), conj(), BdMatrix< T >::div_rows(), do_bdmat_vec_dotmult(), do_bdmat_vec_mult_diagw_exact(), do_bdmat_vec_mult_lnw(), do_bdmat_vec_mult_lnw_opt(), do_bdmat_vec_transmult_diagw_exact(), do_bdmat_vec_transmult_lnw(), do_bdmat_vec_transmult_lnw_opt(), ediv(), emul(), imag(), LU_bkw_subst(), LU_fwd_subst(), BdMatrix< T >::mult_rows(), Symm_BdMatrix< T >::operator*(), TSMatrix< T >::operator*(), real(), Symm_BdMatrix< T >::setval(), ILU0_Symm_BdMatrixPreconditioner< T >::solve(), and ILU0_BdMatrixPreconditioner< T >::solve().
Definition at line 188 of file vector.h.
References i, and BVector< T >::vec.
Referenced by cediv(), cemul(), do_bdmat_vec_dotmult(), do_bdmat_vec_mult(), do_bdmat_vec_mult_diagw_exact(), do_bdmat_vec_mult_lnw_opt(), do_bdmat_vec_transmult(), do_bdmat_vec_transmult_diagw_exact(), do_bdmat_vec_transmult_lnw_opt(), ediv(), emul(), HOTDECL(), operator+(), and operator-().
|
inline |
Definition at line 973 of file vector.h.
References BCHK, BdMatrix< T >::dim, and i.
Definition at line 147 of file vector.h.
References Vector< T >::max().
Definition at line 146 of file vector.h.
References Vector< T >::min().
Definition at line 182 of file vector.h.
References BVector< T >::destroy(), i, T, and BVector< T >::vec.
Referenced by TVector< T >::operator[]().
TV *= a.
Definition at line 680 of file vector.h.
References BdMatrix< T >::dim, and STD_SMP_TEMPLATE2C.
Definition at line 737 of file vector.h.
References BdMatrix< T >::operator+=().
TV = TV + TSV Transformed to TV += TSV.
Definition at line 927 of file vector.h.
References BCHK, TSVector< T >::destroy(), BdMatrix< T >::dim, TSVector< T >::dim, TSVector< T >::fac(), LIKELY, STD_SMP_TEMPLATE3VC, and TSVector< T >::vec.
TV = TV + TV Transformed to TV += TV.
Definition at line 753 of file vector.h.
References BCHK, BdMatrix< T >::destroy(), BVector< T >::dim, BdMatrix< T >::dim, STD_SMP_TEMPLATE2V, and BVector< T >::vec.
Definition at line 821 of file vector.h.
References BdMatrix< T >::operator+=().
TV += a.
Definition at line 666 of file vector.h.
References BdMatrix< T >::dim, and STD_SMP_TEMPLATE2C.
Referenced by TVector< T >::operator+=().
TV += V.
Definition at line 697 of file vector.h.
References BCHK, BVector< T >::dim, BdMatrix< T >::dim, STD_SMP_TEMPLATE2V, and BVector< T >::vec.
Definition at line 136 of file vector.h.
References TVector< T >::operator+=().
TV += TSV.
Definition at line 714 of file vector.h.
References BCHK, TSVector< T >::destroy(), BdMatrix< T >::dim, TSVector< T >::dim, TSVector< T >::fac(), LIKELY, STD_SMP_TEMPLATE3VC, and TSVector< T >::vec.
Definition at line 743 of file vector.h.
References BdMatrix< T >::operator-=().
TV = TV - TSV Transformed to TV -= TSV.
Definition at line 942 of file vector.h.
References BCHK, TSVector< T >::destroy(), BdMatrix< T >::dim, TSVector< T >::dim, TSVector< T >::fac(), LIKELY, STD_SMP_TEMPLATE3VC, and TSVector< T >::vec.
TV = TV - TV Transformed to TV -= TV.
Definition at line 764 of file vector.h.
References BCHK, BdMatrix< T >::destroy(), BVector< T >::dim, BdMatrix< T >::dim, STD_SMP_TEMPLATE2V, and BVector< T >::vec.
Definition at line 824 of file vector.h.
References BdMatrix< T >::operator-=().
TV -= a.
Definition at line 673 of file vector.h.
References BdMatrix< T >::dim, and STD_SMP_TEMPLATE2C.
Referenced by TVector< T >::operator-=().
TV -= V.
Definition at line 705 of file vector.h.
References BCHK, BVector< T >::dim, BdMatrix< T >::dim, STD_SMP_TEMPLATE2V, and BVector< T >::vec.
Definition at line 138 of file vector.h.
References TVector< T >::operator-=().
TV -= TSV.
Definition at line 724 of file vector.h.
References BCHK, TSVector< T >::destroy(), BdMatrix< T >::dim, TSVector< T >::dim, TSVector< T >::fac(), LIKELY, STD_SMP_TEMPLATE3VC, and TSVector< T >::vec.
TV /= a.
Definition at line 688 of file vector.h.
References BCHK, BdMatrix< T >::operator*=(), and T.
Definition at line 106 of file vector.h.
References BVector< T >::operator=().
Referenced by Vector< unsigned >::operator=().
Definition at line 108 of file vector.h.
References BVector< T >::operator=().
alias
Definition at line 242 of file vector.h.
References BCHK, BdMatrix< T >::destroy(), BVector< T >::dim, BdMatrix< T >::dim, LIKELY, BdMatrix< T >::size(), and BVector< T >::vec.
Definition at line 257 of file vector.h.
References BCHK, BdMatrix< T >::destroy(), BdMatrix< T >::dim, TSVector< T >::dim, TSVector< T >::eval(), TSVector< T >::fac(), LIKELY, TSVector< T >::mut, BdMatrix< T >::size(), T, and TSVector< T >::vec.
Definition at line 114 of file vector.h.
References LIKELY, v, and BVector< T >::vec.
Definition at line 185 of file vector.h.
References TVector< T >::operator()().
Definition at line 194 of file vector.h.
References i, and BVector< T >::vec.
Referenced by cediv(), cemul(), conj(), do_bdmat_vec_dotmult(), do_bdmat_vec_mult_lnw(), do_bdmat_vec_mult_lnw_opt(), do_bdmat_vec_transmult_lnw(), do_bdmat_vec_transmult_lnw_opt(), do_fbdmat_vec_mul(), ediv(), emul(), F_BandMatrix< T >::get_col(), BdMatrix< T >::get_col(), CRMatrix< T >::get_row(), BdMatrix< T >::get_row(), Index::idx_fill_in1(), Index::idx_fill_in2(), Index::idx_remove1(), Index::idx_remove2(), Index::idx_set1(), imag(), LU_bkw_subst(), LU_fwd_subst(), CRMatrix< T >::operator*(), F_TSMatrix< T >::operator*(), TSMatrix< T >::operator*(), F_Matrix< T >::operator*(), real(), sv_decomp_backsub(), F_BandMatrix< T >::transMult(), and CSCMatrix< T >::transMult().
Definition at line 192 of file vector.h.
References i, and BVector< T >::vec.
Referenced by cediv(), cemul(), CSCMatrix< T >::cscm_vec_mul_exact(), do_bdmat_vec_dotmult(), do_bdmat_vec_mult(), do_bdmat_vec_mult_diagw_exact(), do_bdmat_vec_mult_lnw_opt(), do_bdmat_vec_transmult(), do_bdmat_vec_transmult_diagw_exact(), do_bdmat_vec_transmult_lnw_opt(), ediv(), emul(), HOTDECL(), CSCMatrix< T >::operator*(), operator+(), operator-(), par_fill(), ILU0_Symm_BdMatrixPreconditioner< T >::solve(), DILU_BdMatrixPreconditioner< T >::solve(), DiagPreconditioner< T, MatrixType >::solve(), ILU0_BdMatrixPreconditioner< T >::solve(), and CRMatrix< T >::transMult().
Definition at line 193 of file vector.h.
References i, and BVector< T >::vec.
Definition at line 104 of file vector.h.
References BVector< T >::dim.
Referenced by basis_trafo(), CTensor< T >::calc_offs(), cediv(), cemul(), Chisq(), chisq(), conj(), Tensor< T >::contract(), CSCMatrix< T >::cscm_vec_mul_exact(), BdMatrix< T >::div_rows(), Matrix< T >::div_rows(), do_fbdmat_vec_mul(), dot(), BdMatrix< T >::dotMult(), ediv(), emul(), exact_sum(), HOTDECL(), Index::idx_fill_in1(), Index::idx_fill_in2(), Index::idx_remove1(), Index::idx_remove2(), Index::idx_set1(), imag(), kahan_sum(), lev_mar(), LM_fit_2D(), LU_bkw_subst(), LU_fwd_subst(), lu_solve(), lu_solve_expert(), CRMatrix< T >::MatVecMult(), CSCMatrix< T >::MatVecMult(), BdMatrix< T >::mult_rows(), Matrix< T >::mult_rows(), Symm_BdMatrix< T >::operator*(), CRMatrix< T >::operator*(), CSCMatrix< T >::operator*(), BdMatrix< T >::operator*(), F_TSMatrix< T >::operator*(), TSMatrix< T >::operator*(), Vector< T >::operator*(), Matrix< T >::operator*(), operator+(), operator-(), par_fill(), real(), CTensor< T >::resize(), CRMatrix< T >::set_row(), BdMatrix< T >::set_row(), DILU_BdMatrixPreconditioner< T >::solve(), ILU0_BdMatrixPreconditioner< T >::solve(), sv_decomp_backsub(), F_BandMatrix< T >::transMult(), CRMatrix< T >::transMult(), CSCMatrix< T >::transMult(), BdMatrix< T >::transMult(), Matrix< T >::transMult(), and WEAK().
|
inline |
Definition at line 956 of file vector.h.
References BCHK, BdMatrix< T >::dim, T, TBCIDELETE, and UNLIKELY.
Definition at line 148 of file vector.h.
References Vector< T >::sum().
|
friend |
|
friend |
|
friend |
|
friend |
1.8.5