CCGaussSeidel< T > Class Template Reference

Templates for the 'Cell-Block' Gauss-Seidel method for SysMatrix<T>-matrices. More...

#include <CCGaussSeidel.hpp>

Inheritance diagram for CCGaussSeidel< T >:

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

Collaboration graph
[legend]
List of all members.

Public Member Functions

void PrintParam ()
 Prints the name and the parameters of the preconditioner.
void PreProcess (SysPrecondCtxt &context, SysMatrix< T > &A)
 Save the reference to the system matrix, computes the diagonal coefficients and preprocesses the Q-preconditioners.
void Run (SysPrecondCtxt &context, GridVec< T > &r, GridVec< T > &c)
 Inverts the preconditioner's matrix.
void PostProcess (SysPrecondCtxt &context)
 Releases the memory, postprocesses the preconditioners.
 CCGaussSeidel (unsigned the_disp_type, int the_g_sz_idx)
 Constructur which sets the display type.

Detailed Description

template<typename T>
class CCGaussSeidel< T >

Templates for the 'Cell-Block' Gauss-Seidel method for SysMatrix<T>-matrices.

This is a variant of the symmetric coupled Gauss-Seidel preconditioner in which the cell-block systems are not approximated but inverted 'as is'. We assume that at least one of the variables of the discretized system is assigned to cell centers.

The templates depend on a type T. This type should satisfy the conditions listed in small_matrix.hpp for small matrices.

Date:
Feb. 21, 2005 - created


Constructor & Destructor Documentation

template<typename T>
CCGaussSeidel< T >::CCGaussSeidel ( unsigned  the_disp_type,
int  the_g_sz_idx 
) [inline]

Constructur which sets the display type.

Parameters:
[in] the_disp_type The display type
[in] the_g_sz_idx Index of the cell-centered grid func. (in GridVec<T>)


Member Function Documentation

template<typename T>
void CCGaussSeidel< T >::PrintParam (  )  [inline, virtual]

Prints the name and the parameters of the preconditioner.

Implements SysPrecond< T >.

template<typename T>
void CCGaussSeidel< T >::PreProcess ( SysPrecondCtxt context,
SysMatrix< T > &  A 
) [inline, virtual]

Save the reference to the system matrix, computes the diagonal coefficients and preprocesses the Q-preconditioners.

Parameters:
[in] context The context to initialize
[in] A The system matrix

Implements SysPrecond< T >.

template<typename T>
void CCGaussSeidel< T >::Run ( SysPrecondCtxt context,
GridVec< T > &  r,
GridVec< T > &  c 
) [inline, virtual]

Inverts the preconditioner's matrix.

Parameters:
[in] context The context for the preconditioner
[in] r The residual
[in] c The correction

Implements SysPrecond< T >.

template<typename T>
void CCGaussSeidel< T >::PostProcess ( SysPrecondCtxt context  )  [inline, virtual]

Releases the memory, postprocesses the preconditioners.

Parameters:
[in] context The context to release

Implements SysPrecond< T >.


The documentation for this class was generated from the following files:
Generated on Fri Sep 21 12:34:07 2007 for SG2 by  doxygen 1.5.2