Gascoigne::SparseBlockMatrix< B > Class Template Reference

#include <sparseblockmatrix.h>

Inheritance diagram for Gascoigne::SparseBlockMatrix< B >:

Inheritance graph
[legend]
Collaboration diagram for Gascoigne::SparseBlockMatrix< B >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 SparseBlockMatrix ()
 SparseBlockMatrix (const SparseBlockMatrix< B > &A)
virtual ~SparseBlockMatrix ()
void transpose ()
string GetName () const
const_iterator mat (int pos) const
iterator mat (int pos)
const StencilInterfaceGetStencil () const
int n () const
int nentries () const
int ntotal () const
int rowsize (int i) const
const vector< B > & mat () const
void AddMassWithDifferentStencil (const MatrixInterface *M, const TimePattern &TP, double s=1.)
void copy_entries (const MatrixInterface &S)
SparseBlockMatrixoperator= (const SparseBlockMatrix< B > &S)
void ReInit (const SparseStructureInterface *)
void dirichlet (int i, const vector< int > &cv)
 for boundary conditions
void dirichlet_only_row (int i, const vector< int > &cv)
void zero ()
void entry (nvector< int >::const_iterator start1, nvector< int >::const_iterator stop1, nvector< int >::const_iterator start2, nvector< int >::const_iterator stop2, const EntryMatrix &M, double s=1.)
void entry (nvector< int >::const_iterator start, nvector< int >::const_iterator stop, const EntryMatrix &M, double s=1.)
void entrydual (nvector< int >::const_iterator start, nvector< int >::const_iterator stop, const EntryMatrix &M, double s=1.)
void GaussSeidel (GlobalVector &y, const GlobalVector &x) const
void Jacobi (GlobalVector &x) const
void vmult (GlobalVector &y, const GlobalVector &x, double s=1.) const
void vmult (GlobalVector &y, const GlobalVector &x, const TimePattern &TP, double s=1.) const
void entry_diag (int i, const nmatrix< double > &M)
 for hanging nodes
void FillInterfaceList (const nvector< int > &elements, nvector< int > &start, nvector< float > &values) const
void FurbishInterface (double d, const nvector< int > &elements, const nvector< int > &start, const nvector< float > &values)
ostream & Write (ostream &s) const

Protected Types

typedef vector< B >::const_iterator const_iterator
typedef vector< B >::iterator iterator
typedef std::pair< int, int > IntPair

Protected Member Functions

void matrix_vector_trans (int p, double *yp, const double *xp, double s=1.) const
int size () const

Protected Attributes

ColumnDiagStencil US
vector< B > smat
int nc

Friends

ostream & operator<< (ostream &s, const SparseBlockMatrix< B > &A)

template<class B>
class Gascoigne::SparseBlockMatrix< B >


Member Typedef Documentation

template<class B>
typedef vector<B>::const_iterator Gascoigne::SparseBlockMatrix< B >::const_iterator [protected]

template<class B>
typedef std::pair<int,int> Gascoigne::SparseBlockMatrix< B >::IntPair [protected]

template<class B>
typedef vector<B>::iterator Gascoigne::SparseBlockMatrix< B >::iterator [protected]


Constructor & Destructor Documentation

template<class B>
Gascoigne::SparseBlockMatrix< B >::SparseBlockMatrix (  ) 

template<class B>
Gascoigne::SparseBlockMatrix< B >::SparseBlockMatrix ( const SparseBlockMatrix< B > &  A  ) 

template<class B>
virtual Gascoigne::SparseBlockMatrix< B >::~SparseBlockMatrix (  )  [inline, virtual]


Member Function Documentation

template<class B>
void Gascoigne::SparseBlockMatrix< B >::AddMassWithDifferentStencil ( const MatrixInterface M,
const TimePattern TP,
double  s = 1. 
) [virtual]

Reimplemented from Gascoigne::MatrixInterface.

template<class B>
void Gascoigne::SparseBlockMatrix< B >::copy_entries ( const MatrixInterface S  ) 

template<class B>
void Gascoigne::SparseBlockMatrix< B >::dirichlet ( int  i,
const vector< int > &  cv 
) [virtual]

for boundary conditions

Reimplemented from Gascoigne::MatrixInterface.

template<class B>
void Gascoigne::SparseBlockMatrix< B >::dirichlet_only_row ( int  i,
const vector< int > &  cv 
) [virtual]

Reimplemented from Gascoigne::MatrixInterface.

template<class B>
void Gascoigne::SparseBlockMatrix< B >::entry ( nvector< int >::const_iterator  start,
nvector< int >::const_iterator  stop,
const EntryMatrix M,
double  s = 1. 
)

template<class B>
void Gascoigne::SparseBlockMatrix< B >::entry ( nvector< int >::const_iterator  start1,
nvector< int >::const_iterator  stop1,
nvector< int >::const_iterator  start2,
nvector< int >::const_iterator  stop2,
const EntryMatrix M,
double  s = 1. 
)

template<class B>
void Gascoigne::SparseBlockMatrix< B >::entry_diag ( int  i,
const nmatrix< double > &  M 
) [virtual]

for hanging nodes

Implements Gascoigne::MatrixInterface.

template<class B>
void Gascoigne::SparseBlockMatrix< B >::entrydual ( nvector< int >::const_iterator  start,
nvector< int >::const_iterator  stop,
const EntryMatrix M,
double  s = 1. 
)

template<class B>
void Gascoigne::SparseBlockMatrix< B >::FillInterfaceList ( const nvector< int > &  elements,
nvector< int > &  start,
nvector< float > &  values 
) const [virtual]

Reimplemented from Gascoigne::MatrixInterface.

template<class B>
void Gascoigne::SparseBlockMatrix< B >::FurbishInterface ( double  d,
const nvector< int > &  elements,
const nvector< int > &  start,
const nvector< float > &  values 
) [virtual]

Reimplemented from Gascoigne::MatrixInterface.

template<class B>
void Gascoigne::SparseBlockMatrix< B >::GaussSeidel ( GlobalVector y,
const GlobalVector x 
) const

template<class B>
string Gascoigne::SparseBlockMatrix< B >::GetName (  )  const [inline, virtual]

Implements Gascoigne::MatrixInterface.

Reimplemented in Gascoigne::SparseBlockIlu< B >.

template<class B>
const StencilInterface* Gascoigne::SparseBlockMatrix< B >::GetStencil (  )  const [inline, virtual]

Implements Gascoigne::MatrixInterface.

template<class B>
void Gascoigne::SparseBlockMatrix< B >::Jacobi ( GlobalVector x  )  const [virtual]

Reimplemented from Gascoigne::MatrixInterface.

template<class B>
const vector<B>& Gascoigne::SparseBlockMatrix< B >::mat (  )  const [inline]

template<class B>
iterator Gascoigne::SparseBlockMatrix< B >::mat ( int  pos  )  [inline]

template<class B>
const_iterator Gascoigne::SparseBlockMatrix< B >::mat ( int  pos  )  const [inline]

template<class B>
void Gascoigne::SparseBlockMatrix< B >::matrix_vector_trans ( int  p,
double *  yp,
const double *  xp,
double  s = 1. 
) const [protected]

template<class B>
int Gascoigne::SparseBlockMatrix< B >::n (  )  const [inline]

Reimplemented in Gascoigne::SparseBlockIlu< B >.

template<class B>
int Gascoigne::SparseBlockMatrix< B >::nentries (  )  const [inline]

template<class B>
int Gascoigne::SparseBlockMatrix< B >::ntotal (  )  const [inline]

template<class B>
SparseBlockMatrix& Gascoigne::SparseBlockMatrix< B >::operator= ( const SparseBlockMatrix< B > &  S  ) 

template<class B>
void Gascoigne::SparseBlockMatrix< B >::ReInit ( const SparseStructureInterface  )  [virtual]

Implements Gascoigne::MatrixInterface.

Reimplemented in Gascoigne::SparseBlockIlu< B >.

template<class B>
int Gascoigne::SparseBlockMatrix< B >::rowsize ( int  i  )  const [inline]

template<class B>
int Gascoigne::SparseBlockMatrix< B >::size (  )  const [inline, protected]

template<class B>
void Gascoigne::SparseBlockMatrix< B >::transpose (  )  [virtual]

Implements Gascoigne::MatrixInterface.

template<class B>
void Gascoigne::SparseBlockMatrix< B >::vmult ( GlobalVector y,
const GlobalVector x,
const TimePattern TP,
double  s = 1. 
) const

template<class B>
void Gascoigne::SparseBlockMatrix< B >::vmult ( GlobalVector y,
const GlobalVector x,
double  s = 1. 
) const [virtual]

Reimplemented from Gascoigne::MatrixInterface.

template<class B>
ostream& Gascoigne::SparseBlockMatrix< B >::Write ( ostream &  s  )  const

Reimplemented in Gascoigne::SparseBlockIlu< B >.

template<class B>
void Gascoigne::SparseBlockMatrix< B >::zero (  )  [virtual]

Implements Gascoigne::MatrixInterface.

Reimplemented in Gascoigne::SparseBlockIlu< B >.


Friends And Related Function Documentation

template<class B>
ostream& operator<< ( ostream &  s,
const SparseBlockMatrix< B > &  A 
) [friend]


Member Data Documentation

template<class B>
int Gascoigne::SparseBlockMatrix< B >::nc [protected]

template<class B>
vector<B> Gascoigne::SparseBlockMatrix< B >::smat [protected]

template<class B>
ColumnDiagStencil Gascoigne::SparseBlockMatrix< B >::US [protected]


The documentation for this class was generated from the following file:
Generated on Thu Sep 14 10:49:56 2006 for Gascoigne by  doxygen 1.4.7