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

Matrix class with optimized Matrix-Vector multiplication for symmetrical Matrices. More...

#include <symm_bdmatrix.h>

Inheritance diagram for Symm_BdMatrix< T >:
Inheritance graph
[legend]
Collaboration diagram for Symm_BdMatrix< 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

 Symm_BdMatrix ()
 
 Symm_BdMatrix (const unsigned int N)
 
 Symm_BdMatrix (const T &val, const unsigned int N)
 
 Symm_BdMatrix (const T &val, const unsigned int N, const BVector< unsigned int > &diagConf)
 
void resize (const T &, const unsigned int)
 
void resize (const unsigned int newDim)
 
void resize (const T &, const unsigned int N, const BVector< unsigned int > &)
 
 ~Symm_BdMatrix ()
 
const char * mat_info () const
 
const Toperator() (const unsigned int i, const unsigned int k) const
 
const Tget (const unsigned int i, const unsigned int k) const
 
Tsetval (const unsigned int i, const unsigned int k)
 
void setval (const T &wert, const unsigned int i, const unsigned int k)
 
void autoinsert (const T &wert, const unsigned int i, const unsigned int k)
 
TVector< Toperator* (const Vector< T > &) const
 
unsigned int rows () const
 
unsigned int columns () const
 
void clear ()
 
- 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
 

Protected Member Functions

void construct (const unsigned int N, const T &, T *&, const BVector< unsigned int > &, BVector< T * > &, BVector< unsigned int > &)
 
void create (const T &val, const unsigned int N)
 
void create (const T &val, const unsigned int N, const BVector< unsigned int > &)
 
void destroy ()
 

Protected Attributes

T zero
 
TelementPtr
 
unsigned int dimension
 
BVector< T * > rowPtr
 
BVector< unsigned int > rowOccupation
 
BVector< unsigned int > conf
 

Friends

class ILU0_Symm_BdMatrixPreconditioner< T >
 
STD__ ostream & operator<< FGD (STD__ ostream &, const Symm_BdMatrix< T > &)
 

Additional Inherited Members

- Static Public Member Functions inherited from Matrix_Sig< T >
static const char * mat_info ()
 

Detailed Description

template<typename T>
class Symm_BdMatrix< T >

Matrix class with optimized Matrix-Vector multiplication for symmetrical Matrices.

Definition at line 25 of file symm_bdmatrix.h.

Member Typedef Documentation

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

Definition at line 120 of file symm_bdmatrix.h.

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

Definition at line 121 of file symm_bdmatrix.h.

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

Definition at line 119 of file symm_bdmatrix.h.

Constructor & Destructor Documentation

template<typename T>
Symm_BdMatrix< T >::Symm_BdMatrix ( )
inline

Definition at line 84 of file symm_bdmatrix.h.

References Symm_BdMatrix< T >::create(), and T.

template<typename T>
Symm_BdMatrix< T >::Symm_BdMatrix ( const unsigned int  N)
inline

Definition at line 85 of file symm_bdmatrix.h.

References Symm_BdMatrix< T >::create(), and T.

template<typename T>
Symm_BdMatrix< T >::Symm_BdMatrix ( const T val,
const unsigned int  N 
)
inline

Definition at line 86 of file symm_bdmatrix.h.

References Symm_BdMatrix< T >::create().

template<typename T>
Symm_BdMatrix< T >::Symm_BdMatrix ( const T val,
const unsigned int  N,
const BVector< unsigned int > &  diagConf 
)
inline

Definition at line 87 of file symm_bdmatrix.h.

References Symm_BdMatrix< T >::create().

template<typename T>
Symm_BdMatrix< T >::~Symm_BdMatrix ( )
inline

Definition at line 95 of file symm_bdmatrix.h.

References Symm_BdMatrix< T >::destroy().

Member Function Documentation

template<typename T>
void Symm_BdMatrix< T >::autoinsert ( const T wert,
const unsigned int  i,
const unsigned int  k 
)
inline

Definition at line 108 of file symm_bdmatrix.h.

References Symm_BdMatrix< T >::setval().

template<typename T >
void Symm_BdMatrix< T >::clear ( )
inline

Definition at line 637 of file symm_bdmatrix.h.

References T.

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

Definition at line 116 of file symm_bdmatrix.h.

References Symm_BdMatrix< T >::dimension.

template<typename T >
void Symm_BdMatrix< T >::construct ( const unsigned int  N,
const T value,
T *&  elemPtr,
const BVector< unsigned int > &  ConfVector,
BVector< T * > &  rPtr,
BVector< unsigned int > &  rowOccup 
)
inlineprotected

Definition at line 211 of file symm_bdmatrix.h.

References BVector< T >::get(), i, BVector< T >::set(), BVector< T >::size(), and T.

template<typename T >
void Symm_BdMatrix< T >::create ( const T val,
const unsigned int  N 
)
inlineprotected

Definition at line 152 of file symm_bdmatrix.h.

References STD__, and T.

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

template<typename T >
void Symm_BdMatrix< T >::create ( const T val,
const unsigned int  N,
const BVector< unsigned int > &  configVector 
)
inlineprotected

Definition at line 178 of file symm_bdmatrix.h.

References i, BVector< T >::size(), STD__, and T.

template<typename T >
void Symm_BdMatrix< T >::destroy ( )
inlineprotected

Definition at line 268 of file symm_bdmatrix.h.

Referenced by Symm_BdMatrix< T >::~Symm_BdMatrix().

template<typename T>
const T& Symm_BdMatrix< T >::get ( const unsigned int  i,
const unsigned int  k 
) const
inline

Definition at line 102 of file symm_bdmatrix.h.

References i.

template<typename T>
const char* Symm_BdMatrix< T >::mat_info ( ) const
inline

Definition at line 98 of file symm_bdmatrix.h.

template<typename T >
const T & Symm_BdMatrix< T >::operator() ( const unsigned int  i,
const unsigned int  k 
) const
inline

Definition at line 375 of file symm_bdmatrix.h.

References EXPCHK, and i.

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

Definition at line 416 of file symm_bdmatrix.h.

References TVector< T >::get(), i, TVector< T >::size(), STD__, and T.

template<typename T >
void Symm_BdMatrix< T >::resize ( const T val,
const unsigned int  N 
)
inline

Definition at line 132 of file symm_bdmatrix.h.

Referenced by ILU0_Symm_BdMatrixPreconditioner< T >::update().

template<typename T>
void Symm_BdMatrix< T >::resize ( const unsigned int  newDim)
inline

Definition at line 92 of file symm_bdmatrix.h.

References Symm_BdMatrix< T >::resize().

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

template<typename T >
void Symm_BdMatrix< T >::resize ( const T val,
const unsigned int  N,
const BVector< unsigned int > &  Diagconf 
)
inline

Definition at line 139 of file symm_bdmatrix.h.

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

Definition at line 115 of file symm_bdmatrix.h.

References Symm_BdMatrix< T >::dimension.

template<typename T >
T & Symm_BdMatrix< T >::setval ( const unsigned int  i,
const unsigned int  k 
)
inline
template<typename T>
void Symm_BdMatrix< T >::setval ( const T wert,
const unsigned int  i,
const unsigned int  k 
)
inline

Definition at line 106 of file symm_bdmatrix.h.

References Symm_BdMatrix< T >::setval().

Friends And Related Function Documentation

template<typename T>
friend class ILU0_Symm_BdMatrixPreconditioner< T >
friend

Definition at line 65 of file symm_bdmatrix.h.

template<typename T>
STD__ ostream& operator<< FGD ( STD__ ostream &  ,
const Symm_BdMatrix< T > &   
)
friend

Member Data Documentation

template<typename T>
BVector<unsigned int> Symm_BdMatrix< T >::conf
protected

Definition at line 73 of file symm_bdmatrix.h.

template<typename T>
unsigned int Symm_BdMatrix< T >::dimension
protected

Definition at line 70 of file symm_bdmatrix.h.

Referenced by Symm_BdMatrix< T >::columns(), and Symm_BdMatrix< T >::rows().

template<typename T>
T* Symm_BdMatrix< T >::elementPtr
protected

Definition at line 69 of file symm_bdmatrix.h.

template<typename T>
BVector<unsigned int> Symm_BdMatrix< T >::rowOccupation
protected

Definition at line 72 of file symm_bdmatrix.h.

template<typename T>
BVector<T*> Symm_BdMatrix< T >::rowPtr
protected

Definition at line 71 of file symm_bdmatrix.h.

template<typename T>
T Symm_BdMatrix< T >::zero
protected

Definition at line 68 of file symm_bdmatrix.h.


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