Public Member Functions | Protected Attributes | Private Attributes

MGSmoother< VECTOR > Class Template Reference
[Multilevel support]

Inheritance diagram for MGSmoother< VECTOR >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 MGSmoother (const unsigned int steps=1, const bool variable=false, const bool symmetric=false, const bool transpose=false)
 MGSmoother (VectorMemory< VECTOR > &mem, const unsigned int steps=1, const bool variable=false, const bool symmetric=false, const bool transpose=false)
void set_steps (const unsigned int)
void set_variable (const bool)
void set_symmetric (const bool)
void set_transpose (const bool)
void set_debug (const unsigned int level)

Protected Attributes

unsigned int steps
bool variable
bool symmetric
bool transpose
unsigned int debug
SmartPointer< VectorMemory
< VECTOR >, MGSmoother< VECTOR > > 
mem

Private Attributes

GrowingVectorMemory< VECTOR > my_memory

Detailed Description

template<class VECTOR>
class MGSmoother< VECTOR >

A base class for smoother handling information on smoothing. While not adding to the abstract interface in MGSmootherBase, this class stores information on the number and type of smoothing steps, which in turn can be used by a derived class.

Author:
Guido Kanschat 2009

Definition at line 45 of file mg_smoother.h.


Constructor & Destructor Documentation

template<class VECTOR >
MGSmoother< VECTOR >::MGSmoother ( const unsigned int  steps = 1,
const bool  variable = false,
const bool  symmetric = false,
const bool  transpose = false 
)

Constructor. Sets smoothing parameters and creates a private GrowingVectorMemory object to be used to retrieve vectors.

template<class VECTOR >
MGSmoother< VECTOR >::MGSmoother ( VectorMemory< VECTOR > &  mem,
const unsigned int  steps = 1,
const bool  variable = false,
const bool  symmetric = false,
const bool  transpose = false 
)
Deprecated:
Since GrowingVectorMemory now uses a joint memory pool, it is recommended to use the constructor without the memory object.

Constructor. Sets memory and smoothing parameters.


Member Function Documentation

template<class VECTOR >
void MGSmoother< VECTOR >::set_steps ( const unsigned  int )

Modify the number of smoothing steps on finest level.

template<class VECTOR >
void MGSmoother< VECTOR >::set_variable ( const   bool )

Switch on/off variable smoothing.

template<class VECTOR >
void MGSmoother< VECTOR >::set_symmetric ( const   bool )

Switch on/off symmetric smoothing.

template<class VECTOR >
void MGSmoother< VECTOR >::set_transpose ( const   bool )

Switch on/off transposed smoothing. The effect is overriden by set_symmetric().

template<class VECTOR >
void MGSmoother< VECTOR >::set_debug ( const unsigned int  level )

Set debug to a nonzero value to get debug information logged to deallog. Increase to get more information


Member Data Documentation

template<class VECTOR >
GrowingVectorMemory<VECTOR> MGSmoother< VECTOR >::my_memory [private]

The memory object to be used if none is given to the constructor.

Definition at line 115 of file mg_smoother.h.

template<class VECTOR >
unsigned int MGSmoother< VECTOR >::steps [protected]

Number of smoothing steps on the finest level. If no variable smoothing is chosen, this is the number of steps on all levels.

Definition at line 125 of file mg_smoother.h.

template<class VECTOR >
bool MGSmoother< VECTOR >::variable [protected]

Variable smoothing: double the number of smoothing steps whenever going to the next coarser level

Definition at line 133 of file mg_smoother.h.

template<class VECTOR >
bool MGSmoother< VECTOR >::symmetric [protected]

Symmetric smoothing: in the smoothing iteration, alternate between the relaxation method and its transpose.

Definition at line 141 of file mg_smoother.h.

template<class VECTOR >
bool MGSmoother< VECTOR >::transpose [protected]

Definition at line 150 of file mg_smoother.h.

template<class VECTOR >
unsigned int MGSmoother< VECTOR >::debug [protected]

Output debugging information to deallog if this is nonzero.

Definition at line 157 of file mg_smoother.h.

template<class VECTOR >
SmartPointer<VectorMemory<VECTOR>, MGSmoother<VECTOR> > MGSmoother< VECTOR >::mem [protected]

Memory for auxiliary vectors.

Definition at line 161 of file mg_smoother.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

deal.II documentation generated on Fri Feb 3 2012 06:04:09 by doxygen 1.7.2