TBCI Numerical high perf. C++ Library  2.8.0
Macros | Functions
vector_extra.h File Reference

contains rarely used functions on TBCI::Vector s More...

#include "tbci/vector.h"
#include "tbci/matrix.h"
Include dependency graph for vector_extra.h:

Go to the source code of this file.

Macros

#define _VEC   getvec()
 
#define _ENDVEC   getendvec()
 
#define _DIM   size()
 
#define _ROW   rows()
 
#define _COL   columns()
 
#define _FAC   getfac()
 

Functions

template<typename T >
NAMESPACE_TBCI TVector< Temul (const Vector< T > &a, const Vector< T > &b)
 
template<typename T >
TVector< Temul (TVector< T > a, const Vector< T > &b)
 
template<typename T >
TVector< Temul (const Vector< T > &a, TVector< T > b)
 
template<typename T >
TVector< Temul (TVector< T > a, TVector< T > b)
 
template<typename T >
TVector< Tcemul (const Vector< T > &a, const Vector< T > &b)
 
template<typename T >
TVector< Tcemul (TVector< T > a, const Vector< T > &b)
 
template<typename T >
TVector< Tcemul (const Vector< T > &a, TVector< T > b)
 
template<typename T >
TVector< Tcemul (TVector< T > a, TVector< T > b)
 
template<typename T >
TVector< Tediv (const Vector< T > &a, const Vector< T > &b)
 
template<typename T >
TVector< Tediv (TVector< T > a, const Vector< T > &b)
 
template<typename T >
TVector< Tediv (const Vector< T > &a, TVector< T > b)
 
template<typename T >
TVector< Tediv (TVector< T > a, TVector< T > b)
 
template<typename T >
TVector< Tcediv (const Vector< T > &a, const Vector< T > &b)
 
template<typename T >
TVector< Tcediv (TVector< T > a, const Vector< T > &b)
 
template<typename T >
TVector< Tcediv (const Vector< T > &a, TVector< T > b)
 
template<typename T >
TVector< Tcediv (TVector< T > a, TVector< T > b)
 
template<typename T >
TVector< Temul (TVector< T > tv, const TSVector< T > &ts)
 
template<typename T >
TVector< Temul (const TSVector< T > &ts, TVector< T > tv)
 
template<typename T >
TVector< Temul (const Vector< T > &v, const TSVector< T > &ts)
 
template<typename T >
TVector< Temul (const TSVector< T > &ts, const Vector< T > &v)
 
template<typename T >
TVector< Temul (const TSVector< T > &ts1, const TSVector< T > &ts2)
 
template<typename T >
TVector< Tcemul (TVector< T > tv, const TSVector< T > &ts)
 
template<typename T >
TVector< Tcemul (const TSVector< T > &ts, TVector< T > tv)
 
template<typename T >
TVector< Tcemul (const Vector< T > &v, const TSVector< T > &ts)
 
template<typename T >
TVector< Tcemul (const TSVector< T > &ts, const Vector< T > &v)
 
template<typename T >
TVector< Tcemul (const TSVector< T > &ts1, const TSVector< T > &ts2)
 
template<typename T >
TVector< Tediv (TVector< T > tv, const TSVector< T > &ts)
 
template<typename T >
TVector< Tediv (const Vector< T > &v, const TSVector< T > &ts)
 
template<typename T >
TVector< Tediv (const TSVector< T > &ts1, const TSVector< T > &ts2)
 
template<typename T >
TVector< Tediv (const TSVector< T > &ts, const Vector< T > &v)
 
template<typename T >
TVector< Tediv (const TSVector< T > &ts, TVector< T > tv)
 
template<typename T >
TVector< Tcediv (TVector< T > tv, const TSVector< T > &ts)
 
template<typename T >
TVector< Tcediv (const TSVector< T > &ts, TVector< T > tv)
 
template<typename T >
TVector< Tcediv (const Vector< T > &v, const TSVector< T > &ts)
 
template<typename T >
TVector< Tcediv (const TSVector< T > &ts, const Vector< T > &v)
 
template<typename T >
TVector< Tcediv (const TSVector< T > &ts1, const TSVector< T > &ts2)
 
template<typename T >
TVector< Tediv (const T &a, TVector< T > b)
 
template<typename T >
TVector< Tediv (const T &a, const Vector< T > &b)
 
template<typename T >
TVector< Tediv (const T &a, const TSVector< T > &ts)
 
template<typename T >
T kahan_sum (const Vector< T > &v)
 
template<typename T >
T exact_sum (const Vector< T > &v)
 
template<typename T >
TMatrix< Temul (const Matrix< T > &a, const Matrix< T > &b)
 
template<typename T >
TMatrix< Tcemul (const Matrix< T > &a, const Matrix< T > &b)
 
template<typename T >
TMatrix< Tediv (const Matrix< T > &a, const Matrix< T > &b)
 
template<typename T >
TMatrix< Tcediv (const Matrix< T > &a, const Matrix< T > &b)
 
template<typename T >
TMatrix< Tediv (const T &a, TMatrix< T > b)
 
template<typename T >
TMatrix< Tediv (const T &a, const Matrix< T > &b)
 
template<typename T >
TMatrix< Tediv (const T &a, const TSMatrix< T > &ts)
 

Detailed Description

contains rarely used functions on TBCI::Vector s

Definition in file vector_extra.h.

Macro Definition Documentation

◆ _COL

#define _COL   columns()

Definition at line 508 of file vector_extra.h.

◆ _DIM

#define _DIM   size()

Definition at line 506 of file vector_extra.h.

◆ _ENDVEC

#define _ENDVEC   getendvec()

Definition at line 505 of file vector_extra.h.

◆ _FAC

#define _FAC   getfac()

Definition at line 509 of file vector_extra.h.

◆ _ROW

#define _ROW   rows()

Definition at line 507 of file vector_extra.h.

◆ _VEC

#define _VEC   getvec()

Definition at line 504 of file vector_extra.h.

Function Documentation

◆ cediv() [1/10]

template<typename T >
TVector<T> cediv ( const Vector< T > &  a,
const Vector< T > &  b 
)
inline

Definition at line 147 of file vector_extra.h.

References a, b, BCHK, and TSVector< T >::size().

Referenced by cediv().

◆ cediv() [2/10]

template<typename T >
TVector<T> cediv ( TVector< T a,
const Vector< T > &  b 
)
inline

Definition at line 157 of file vector_extra.h.

References a, b, BCHK, and TSVector< T >::size().

◆ cediv() [3/10]

template<typename T >
TVector<T> cediv ( const Vector< T > &  a,
TVector< T b 
)
inline

Definition at line 166 of file vector_extra.h.

References a, b, BCHK, and TSVector< T >::size().

◆ cediv() [4/10]

template<typename T >
TVector<T> cediv ( TVector< T a,
TVector< T b 
)
inline

Definition at line 175 of file vector_extra.h.

References a, b, BCHK, and TSVector< T >::size().

◆ cediv() [5/10]

template<typename T >
TVector<T> cediv ( TVector< T tv,
const TSVector< T > &  ts 
)

◆ cediv() [6/10]

template<typename T >
TVector<T> cediv ( const TSVector< T > &  ts,
TVector< T tv 
)

◆ cediv() [7/10]

template<typename T >
TVector<T> cediv ( const Vector< T > &  v,
const TSVector< T > &  ts 
)

◆ cediv() [8/10]

template<typename T >
TVector<T> cediv ( const TSVector< T > &  ts,
const Vector< T > &  v 
)

◆ cediv() [9/10]

template<typename T >
TVector<T> cediv ( const TSVector< T > &  ts1,
const TSVector< T > &  ts2 
)

◆ cediv() [10/10]

template<typename T >
TMatrix<T> cediv ( const Matrix< T > &  a,
const Matrix< T > &  b 
)

Definition at line 549 of file vector_extra.h.

References a, b, BCHK, cediv(), and res.

◆ cemul() [1/10]

template<typename T >
TVector<T> cemul ( const Vector< T > &  a,
const Vector< T > &  b 
)
inline

Definition at line 66 of file vector_extra.h.

References a, b, BCHK, TSVector< T >::dim, TVector< T >::setval(), and TSVector< T >::size().

Referenced by cemul().

◆ cemul() [2/10]

template<typename T >
TVector<T> cemul ( TVector< T a,
const Vector< T > &  b 
)
inline

Definition at line 77 of file vector_extra.h.

References a, b, BCHK, TSVector< T >::dim, and TSVector< T >::size().

◆ cemul() [3/10]

template<typename T >
TVector<T> cemul ( const Vector< T > &  a,
TVector< T b 
)
inline

Definition at line 87 of file vector_extra.h.

References a, b, BCHK, TSVector< T >::dim, and TSVector< T >::size().

◆ cemul() [4/10]

template<typename T >
TVector<T> cemul ( TVector< T a,
TVector< T b 
)
inline

Definition at line 97 of file vector_extra.h.

References a, b, BCHK, TSVector< T >::dim, and TSVector< T >::size().

◆ cemul() [5/10]

template<typename T >
TVector<T> cemul ( TVector< T tv,
const TSVector< T > &  ts 
)

◆ cemul() [6/10]

template<typename T >
TVector<T> cemul ( const TSVector< T > &  ts,
TVector< T tv 
)

◆ cemul() [7/10]

template<typename T >
TVector<T> cemul ( const Vector< T > &  v,
const TSVector< T > &  ts 
)

◆ cemul() [8/10]

template<typename T >
TVector<T> cemul ( const TSVector< T > &  ts,
const Vector< T > &  v 
)

◆ cemul() [9/10]

template<typename T >
TVector<T> cemul ( const TSVector< T > &  ts1,
const TSVector< T > &  ts2 
)

◆ cemul() [10/10]

template<typename T >
TMatrix<T> cemul ( const Matrix< T > &  a,
const Matrix< T > &  b 
)

Definition at line 525 of file vector_extra.h.

References a, b, BCHK, cemul(), and res.

◆ ediv() [1/16]

template<typename T >
TVector<T> ediv ( const Vector< T > &  a,
const Vector< T > &  b 
)
inline

Definition at line 110 of file vector_extra.h.

References a, b, BCHK, and TSVector< T >::size().

Referenced by cediv(), and ediv().

◆ ediv() [2/16]

template<typename T >
TVector<T> ediv ( TVector< T a,
const Vector< T > &  b 
)
inline

Definition at line 120 of file vector_extra.h.

References a, b, BCHK, and TSVector< T >::size().

◆ ediv() [3/16]

template<typename T >
TVector<T> ediv ( const Vector< T > &  a,
TVector< T b 
)
inline

Definition at line 129 of file vector_extra.h.

References a, b, BCHK, and TSVector< T >::size().

◆ ediv() [4/16]

template<typename T >
TVector<T> ediv ( TVector< T a,
TVector< T b 
)
inline

Definition at line 138 of file vector_extra.h.

References a, b, BCHK, and TSVector< T >::size().

◆ ediv() [5/16]

template<typename T >
TVector<T> ediv ( TVector< T tv,
const TSVector< T > &  ts 
)

◆ ediv() [6/16]

template<typename T >
TVector<T> ediv ( const Vector< T > &  v,
const TSVector< T > &  ts 
)

◆ ediv() [7/16]

template<typename T >
TVector<T> ediv ( const TSVector< T > &  ts1,
const TSVector< T > &  ts2 
)

◆ ediv() [8/16]

template<typename T >
TVector<T> ediv ( const TSVector< T > &  ts,
const Vector< T > &  v 
)

◆ ediv() [9/16]

template<typename T >
TVector<T> ediv ( const TSVector< T > &  ts,
TVector< T tv 
)

◆ ediv() [10/16]

template<typename T >
TVector<T> ediv ( const T a,
TVector< T b 
)
inline

Definition at line 440 of file vector_extra.h.

References a, b, and STD_SMP_TEMPLATE2C.

◆ ediv() [11/16]

template<typename T >
TVector<T> ediv ( const T a,
const Vector< T > &  b 
)
inline

Definition at line 448 of file vector_extra.h.

References a, b, res, and STD_SMP_TEMPLATE3VC.

◆ ediv() [12/16]

template<typename T >
TVector<T> ediv ( const T a,
const TSVector< T > &  ts 
)
inline

◆ ediv() [13/16]

template<typename T >
TMatrix<T> ediv ( const Matrix< T > &  a,
const Matrix< T > &  b 
)

Definition at line 537 of file vector_extra.h.

References a, b, BCHK, ediv(), and res.

◆ ediv() [14/16]

template<typename T >
TMatrix<T> ediv ( const T a,
TMatrix< T b 
)
inline

Definition at line 562 of file vector_extra.h.

References a, b, and STD_SMP_TEMPLATE2C.

◆ ediv() [15/16]

template<typename T >
TMatrix<T> ediv ( const T a,
const Matrix< T > &  b 
)
inline

Definition at line 570 of file vector_extra.h.

References a, b, c, res, and STD_SMP_TEMPLATE3VC.

◆ ediv() [16/16]

template<typename T >
TMatrix<T> ediv ( const T a,
const TSMatrix< T > &  ts 
)
inline

Definition at line 580 of file vector_extra.h.

References a, TSMatrix< T >::detach(), STD_SMP_TEMPLATE4C, T, and ts.

◆ emul() [1/10]

template<typename T >
NAMESPACE_TBCI TVector<T> emul ( const Vector< T > &  a,
const Vector< T > &  b 
)
inline

Definition at line 25 of file vector_extra.h.

References a, b, BCHK, TSVector< T >::dim, TVector< T >::setval(), and TSVector< T >::size().

Referenced by cemul(), and emul().

◆ emul() [2/10]

template<typename T >
TVector<T> emul ( TVector< T a,
const Vector< T > &  b 
)
inline

Definition at line 36 of file vector_extra.h.

References a, b, BCHK, TSVector< T >::dim, and TSVector< T >::size().

◆ emul() [3/10]

template<typename T >
TVector<T> emul ( const Vector< T > &  a,
TVector< T b 
)
inline

Definition at line 46 of file vector_extra.h.

References a, b, BCHK, TSVector< T >::dim, and TSVector< T >::size().

◆ emul() [4/10]

template<typename T >
TVector<T> emul ( TVector< T a,
TVector< T b 
)
inline

Definition at line 56 of file vector_extra.h.

References a, b, BCHK, TSVector< T >::dim, and TSVector< T >::size().

◆ emul() [5/10]

template<typename T >
TVector<T> emul ( TVector< T tv,
const TSVector< T > &  ts 
)

◆ emul() [6/10]

template<typename T >
TVector<T> emul ( const TSVector< T > &  ts,
TVector< T tv 
)

◆ emul() [7/10]

template<typename T >
TVector<T> emul ( const Vector< T > &  v,
const TSVector< T > &  ts 
)

◆ emul() [8/10]

template<typename T >
TVector<T> emul ( const TSVector< T > &  ts,
const Vector< T > &  v 
)

◆ emul() [9/10]

template<typename T >
TVector<T> emul ( const TSVector< T > &  ts1,
const TSVector< T > &  ts2 
)

◆ emul() [10/10]

template<typename T >
TMatrix<T> emul ( const Matrix< T > &  a,
const Matrix< T > &  b 
)

Definition at line 513 of file vector_extra.h.

References a, b, BCHK, emul(), and res.

◆ exact_sum()

template<typename T >
T exact_sum ( const Vector< T > &  v)

Definition at line 488 of file vector_extra.h.

References i, REGISTER, TVector< T >::size(), sum(), T, and y.

◆ kahan_sum()

template<typename T >
T kahan_sum ( const Vector< T > &  v)

Definition at line 473 of file vector_extra.h.

References i, REGISTER, TVector< T >::size(), sum(), T, and y.