NGSolve  4.9
Public Member Functions
ngmg::BlockSmoother Class Reference

Block-Gauss-Seidel smoother. More...

#include <smoother.hpp>

Inheritance diagram for ngmg::BlockSmoother:
ngmg::Smoother

List of all members.

Public Member Functions

 BlockSmoother (const MeshAccess &ama, const BilinearForm &abiform, const Flags &aflags)
 BlockSmoother (const MeshAccess &ama, const BilinearForm &abiform, const LinearForm &aconstraint, const Flags &aflags)
virtual void Update (bool forace_update=0)
 Update smoother (fine level or all levels)
virtual void PreSmooth (int level, BaseVector &u, const BaseVector &f, int steps) const
 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
 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
virtual ngla::BaseVectorCreateVector (int level) const
virtual void MemoryUsage (Array< MemoryUsageStruct * > &mu) const

Detailed Description

Block-Gauss-Seidel smoother.

Blocks are defined by underlying FESpace.


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