TBCI::F_TMatrix< T > Class Template Reference

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

#include <f_matrix.h>

Inheritance diagram for TBCI::F_TMatrix< T >:

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

Collaboration graph
[legend]

List of all members.

Public Types

typedef T value_type
typedef T element_type
typedef T aligned_value_type

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< T > operator*= (const T &)
F_TSMatrix< T > operator/= (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< T > operator* (const T &)
F_TSMatrix< T > operator/ (const T &)
F_TMatrix< T > operator* (const F_Matrix< T > &)
F_TMatrix< T > operator* (F_TMatrix< T >)
F_TMatrix< T > operator* (F_TSMatrix< T >)
TVector< T > operator* (const Vector< T > &v)
TVector< T > operator* (TVector< T > &tv)
T & operator() (const unsigned int, const unsigned int) const
T * get_fortran_matrix () const
const T & get (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< T > get_row (const unsigned int) const
TVector< T > get_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)
T & setval (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< T > transposed_copy () const
 Inefficient! Use transMult if possible.
F_TMatrix< T > & transpose ()
double fabs () const
trace () const

Static Public Member Functions

static const char * mat_info ()

Protected Types

typedef T mat_t

Protected Member Functions

int set_ptrs ()

Protected Attributes

T * vec
unsigned long dim
unsigned int row
unsigned int col
T ** mat
 Fortran storage layout: mat[col][row].
T * endvec

Friends

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


Detailed Description

template<typename T>
class TBCI::F_TMatrix< T >

Temporary Base Class (non referable!) (acc.

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

Definition at line 70 of file f_matrix.h.


Member Typedef Documentation

template<typename T>
typedef T TBCI::F_TMatrix< T >::mat_t [protected]

Definition at line 73 of file f_matrix.h.

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 84 of file f_matrix.h.

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 85 of file f_matrix.h.

template<typename T>
typedef T TBCI::F_TMatrix< T >::aligned_value_type

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 86 of file f_matrix.h.


Constructor & Destructor Documentation

template<typename T>
TBCI::F_TMatrix< T >::F_TMatrix ( const unsigned  d = 0  )  [inline, explicit]

Definition at line 275 of file f_matrix.h.

References TBCI::F_TMatrix< T >::set_ptrs().

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

Definition at line 283 of file f_matrix.h.

References TBCI::F_TMatrix< T >::set_ptrs().

template<typename T>
TBCI::F_TMatrix< T >::F_TMatrix ( const T &  val,
const unsigned  r,
const unsigned  c 
) [inline]

template<typename T>
TBCI::F_TMatrix< T >::F_TMatrix ( const Vector< T > &  v,
const enum rowcolvec  r = colvec 
) [inline]

template<typename T>
TBCI::F_TMatrix< T >::F_TMatrix ( const F_TMatrix< T > &  tm  )  [inline]

Definition at line 321 of file f_matrix.h.

template<typename T>
TBCI::F_TMatrix< T >::F_TMatrix ( F_TSMatrix< T > &  ts  )  [inline]

template<typename T>
TBCI::F_TMatrix< T >::F_TMatrix ( const F_Matrix< T > &  m  )  [inline]

template<typename T>
TBCI::F_TMatrix< T >::~F_TMatrix (  )  [inline]

Definition at line 115 of file f_matrix.h.


Member Function Documentation

template<typename T>
int TBCI::F_TMatrix< T >::set_ptrs (  )  [inline, protected]

template<typename T>
void TBCI::F_TMatrix< T >::destroy (  )  [inline]

template<typename T>
TBCI::F_TMatrix< T >::operator TMatrix< T > (  )  [inline]

template<typename T>
static const char* TBCI::F_TMatrix< T >::mat_info (  )  [inline, static]

Reimplemented from TBCI::Matrix_Sig< T >.

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 120 of file f_matrix.h.

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 355 of file f_matrix.h.

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

template<typename T>
F_TMatrix< T > & TBCI::F_TMatrix< T >::operator= ( const F_TMatrix< T > &  a  )  [inline]

template<typename T>
F_TMatrix< T > & TBCI::F_TMatrix< T >::operator= ( F_TSMatrix< T >  a  )  [inline]

template<typename T>
F_TMatrix< T > & TBCI::F_TMatrix< T >::operator= ( const T &  val  )  [inline]

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 386 of file f_matrix.h.

References TBCI::F_TMatrix< T >::fill().

template<typename T>
F_TMatrix<T>& TBCI::F_TMatrix< T >::alias ( const F_Matrix< T > &  m  )  [inline]

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 635 of file f_matrix.h.

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 623 of file f_matrix.h.

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 663 of file f_matrix.h.

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 636 of file f_matrix.h.

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 624 of file f_matrix.h.

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 664 of file f_matrix.h.

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 670 of file f_matrix.h.

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 674 of file f_matrix.h.

References BCHK, and T.

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

Definition at line 576 of file f_matrix.h.

References TBCI::F_TMatrix< T >::endvec, T, and TBCI::F_TMatrix< T >::vec.

template<typename T>
F_TMatrix< T > & TBCI::F_TMatrix< T >::herm (  )  [inline]

template<typename T>
F_TMatrix< T > & TBCI::F_TMatrix< T >::conj (  )  [inline]

Definition at line 567 of file f_matrix.h.

References STD__.

template<typename T>
F_TMatrix< T > & TBCI::F_TMatrix< T >::trans (  )  [inline]

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

Definition at line 696 of file f_matrix.h.

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

Definition at line 650 of file f_matrix.h.

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

Definition at line 687 of file f_matrix.h.

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

Definition at line 705 of file f_matrix.h.

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

Definition at line 697 of file f_matrix.h.

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

Definition at line 651 of file f_matrix.h.

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

Definition at line 688 of file f_matrix.h.

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

Definition at line 706 of file f_matrix.h.

template<typename T>
F_TSMatrix< T > TBCI::F_TMatrix< T >::operator* ( const T &  a  )  [inline]

Definition at line 710 of file f_matrix.h.

template<typename T>
F_TSMatrix< T > TBCI::F_TMatrix< T >::operator/ ( const T &  b  )  [inline]

Definition at line 714 of file f_matrix.h.

References BCHK, and T.

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

Definition at line 1499 of file f_matrix.h.

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

Definition at line 1507 of file f_matrix.h.

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

Definition at line 1514 of file f_matrix.h.

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

Definition at line 163 of file f_matrix.h.

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

Definition at line 165 of file f_matrix.h.

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

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 181 of file f_matrix.h.

Referenced by TBCI::inv(), and TBCI::lu_solve().

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 182 of file f_matrix.h.

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

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

Definition at line 185 of file f_matrix.h.

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

Definition at line 188 of file f_matrix.h.

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

Definition at line 190 of file f_matrix.h.

template<typename T>
bool TBCI::F_TMatrix< T >::operator== ( F_TSMatrix< T >  ts  )  [inline]

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

Definition at line 194 of file f_matrix.h.

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

Reimplemented from TBCI::Matrix_Sig< T >.

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 198 of file f_matrix.h.

Referenced by TBCI::F_TMatrix< T >::herm(), and TBCI::F_TMatrix< T >::trans().

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

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 200 of file f_matrix.h.

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

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

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

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

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

template<typename T>
T& TBCI::F_TMatrix< T >::setval ( const unsigned int  r,
const unsigned int  c 
) [inline]

Definition at line 208 of file f_matrix.h.

template<typename T>
F_TMatrix< T > & TBCI::F_TMatrix< T >::resize ( const unsigned int  r,
const unsigned int  c 
) [inline]

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

Definition at line 212 of file f_matrix.h.

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

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

Reimplemented from TBCI::Matrix_Sig< T >.

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 507 of file f_matrix.h.

References TBCI::F_TMatrix< T >::dim, T, TBCIFILL, and TBCI::F_TMatrix< T >::vec.

Referenced by TBCI::F_TMatrix< T >::operator=().

template<typename T>
F_TMatrix< T > & TBCI::F_TMatrix< T >::clear (  )  [inline]

Reimplemented from TBCI::Matrix_Sig< T >.

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 403 of file f_matrix.h.

References TBCI::F_TMatrix< T >::dim, T, TBCIFILL, and TBCI::F_TMatrix< T >::vec.

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

template<typename T>
F_TMatrix< T > & TBCI::F_TMatrix< T >::swap ( F_TMatrix< T > &  m  )  [inline]

template<typename T>
F_TMatrix< T > TBCI::F_TMatrix< T >::transposed_copy (  )  const [inline]

Inefficient! Use transMult if possible.

Definition at line 1646 of file f_matrix.h.

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

Referenced by TBCI::F_TMatrix< T >::transpose(), and TBCI::transpose().

template<typename T>
F_TMatrix< T > & TBCI::F_TMatrix< T >::transpose (  )  [inline]

template<typename T>
double TBCI::F_TMatrix< T >::fabs (  )  const [inline]

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 771 of file f_matrix.h.

References TBCI::F_Matrix< T >::fabs().

template<typename T>
T TBCI::F_TMatrix< T >::trace (  )  const [inline]


Friends And Related Function Documentation

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

Definition at line 88 of file f_matrix.h.

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

Reimplemented in TBCI::F_Matrix< T >.

Definition at line 89 of file f_matrix.h.

template<typename T>
friend class Tensor< T > [friend]

Definition at line 90 of file f_matrix.h.

template<typename T>
F_TMatrix<T> operator+ ( const T &  a,
F_TMatrix< T >  b 
) [friend]

Definition at line 733 of file f_matrix.h.

template<typename T>
F_TMatrix<T> operator+ ( const T &  a,
const F_Matrix< T > &  b 
) [friend]

Definition at line 757 of file f_matrix.h.

template<typename T>
F_TMatrix<T> operator- ( const T &  a,
F_TMatrix< T >  b 
) [friend]

Definition at line 734 of file f_matrix.h.

template<typename T>
F_TMatrix<T> operator- ( const T &  a,
const F_Matrix< T > &  b 
) [friend]

Definition at line 758 of file f_matrix.h.

template<typename T>
F_TSMatrix<T> operator* ( const T &  a,
F_TMatrix< T >  b 
) [friend]

Definition at line 740 of file f_matrix.h.

template<typename T>
F_TSMatrix<T> operator* ( const T &  a,
const F_Matrix< T > &  b 
) [friend]

Definition at line 765 of file f_matrix.h.


Member Data Documentation

template<typename T>
T* TBCI::F_TMatrix< T >::vec [protected]

template<typename T>
unsigned long TBCI::F_TMatrix< T >::dim [protected]

template<typename T>
unsigned int TBCI::F_TMatrix< T >::row [protected]

template<typename T>
unsigned int TBCI::F_TMatrix< T >::col [protected]

template<typename T>
T** TBCI::F_TMatrix< T >::mat [protected]

template<typename T>
T* TBCI::F_TMatrix< T >::endvec [protected]


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

Generated on Wed Nov 20 09:29:25 2013 for TBCI Numerical high perf. C++ Library by  doxygen 1.5.6