TBCI Numerical high perf. C++ Library 2.8.0
fs_vector.h File Reference

Implementation of class TBCI::FS_Vector. More...

#include "tbci/basics.h"
#include "tbci/bvector.h"
Include dependency graph for fs_vector.h:

Go to the source code of this file.

Classes

class  FSVecErr
 exception class More...
class  FS_Vector< dims, T >
 Implementation of fixed sized Vectors (template argument) which is favorable for small Vectors, where the overhead of dynamically allocating and freeing memory and it's management is too expensive. More...

Macros

#define FSV_ASS_FSV(op)
#define FSV_NOASS_FSV(op)
#define FSV_ASS_T(op)
#define FSV_NOASS_T(op)
#define FSV_MEM_FRD(nm, op)

Functions

template<unsigned dims, typename T>
STD__ ostream & operator<< (STD__ ostream &os, const FS_Vector< dims, T > &fv)
template<unsigned dims, typename T>
STD__ istream & operator>> (STD__ istream &in, FS_Vector< dims, T > &v)
template<unsigned dims, typename T>
T dot (const FS_Vector< dims, T > &fv1, const FS_Vector< dims, T > &fv2)
template<unsigned dims, typename T, unsigned long dims2>
FS_Vector< dims, Tslice (const FS_Vector< dims, T > &fv, const unsigned long s, const unsigned long e)
template<unsigned dims, typename T>
FS_Vector< dims, Temul (const FS_Vector< dims, T > &f1, const FS_Vector< dims, T > &f2)
template<unsigned dims, typename T>
FS_Vector< dims, Tcemul (const FS_Vector< dims, T > &f1, const FS_Vector< dims, T > &f2)
template<unsigned dims, typename T>
FS_Vector< dims, Tediv (const FS_Vector< dims, T > &f1, const FS_Vector< dims, T > &f2)
template<unsigned dims, typename T>
FS_Vector< dims, Tcediv (const FS_Vector< dims, T > &f1, const FS_Vector< dims, T > &f2)
template<unsigned dims, typename T>
double fabssqr (const FS_Vector< dims, T > &fv)
template<unsigned dims, typename T>
FS_Vector< dims, Toperator* (const T &v, const FS_Vector< dims, T > &fv)
template<unsigned dims, typename T>
FS_Vector< dims, Toperator+ (const T &v, const FS_Vector< dims, T > &fv)
template<unsigned dims, typename T>
FS_Vector< dims, Toperator- (const T &v, const FS_Vector< dims, T > &fv)
template<unsigned dims, typename T>
T min (const FS_Vector< dims, T > &fv)
template<unsigned dims, typename T>
T max (const FS_Vector< dims, T > &fv)
template<unsigned dims, typename T>
T sum (const FS_Vector< dims, T > &fv)
template<unsigned dims, typename T>
NAMESPACE_END NAMESPACE_CSTD double fabs (const TBCI__ FS_Vector< dims, T > &fv)
template<unsigned dims, typename T>
T abs (const TBCI__ FS_Vector< dims, T > &fv)

Detailed Description

Implementation of class TBCI::FS_Vector.

Definition in file fs_vector.h.

Macro Definition Documentation

◆ FSV_ASS_FSV

#define FSV_ASS_FSV ( op)
Value:
template <unsigned dims, typename T> \
inline FS_Vector<dims,T>& FS_Vector<dims,T>::operator op (const FS_Vector <dims,T>& fv) \
{ \
for (unsigned long i = 0; i < dims; ++i) \
x[i] op fv[i]; \
return *this; \
}
const Vector< T > const Vector< T > & x
Definition LM_fit.h:97
int i
Definition LM_fit.h:71
Implementation of fixed sized Vectors (template argument) which is favorable for small Vectors,...
Definition fs_vector.h:63
#define dims
Definition fsveclib.cc:24

Definition at line 289 of file fs_vector.h.

Referenced by FS_Vector< dims, T >::operator-=().

◆ FSV_ASS_T

#define FSV_ASS_T ( op)
Value:
template <unsigned dims, typename T> \
{ \
for (unsigned long i = 0; i < dims; ++i) \
x[i] op v; \
return *this; \
}
#define T
Definition bdmatlib.cc:20

Definition at line 314 of file fs_vector.h.

Referenced by FS_Vector< dims, T >::operator*=(), and FS_Vector< dims, T >::operator-=().

◆ FSV_MEM_FRD

#define FSV_MEM_FRD ( nm,
op )
Value:
template <unsigned dims, typename T> \
{ \
for (unsigned long i = 0; i < dims; ++i) \
res.x[i] = v op x[i]; \
return res; \
}
#define INLINE
Definition basics.h:688
const unsigned TMatrix< T > * res

Definition at line 552 of file fs_vector.h.

Referenced by FS_Vector< dims, T >::minus(), and FS_Vector< dims, T >::plus().

◆ FSV_NOASS_FSV

#define FSV_NOASS_FSV ( op)
Value:
template <unsigned dims, typename T> \
inline FS_Vector<dims,T> FS_Vector<dims,T>::operator op (const FS_Vector <dims,T>& fv) const \
{ \
FS_Vector <dims,T> rv; \
for (unsigned long i = 0; i < dims; ++i) \
rv[i] = x[i] op fv[i]; \
return rv; \
}

Definition at line 301 of file fs_vector.h.

Referenced by FS_Vector< dims, T >::operator-().

◆ FSV_NOASS_T

#define FSV_NOASS_T ( op)
Value:
template <unsigned dims, typename T> \
inline FS_Vector<dims,T> FS_Vector<dims,T>::operator op (const T& v) const \
{ \
for (unsigned long i = 0; i < dims; ++i) \
rv[i] = x[i] op v; \
return rv; \
}

Definition at line 328 of file fs_vector.h.

Referenced by FS_Vector< dims, T >::operator*(), and FS_Vector< dims, T >::operator-().

Function Documentation

◆ abs()

template<unsigned dims, typename T>
T abs ( const TBCI__ FS_Vector< dims, T > & fv)
inline

Definition at line 616 of file fs_vector.h.

References abs, T, and TBCI__.

◆ cediv()

template<unsigned dims, typename T>
FS_Vector< dims, T > cediv ( const FS_Vector< dims, T > & f1,
const FS_Vector< dims, T > & f2 )

Definition at line 537 of file fs_vector.h.

References conj(), dims, i, and res.

Referenced by cediv(), cediv(), cediv(), cediv(), cediv(), cediv(), cediv(), cediv(), cediv(), and cediv().

◆ cemul()

template<unsigned dims, typename T>
FS_Vector< dims, T > cemul ( const FS_Vector< dims, T > & f1,
const FS_Vector< dims, T > & f2 )

Definition at line 519 of file fs_vector.h.

References conj(), dims, i, and res.

Referenced by cemul(), cemul(), cemul(), cemul(), cemul(), cemul(), cemul(), cemul(), cemul(), and cemul().

◆ dot()

template<unsigned dims, typename T>
T dot ( const FS_Vector< dims, T > & fv1,
const FS_Vector< dims, T > & fv2 )
inline

Definition at line 471 of file fs_vector.h.

References ALIGN3, conj(), dims, i, MIN_ALIGN2, REGISTER, and T.

Referenced by FS_Vector< dims, T >::fabssqr(), and FS_Vector< dims, T >::FGD.

◆ ediv()

template<unsigned dims, typename T>
FS_Vector< dims, T > ediv ( const FS_Vector< dims, T > & f1,
const FS_Vector< dims, T > & f2 )

Definition at line 528 of file fs_vector.h.

References dims, i, and res.

Referenced by cediv(), cediv(), cediv(), cediv(), cediv(), ediv(), ediv(), ediv(), ediv(), ediv(), ediv(), ediv(), ediv(), ediv(), ediv(), ediv(), ediv(), ediv(), ediv(), ediv(), and ediv().

◆ emul()

template<unsigned dims, typename T>
FS_Vector< dims, T > emul ( const FS_Vector< dims, T > & f1,
const FS_Vector< dims, T > & f2 )

Definition at line 510 of file fs_vector.h.

References dims, i, and res.

Referenced by cemul(), cemul(), cemul(), cemul(), cemul(), emul(), emul(), emul(), emul(), emul(), emul(), emul(), emul(), emul(), and emul().

◆ fabs()

template<unsigned dims, typename T>
NAMESPACE_END NAMESPACE_CSTD double fabs ( const TBCI__ FS_Vector< dims, T > & fv)
inline

Definition at line 608 of file fs_vector.h.

References fabs(), and TBCI__.

◆ fabssqr()

template<unsigned dims, typename T>
double fabssqr ( const FS_Vector< dims, T > & fv)
inline

◆ max()

template<unsigned dims, typename T>
T max ( const FS_Vector< dims, T > & fv)
inline

Definition at line 594 of file fs_vector.h.

References FS_Vector< dims, T >::max(), max, and T.

◆ min()

template<unsigned dims, typename T>
T min ( const FS_Vector< dims, T > & fv)
inline

Definition at line 589 of file fs_vector.h.

References FS_Vector< dims, T >::min(), min, and T.

◆ operator*()

template<unsigned dims, typename T>
FS_Vector< dims, T > operator* ( const T & v,
const FS_Vector< dims, T > & fv )
inline

Definition at line 569 of file fs_vector.h.

References dims, and T.

◆ operator+()

template<unsigned dims, typename T>
FS_Vector< dims, T > operator+ ( const T & v,
const FS_Vector< dims, T > & fv )
inline

Definition at line 574 of file fs_vector.h.

References FS_Vector< dims, T >::plus(), and T.

◆ operator-()

template<unsigned dims, typename T>
FS_Vector< dims, T > operator- ( const T & v,
const FS_Vector< dims, T > & fv )
inline

Definition at line 579 of file fs_vector.h.

References FS_Vector< dims, T >::minus(), and T.

◆ operator<<()

template<unsigned dims, typename T>
STD__ ostream & operator<< ( STD__ ostream & os,
const FS_Vector< dims, T > & fv )

Definition at line 385 of file fs_vector.h.

References dims, i, STD__, and FS_Vector< dims, T >::x.

◆ operator>>()

template<unsigned dims, typename T>
STD__ istream & operator>> ( STD__ istream & in,
FS_Vector< dims, T > & v )

Definition at line 396 of file fs_vector.h.

References ALIGN, dims, i, MIN_ALIGN, STD__, and T.

◆ slice()

template<unsigned dims, typename T, unsigned long dims2>
FS_Vector< dims, T > slice ( const FS_Vector< dims, T > & fv,
const unsigned long s,
const unsigned long e )
inline

◆ sum()