NGSolve  4.9
Public Member Functions | Protected Attributes
ngmg::Smoother Class Reference

Smoothing iteration for multigrid method. More...

#include <smoother.hpp>

Inheritance diagram for ngmg::Smoother:
ngmg::AnisotropicSmoother ngmg::BlockSmoother ngmg::GSSmoother

List of all members.

Public Member Functions

 Smoother ()
 Constructor.
 Smoother (const Flags &aflags)
 Constructor.
virtual ~Smoother ()
 Destructor.
virtual void Update (bool force_update=0)=0
 Update smoother (fine level or all levels)
virtual void PreSmooth (int level, ngla::BaseVector &u, const ngla::BaseVector &f, int steps) const =0
 Do steps iterations of pre-smoothing.
virtual void PreSmoothResiduum (int level, ngla::BaseVector &u, const ngla::BaseVector &f, ngla::BaseVector &res, int steps) const
 Do steps iterations of pre-smoothing.
virtual void PostSmooth (int level, ngla::BaseVector &u, const ngla::BaseVector &f, int steps) const =0
 Do steps iterations of post-smoothing.
virtual void Precond (int level, const ngla::BaseVector &f, ngla::BaseVector &u) const
 Apply the preconditioning action (additive or multiplicative)
virtual void Residuum (int level, ngla::BaseVector &u, const ngla::BaseVector &f, ngla::BaseVector &d) const =0
void SetAdditive ()
void SetUpdateAll (int ua)
void SetMultiplicative ()
int Additive () const
virtual ngla::BaseVectorCreateVector (int level) const =0
virtual void MemoryUsage (Array< MemoryUsageStruct * > &mu) const

Protected Attributes

int additive
 additive or multiplicative smooting
int updateall
 should coarse levels be updated, too ?
Flags flags

Detailed Description

Smoothing iteration for multigrid method.

Pure virtual base class.


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