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
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.

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

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

Definition at line 570 of file f_matrix.h.

References STD__.

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

template<typename T >
void F_TMatrix< T >::destroy ( )
inline
template<typename T >
double F_TMatrix< T >::fabs ( ) const
inline
template<typename T >
F_TMatrix< T > & F_TMatrix< T >::fill ( const T val = 0)
inline
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 >::operator==().

template<typename T >
TVector< T > F_TMatrix< T >::get_col ( const unsigned int  c) const
inline
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
template<typename T >
F_TMatrix< T > & F_TMatrix< T >::herm ( )
template<typename T>
static const char* F_TMatrix< T >::mat_info ( )
inlinestatic

Definition at line 119 of file f_matrix.h.

References F_TMatrix< T >::operator=(), and T.

template<typename T >
F_TMatrix< T >::operator TMatrix< T > ( )
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.

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

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
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.

Referenced by F_TMatrix< T >::alias(), F_TSMatrix< T >::operator-(), and F_Matrix< T >::operator-().

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.

References FGD, FRIEND_TBCI__, F_TMatrix< T >::operator()(), and T.

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_TMatrix< T >::alias(), and F_Matrix< T >::operator*=().

template<typename T >
F_TMatrix< T > & F_TMatrix< T >::operator+ ( F_TMatrix< T a)
inline
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_TMatrix< T >::alias(), and 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
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_TMatrix< T >::alias(), and 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.

Referenced by F_TMatrix< T >::alias(), and F_Matrix< T >::operator-().

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_TMatrix< T >::alias(), and 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_TMatrix< T >::mat_info(), and 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 F_TMatrix< T >::fill().

template<typename T >
bool F_TMatrix< T >::operator== ( const F_Matrix< T > &  m)
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 
)
template<typename T>
F_TMatrix<T>& F_TMatrix< T >::resize ( const unsigned int  d)
inline
template<typename T >
F_TMatrix< T > & F_TMatrix< T >::resize ( const T v,
const unsigned int  r,
const unsigned int  c 
)
template<typename T>
unsigned int F_TMatrix< T >::rows ( ) const
inline
template<typename T >
void F_TMatrix< T >::set_col ( const Vector< T > &  v,
const unsigned int  c 
)
inline
template<typename T >
int F_TMatrix< T >::set_ptrs ( )
inlineprotected
template<typename T >
void F_TMatrix< T >::set_row ( const Vector< T > &  v,
const unsigned int  r 
)
inline
template<typename T >
F_TMatrix< T > & F_TMatrix< T >::setunit ( const T fac = 1)
inline
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()(), and F_TMatrix< T >::resize().

template<typename T>
unsigned long F_TMatrix< T >::size ( ) const
inline
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
template<typename T >
F_TMatrix< T > & F_TMatrix< T >::trans ( )
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_TMatrix< T >::col, F_TMatrix< T >::mat, and F_TMatrix< T >::row.

Referenced by F_TMatrix< T >::resize(), F_TMatrix< T >::transpose(), and 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: