TBCI Numerical high perf. C++ Library  2.8.0
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Friends | List of all members
F_TMatrix< T > Class Template Reference

Temporary Base Class (non referable!) (acc. More...

#include <bvector.h>

Inheritance diagram for F_TMatrix< T >:
Inheritance graph
[legend]
Collaboration diagram for F_TMatrix< T >:
Collaboration graph
[legend]

Public Types

typedef T value_type
 
typedef T element_type
 
typedef T aligned_value_type TALIGN (MIN_ALIGN2)
 

Public Member Functions

 F_TMatrix (const unsigned=0)
 
 F_TMatrix (const unsigned, const unsigned)
 
 F_TMatrix (const T &, const unsigned, const unsigned)
 
 F_TMatrix (const Vector< T > &, const enum rowcolvec=colvec)
 
 F_TMatrix (const F_TMatrix< T > &)
 
 F_TMatrix (F_TSMatrix< T > &)
 
 F_TMatrix (const F_Matrix< T > &)
 
void destroy ()
 
 ~F_TMatrix ()
 
 operator TMatrix< T > ()
 
F_TMatrix< T > & operator= (const F_Matrix< T > &)
 
F_TMatrix< T > & operator= (const F_TMatrix< T > &)
 
F_TMatrix< T > & operator= (F_TSMatrix< T >)
 
F_TMatrix< T > & operator= (const T &)
 
F_TMatrix< T > & alias (const F_Matrix< T > &m)
 
F_TMatrix< T > & operator+= (F_TMatrix< T >)
 
F_TMatrix< T > & operator+= (const F_Matrix< T > &)
 
F_TMatrix< T > & operator+= (const T &)
 
F_TMatrix< T > & operator-= (F_TMatrix< T >)
 
F_TMatrix< T > & operator-= (const F_Matrix< T > &)
 
F_TMatrix< T > & operator-= (const T &)
 
F_TSMatrix< Toperator*= (const T &)
 
F_TSMatrix< Toperator/= (const T &)
 
F_TMatrix< T > & operator- ()
 
F_TMatrix< T > & herm ()
 
F_TMatrix< T > & conj ()
 
F_TMatrix< T > & trans ()
 
F_TMatrix< T > & operator+ (F_TMatrix< T >)
 
F_TMatrix< T > & operator+ (F_TSMatrix< T >)
 
F_TMatrix< T > & operator+ (const F_Matrix< T > &)
 
F_TMatrix< T > & operator+ (const T &)
 
F_TMatrix< T > & operator- (F_TMatrix< T >)
 
F_TMatrix< T > & operator- (F_TSMatrix< T >)
 
F_TMatrix< T > & operator- (const F_Matrix< T > &)
 
F_TMatrix< T > & operator- (const T &)
 
F_TSMatrix< Toperator* (const T &)
 
F_TSMatrix< Toperator/ (const T &)
 
F_TMatrix< Toperator* (const F_Matrix< T > &)
 
F_TMatrix< Toperator* (F_TMatrix< T >)
 
F_TMatrix< Toperator* (F_TSMatrix< T >)
 
TVector< Toperator* (const Vector< T > &v)
 
TVector< Toperator* (TVector< T > &tv)
 
Toperator() (const unsigned int, const unsigned int) const
 
Tget_fortran_matrix () const
 
const Tget (const unsigned r, const unsigned c) const
 
bool operator== (const F_Matrix< T > &m)
 
bool operator!= (const F_Matrix< T > &m)
 
bool operator== (F_TMatrix< T > tm)
 
bool operator!= (F_TMatrix< T > tm)
 
bool operator== (F_TSMatrix< T >)
 
bool operator!= (F_TSMatrix< T > ts)
 
unsigned int columns () const
 
unsigned int rows () const
 
unsigned long size () const
 
TVector< Tget_row (const unsigned int) const
 
TVector< Tget_col (const unsigned int) const
 
void set_row (const Vector< T > &, const unsigned int)
 
void set_col (const Vector< T > &, const unsigned int)
 
void setval (const T val, const unsigned int r, const unsigned int c)
 
Tsetval (const unsigned int r, const unsigned int c)
 
F_TMatrix< T > & resize (const unsigned int, const unsigned int)
 
F_TMatrix< T > & resize (const unsigned int d)
 
F_TMatrix< T > & resize (const T &, const unsigned int, const unsigned int)
 
F_TMatrix< T > & fill (const T &=0)
 
F_TMatrix< T > & clear ()
 
F_TMatrix< T > & setunit (const T &=1)
 
F_TMatrix< T > & swap (F_TMatrix< T > &)
 
F_TMatrix< Ttransposed_copy () const
 Inefficient! Use transMult if possible. More...
 
F_TMatrix< T > & transpose ()
 
double fabs () const
 
T trace () 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 More...
 
Toperator() (const unsigned, const unsigned)
 rw access More...
 
Matrix_Sig< T > & fill (const T &)
 
Matrix_Sig< T > & setunit (const T &=(T) 1)
 
Matrix_Sig< T > & clear ()
 
TVector< Toperator* (const Vector_Sig< T > &) const
 
TVector< TtransMult (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
 

Protected Member Functions

int set_ptrs ()
 

Protected Attributes

unsigned long dim
 
unsigned int col
 
unsigned int row
 
T ** mat
 Fortran storage layout: mat[col][row]. More...
 
Tvec
 
Tendvec
 

Friends

class F_Matrix< T >
 
class F_TSMatrix< T >
 
class Tensor< T >
 
NOINST F_TMatrix< T > FRIEND_TBCI__ operator+FGD (const T &, F_TMatrix< T >)
 
NOINST F_TMatrix< T > FRIEND_TBCI__ operator+FGD (const T &, const F_Matrix< T > &)
 
NOINST F_TMatrix< T > FRIEND_TBCI__ operator-FGD (const T &, F_TMatrix< T >)
 
NOINST F_TMatrix< T > FRIEND_TBCI__ operator-FGD (const T &, const F_Matrix< T > &)
 
NOINST F_TSMatrix< T >
FRIEND_TBCI__ 
operator*FGD (const T &, F_TMatrix< T >)
 
NOINST F_TSMatrix< T >
FRIEND_TBCI__ 
operator*FGD (const T &, const F_Matrix< T > &)
 

Detailed Description

template<typename T>
class F_TMatrix< T >

Temporary Base Class (non referable!) (acc.

to Temp. Base Class Idiom, iX 11/96, 166)

Definition at line 50 of file bvector.h.

Member Typedef Documentation

template<typename T>
typedef T F_TMatrix< T >::element_type

Definition at line 84 of file f_matrix.h.

template<typename T>
typedef T F_TMatrix< T >::mat_t
protected

Definition at line 73 of file f_matrix.h.

template<typename T>
typedef T aligned_value_type F_TMatrix< T >::TALIGN(MIN_ALIGN2)

Definition at line 85 of file f_matrix.h.

template<typename T>
typedef T F_TMatrix< T >::value_type

Definition at line 83 of file f_matrix.h.

Constructor & Destructor Documentation

template<typename T >
F_TMatrix< T >::F_TMatrix ( const unsigned  d = 0)
inlineexplicit

Definition at line 275 of file f_matrix.h.

References F_TMatrix< T >::set_ptrs().

template<typename T >
F_TMatrix< T >::F_TMatrix ( const unsigned  r,
const unsigned  c 
)
inline

Definition at line 284 of file f_matrix.h.

References F_TMatrix< T >::set_ptrs().

template<typename T >
F_TMatrix< T >::F_TMatrix ( const T val,
const unsigned  r,
const unsigned  c 
)
inline
template<typename T >
F_TMatrix< T >::F_TMatrix ( const Vector< T > &  v,
const enum rowcolvec  r = colvec 
)
inline
template<typename T >
F_TMatrix< T >::F_TMatrix ( const F_TMatrix< T > &  tm)
inline

Definition at line 323 of file f_matrix.h.

template<typename T >
F_TMatrix< T >::F_TMatrix ( F_TSMatrix< T > &  ts)
inline
template<typename T >
F_TMatrix< T >::F_TMatrix ( const F_Matrix< T > &  m)
inline
template<typename T>
F_TMatrix< T >::~F_TMatrix ( )
inline

Definition at line 114 of file f_matrix.h.

Member Function Documentation

template<typename T>
F_TMatrix<T>& F_TMatrix< T >::alias ( const F_Matrix< T > &  m)
inline
template<typename T >
F_TMatrix< T > & F_TMatrix< T >::clear ( )
inline

Definition at line 406 of file f_matrix.h.

References T, and TBCIFILL.

Referenced by F_Matrix< T >::clear().

template<typename T>
unsigned int F_TMatrix< T >::columns ( ) const
inline

Definition at line 198 of file f_matrix.h.

References F_TMatrix< T >::col.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::conj ( )

Definition at line 570 of file f_matrix.h.

References STD__.

template<typename T >
void F_TMatrix< T >::destroy ( )
inline
template<typename T >
double F_TMatrix< T >::fabs ( ) const
inline

Definition at line 774 of file f_matrix.h.

References F_Matrix< T >::fabs().

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::fill ( const T val = 0)
inline

Definition at line 510 of file f_matrix.h.

References T, and TBCIFILL.

Referenced by F_Matrix< T >::fill().

template<typename T>
const T& F_TMatrix< T >::get ( const unsigned  r,
const unsigned  c 
) const
inline

Definition at line 182 of file f_matrix.h.

References c, and F_TMatrix< T >::mat.

template<typename T >
TVector< T > F_TMatrix< T >::get_col ( const unsigned int  c) const
inline

Definition at line 432 of file f_matrix.h.

References T, TBCICOPY, v, and BVector< T >::vec.

Referenced by F_Matrix< T >::get_col().

template<typename T>
T* F_TMatrix< T >::get_fortran_matrix ( ) const
inline

Definition at line 181 of file f_matrix.h.

References F_TMatrix< T >::vec.

Referenced by inv(), and lu_solve().

template<typename T >
TVector< T > F_TMatrix< T >::get_row ( const unsigned int  r) const
inline

Definition at line 449 of file f_matrix.h.

References BCHK, index, REGISTER, v, and BVector< T >::vec.

Referenced by F_Matrix< T >::get_row().

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::herm ( )

Definition at line 546 of file f_matrix.h.

References i, STD__, and TBCI::SWAP().

template<typename T>
static const char* F_TMatrix< T >::mat_info ( )
inlinestatic

Definition at line 119 of file f_matrix.h.

template<typename T >
F_TMatrix< T >::operator TMatrix< T > ( )

Definition at line 243 of file f_matrix.h.

References c, and TMatrix< T >::setval().

template<typename T>
bool F_TMatrix< T >::operator!= ( const F_Matrix< T > &  m)
inline

Definition at line 185 of file f_matrix.h.

template<typename T>
bool F_TMatrix< T >::operator!= ( F_TMatrix< T tm)
inline

Definition at line 190 of file f_matrix.h.

template<typename T>
bool F_TMatrix< T >::operator!= ( F_TSMatrix< T ts)
inline

Definition at line 194 of file f_matrix.h.

References ts.

template<typename T >
T & F_TMatrix< T >::operator() ( const unsigned int  r,
const unsigned int  c 
) const
inline

Definition at line 338 of file f_matrix.h.

References BCHK, c, and index.

Referenced by F_TMatrix< T >::setval().

template<typename T >
F_TSMatrix< T > F_TMatrix< T >::operator* ( const T a)
inline

Definition at line 713 of file f_matrix.h.

References a.

template<typename T >
F_TMatrix< T > F_TMatrix< T >::operator* ( const F_Matrix< T > &  a)
inline

Definition at line 1505 of file f_matrix.h.

template<typename T >
F_TMatrix< T > F_TMatrix< T >::operator* ( F_TMatrix< T a)
inline

Definition at line 1513 of file f_matrix.h.

template<typename T >
F_TMatrix< T > F_TMatrix< T >::operator* ( F_TSMatrix< T a)
inline

Definition at line 1520 of file f_matrix.h.

template<typename T>
TVector<T> F_TMatrix< T >::operator* ( const Vector< T > &  v)
inline

Definition at line 163 of file f_matrix.h.

template<typename T>
TVector<T> F_TMatrix< T >::operator* ( TVector< T > &  tv)
inline

Definition at line 165 of file f_matrix.h.

template<typename T >
F_TSMatrix< T > F_TMatrix< T >::operator*= ( const T a)
inline

Definition at line 673 of file f_matrix.h.

References a.

Referenced by F_Matrix< T >::operator*=().

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator+ ( F_TMatrix< T a)
inline

Definition at line 699 of file f_matrix.h.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator+ ( F_TSMatrix< T ts)
inline

Definition at line 653 of file f_matrix.h.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator+ ( const F_Matrix< T > &  a)
inline

Definition at line 690 of file f_matrix.h.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator+ ( const T a)
inline

Definition at line 708 of file f_matrix.h.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator+= ( F_TMatrix< T a)
inline

Definition at line 638 of file f_matrix.h.

Referenced by F_Matrix< T >::operator+=().

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator+= ( const F_Matrix< T > &  a)
inline

Definition at line 626 of file f_matrix.h.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator+= ( const T a)
inline

Definition at line 666 of file f_matrix.h.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator- ( )
inline

Definition at line 579 of file f_matrix.h.

References REGISTER, and T.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator- ( F_TMatrix< T a)
inline

Definition at line 700 of file f_matrix.h.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator- ( F_TSMatrix< T ts)
inline

Definition at line 654 of file f_matrix.h.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator- ( const F_Matrix< T > &  a)
inline

Definition at line 691 of file f_matrix.h.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator- ( const T a)
inline

Definition at line 709 of file f_matrix.h.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator-= ( F_TMatrix< T a)
inline

Definition at line 639 of file f_matrix.h.

Referenced by F_Matrix< T >::operator-=().

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator-= ( const F_Matrix< T > &  a)
inline

Definition at line 627 of file f_matrix.h.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator-= ( const T a)
inline

Definition at line 667 of file f_matrix.h.

template<typename T >
F_TSMatrix< T > F_TMatrix< T >::operator/ ( const T b)
inline

Definition at line 717 of file f_matrix.h.

References BCHK, and T.

template<typename T >
F_TSMatrix< T > F_TMatrix< T >::operator/= ( const T a)
inline

Definition at line 677 of file f_matrix.h.

References BCHK, and T.

Referenced by F_Matrix< T >::operator/=().

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator= ( const F_Matrix< T > &  a)
inline

Definition at line 358 of file f_matrix.h.

References BCHK, F_TMatrix< T >::dim, T, TBCICOPY, and F_TMatrix< T >::vec.

Referenced by F_Matrix< T >::operator=().

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator= ( const F_TMatrix< T > &  a)
inline
template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator= ( F_TSMatrix< T a)
inline
template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator= ( const T val)
inline

Definition at line 389 of file f_matrix.h.

References CTensor< T >::fill().

template<typename T >
bool F_TMatrix< T >::operator== ( const F_Matrix< T > &  m)

Definition at line 586 of file f_matrix.h.

References F_TMatrix< T >::col, F_TMatrix< T >::row, T, TBCICOMP, and F_TMatrix< T >::vec.

template<typename T>
bool F_TMatrix< T >::operator== ( F_TMatrix< T tm)
inline

Definition at line 188 of file f_matrix.h.

template<typename T >
bool F_TMatrix< T >::operator== ( F_TSMatrix< T ts)
template<typename T >
F_TMatrix< T > & F_TMatrix< T >::resize ( const unsigned int  r,
const unsigned int  c 
)

Definition at line 463 of file f_matrix.h.

References c, MIN, NEW, T, TBCICOPY, and TBCIDELETE.

Referenced by F_Matrix< T >::resize().

template<typename T>
F_TMatrix<T>& F_TMatrix< T >::resize ( const unsigned int  d)
inline

Definition at line 212 of file f_matrix.h.

References F_TMatrix< T >::resize().

Referenced by F_TMatrix< T >::resize().

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::resize ( const T v,
const unsigned int  r,
const unsigned int  c 
)

Definition at line 486 of file f_matrix.h.

References c, LIKELY, NEW, T, TBCIDELETE, and TBCIFILL.

template<typename T>
unsigned int F_TMatrix< T >::rows ( ) const
inline

Definition at line 199 of file f_matrix.h.

References F_TMatrix< T >::row.

Referenced by F_TSMatrix< T >::operator*().

template<typename T >
void F_TMatrix< T >::set_col ( const Vector< T > &  v,
const unsigned int  c 
)
inline

Definition at line 424 of file f_matrix.h.

References BCHKNR, BVector< T >::dim, index, T, TBCICOPY, and BVector< T >::vec.

Referenced by F_Matrix< T >::set_col().

template<typename T >
int F_TMatrix< T >::set_ptrs ( )
inlineprotected

Definition at line 254 of file f_matrix.h.

References i, T, and TBCIDELETE.

Referenced by F_TMatrix< T >::F_TMatrix().

template<typename T >
void F_TMatrix< T >::set_row ( const Vector< T > &  v,
const unsigned int  r 
)
inline

Definition at line 441 of file f_matrix.h.

References BCHKNR, index, REGISTER, and BVector< T >::vec.

Referenced by F_Matrix< T >::set_row().

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::setunit ( const T fac = 1)
inline

Definition at line 396 of file f_matrix.h.

References BCHK, i, MIN, REGISTER, T, and TBCIFILL.

Referenced by F_Matrix< T >::setunit().

template<typename T>
void F_TMatrix< T >::setval ( const T  val,
const unsigned int  r,
const unsigned int  c 
)
inline
template<typename T>
T& F_TMatrix< T >::setval ( const unsigned int  r,
const unsigned int  c 
)
inline

Definition at line 208 of file f_matrix.h.

References F_TMatrix< T >::operator()().

template<typename T>
unsigned long F_TMatrix< T >::size ( ) const
inline

Definition at line 200 of file f_matrix.h.

References F_TMatrix< T >::dim.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::swap ( F_TMatrix< T > &  m)
inline
template<typename T >
T F_TMatrix< T >::trace ( ) const
inline

Definition at line 517 of file f_matrix.h.

References ALIGN3, BCHK, i, MIN_ALIGN2, REGISTER, and T.

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::trans ( )

Definition at line 530 of file f_matrix.h.

References i, STD__, and TBCI::SWAP().

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::transpose ( )
template<typename T >
F_TMatrix< T > F_TMatrix< T >::transposed_copy ( ) const

Inefficient! Use transMult if possible.

Definition at line 1652 of file f_matrix.h.

References c, F_TSMatrix< T >::col, F_TMatrix< T >::mat, and F_TSMatrix< T >::row.

Referenced by transpose().

Friends And Related Function Documentation

template<typename T>
friend class F_Matrix< T >
friend

Definition at line 87 of file f_matrix.h.

template<typename T>
friend class F_TSMatrix< T >
friend

Definition at line 88 of file f_matrix.h.

template<typename T>
NOINST F_TSMatrix<T> FRIEND_TBCI__ operator*FGD ( const T ,
F_TMatrix< T  
)
friend
template<typename T>
NOINST F_TSMatrix<T> FRIEND_TBCI__ operator*FGD ( const T ,
const F_Matrix< T > &   
)
friend
template<typename T>
NOINST F_TMatrix<T> FRIEND_TBCI__ operator+FGD ( const T ,
F_TMatrix< T  
)
friend
template<typename T>
NOINST F_TMatrix<T> FRIEND_TBCI__ operator+FGD ( const T ,
const F_Matrix< T > &   
)
friend
template<typename T>
NOINST F_TMatrix<T> FRIEND_TBCI__ operator-FGD ( const T ,
F_TMatrix< T  
)
friend
template<typename T>
NOINST F_TMatrix<T> FRIEND_TBCI__ operator-FGD ( const T ,
const F_Matrix< T > &   
)
friend
template<typename T>
friend class Tensor< T >
friend

Definition at line 89 of file f_matrix.h.

Member Data Documentation

template<typename T>
unsigned int F_TMatrix< T >::col
protected
template<typename T>
unsigned long F_TMatrix< T >::dim
protected
template<typename T>
T * F_TMatrix< T >::endvec
protected
template<typename T>
T** F_TMatrix< T >::mat
protected
template<typename T>
unsigned int F_TMatrix< T >::row
protected
template<typename T>
T* F_TMatrix< T >::vec
protected

The documentation for this class was generated from the following files: